How to become a robotics software engineer

Gaurav Gupta
April 6, 2023
Read time 5 mins

Robots are transforming consumer and commercial spaces alike. From the glamour of Boston Dynamics and self-driving cars to home cleaners in Roomba and everything in between the world of robots is on the rise. They’ll transform the physical reality, just like AI has transformed the digital world.

One of the many perks of working with robots.

If you are interested in working at the intersection of multiple engineering streams and sciences, then robotics is the perfect outlet for you. And if you’re looking to make a career out of interest and fascination, but not sure where to start — this post is for you.

I have been professionally working with autonomous robots for a range of applications with a focus on software for over 7 years now. I had my learning curve starting with my interest in walking robots, pursuing research, working as an engineer in the autonomous mobile robot industry, and finally converging to start my own business where we make software for a range of autonomous robots. The vast majority of my working years have involved recruiting talent, potentially interviewing 100s of candidates along the way. This is my attempt to share my learning and help budding roboticists find direction in their pursuits. Let’s get started!

1. Coursework and academic background

MOOCs and the presence of practically infinite knowledge available for free on the internet enables any interested and committed individual to equip themselves with the necessary foundation for the robotics industry.

A decent mathematical foundation and grasp of specific robotics concepts like controls, planning, vision (deep learning), and sensor fusion are plentiful. While each of these streams has an endless scope in itself, an introductory course on those topics is more than enough to set you up on a path to practical problem-solving.

From an academic qualification point of view, a bachelors degree in engineering or sciences is generally enough. I’m optimistic that even the requirement for a bachelor’s degree gradually dissipate with time.

2. Programming and projects

A personal AMR in the making, circa 2019. This was followed by countless iterations and fabrication processes.  

Beyond everything else, a robotics engineer’s job is to make things work. This involves writing C++ and Python codes (often ROS powered), bash scripts, essential programming practices like using Git, and good documentation. On top of it, an understanding of the mechanics and electronics of the hardware system is vital to run tests, verification, and troubleshoot on-field issues.

If you are still pursuing education at a university, getting involved in student-run projects is a perfect opportunity. This will allow you access to hardware, diving into a range of issues, and understanding the importance of “hacks” and get it done attitude. It also gives you a chance to work in an environment with diverse opinion sets, allowing you to be more cooperative in future pursuits.

At the same time, it is just as important to pursue and independent project. From a recruiter standpoint, I’ve always found students who have also completed personal projects, be it a theoretical, simulation, or hardware-based to stand out. It demonstrates self-motivation, your ability to execute your ideas and take them to completion.

3. Internships and applications

A great way to bridge theoretical and hobby-grade learning with industrial practices is by pursuing internships. Startups in particular are often welcoming of students and fresh graduates with relevant backgrounds. They’re also a great way to land a full-term job offer (at Black Coffee Robotics, we do that as well). Try and find an opportunity where you find a combination of learning from, as well as contributing to the organization you end up working for. A mentor can have a lasting positive impact on your approach to problem-solving and shapes much of your first impression of the field itself — take that into account!

Here are some important pointers that can help exhibit your abilities to a recruiter — 

  1. Have at least some of your code well documented and hosted on GitHub
  2. Share relevant videos from your past work, be ready and passionate to talk about it
  3. Having a personal page that documents your work and other aspects of life generally leaves a positive impact.
A helping (robot) hand. Zubin

4. Scope for specialization

At some point in your robotics career, you’ll find yourself interested in either leading engineering efforts at a product level, or leading research towards a specific problem — SLAM, deep learning, grasping, or any other research-heavy aspect of development.

This is where either a Ph.D. in one of these topics would be relevant. A doctoral degree isn’t a pre-requisite to fundamentally understanding and solving a challenging problem, but in my experience that has generally been the case. That said, a scholarly attitude, aptitude, and persistence toward the problem remain unbeaten, with or without a degree.

Conclusion

A career in robotics can be intellectually fulfilling and financially rewarding. I have shared some pointers from my own experience of this journey as well as watching several other career paths. Hope this provides some direction to aspirants of a robotics career.

Are you a student, or a fresh graduate looking for an internship or more guidance? Reach out to me.

Read more
Careers
| Copyright © 2023 Black Coffee Robotics