Robotics Software Engineering Intern
Published:

Internship Opportunity
In May 2021, I received an exciting message from Nikhil Venkatesh, the Director of Botsync Technologies, regarding an internship opportunity I had inquired about a year earlier. The prospect of working with such a dynamic startup was thrilling, and after a successful interview, I was offered the position.
However, this opportunity came during the peak of the Covid-19 pandemic, necessitating travel from my hometown to Bangalore. The team at Botsync was incredibly accommodating, allowing me to begin the internship with a 15-day remote work period, giving me time to arrange my travel and accommodation.
Industry Experience
In July 2021, I joined Botsync’s core robotics software team. It was my first industry experience, and I quickly encountered the steep learning curve that comes with working in a fast-paced startup. The primary programming language used at Botsync was C++, and development was conducted within the Robot Operating System (ROS) framework.
Thanks to my prior experience with eYantra, I was familiar with the fundamentals of ROS, but transitioning from Python to C++ for implementation posed a significant challenge. The supportive team environment helped me adapt quickly and grow as a developer.
Botsync’s closely interconnected departments provided a unique opportunity to not only deepen my expertise in robotics software development but also gain valuable insights into fabrication, embedded systems, and robot assembly.
Key Contributions
During my time at Botsync, I undertook two significant projects:
- Migration of Charging Station Code:
- I migrated the charging station code from Python to C++, maintaining its functionality while ensuring the precise docking and undocking of AMRs to the charging stations.
- This project required meticulous attention to detail to achieve seamless interaction between the robots and the charging infrastructure.
- ROS and Open-RMF:
- I contributed to the development of ROS based Open-RMF middleware, a fleet manager enabling the integration of heterogeneous robots through software adaptors.
- Designed behavioral graphs for multi-robot systems, facilitating the execution of collision-free tasks in dynamic environments.
Reflections
My internship at Botsync was an immensely rewarding experience that provided me with a solid foundation in C++ programming, ROS-based development, and the practical challenges of robotics software engineering.
Working in a fast-paced startup also broadened my perspective on how hardware, software, and team collaboration converge to create innovative solutions. I'm deeply grateful to Nikhil Venkatesh and my colleagues for their support and guidance, which significantly contributed to my professional growth.