You want to work in robotics? That’s a great idea! Robotics is a field with a bright future ahead and still a ton of things to discover. But how do you get a job in robotics? What should you study? Which degrees give you the best career opportunities?
In this post I will try to give you an answer to those questions. There are many people with different majors working in robotics. Even though we will concentrate on the technical jobs, there are various degrees that can make you a robotics developer. I will focus on the most common ones and point out the valuable skills they teach for different disciplines in robotics. The degrees are in no particular order as different degrees will prepare you for different, equally important, and equally fun fields of robotics. So let’s start!
Mechanical Engineering
The basis for every robot development is the mechanical design. There is no better preparation for that than a degree in mechanical engineering. You will learn how to design mechanical systems and how they are manufactured. You will get to know about the different materials and how to analyze the properties of your system. All this will help you to figure out the right robot kinematics, make structural analysis and much more for the perfect robot design.
But it doesn’t end here. One of the most important topics when developing robots is control theory which is all about how to command the motors of the robot such that it moves in the desired way. This is a field that mechanical engineering is especially suited for as the control of the robot is highly linked to its mechanical structure. A lot of Mechanical engineering degrees offer specializations in control theory or even have separate degrees for it that usually belong to the mechanical engineering faculty.
Electrical Engineering
Electronics is what actually makes the robot move. It is responsible for controlling the robot motors, for establishing communication and for supplying power. In an electrical engineering degree you will learn how to develop that electronics by designing electrical circuits and doing the layout for the electric boards (PCBs).
However, these are usually just sub-steps in a long development process. A robot has a lot of sensors for monitoring and controlling the internal state of the robot but also for perception of the environment. Analyzing and integrating these sensors is challenging and an inherent task of the electrical engineer. This needs to happen in close collaboration with the other disciplines. The mechanical engineers are interested in sensors inside the motor like current or position measurements to design their control algorithms. Computer scientists care about the sensors they are using for perception or their machine learning algorithms (e.g. cameras). Generally speaking, collaborating with other disciplines is an important part of electrical engineering as they often work at the intersection of those.
Finally, a lot of electrical engineers work in embedded programming. Embedded software developers are writing the software to integrate the sensors and to actuate the motors. Therefore, they need to have an in-depth understanding of the hardware which is a perfect fit for electrical engineers.
Computer Science
There is a ton of software running on the robot, so a lot of computer scientists are needed to write it. You need motion planning algorithms to make the robot move in the desired way. Perception is important such that the robot is aware of its environment. Therefore you need to develop the computer vision algorithms that process your camera data.
There also needs to be a user interface that allows for easy control of the robot. In all bigger software projects, work is to be done on the software infrastructure. This eases development and makes sure everything runs nice and smoothly. Software Architects are important to plan the different software modules and to make sure everything plays together nicely.
The above are just a few examples of the different tasks computer scientists are involved in during robot development. In a computer science major you learn everything about the different aspects of good software and get an in-depth understanding of how the underlying execution works. It will give you all the basic tools you need to work on the various problems in robotics even if you don’t have a lot of domain-specific knowledge yet. You can simply choose a discipline you are interested in and you will figure out the rest as you go.
Artificial Intelligence
There is no doubt that artificial intelligence is the hot topic right now. And there is a reason for that. These algorithms are what actually makes the robot – well – artificially intelligent. It is probably also the area where most of the innovation in robotics takes place.
In typical AI studies, after covering a good amount of mathematics which involves algebra as well as probability, you move on to learn the basic machine learning algorithms. You learn how to design machine learning models, how to train them and how the data you feed into these models affects their performance. Deep learning – a subset of AI – is about multi-layered machine learning models with a lot of popular applications like object detection or tracking. Another special branch of Artificial Intelligence that is very relevant to robotics is Reinforcement Learning. The main idea of this approach is to train the model using a trial-and-error method. This tries to mimic the way humans are learning and many people consider it a promising approach for solving hard problems in robotics.
AI is also important in human-robot interaction. It is used in speech recognition as well as the interpretation of the human facial expressions. All this helps the robot to understand the human intention and makes the interaction more natural.
Artificial Intelligence in robotics is a very open field and there are a ton of unsolved problems that are waiting to be tackled. More and more universities are establishing separate AI degrees. Often it is also a specialization in more general degrees like computer science.
Mathematics/Physics
A degree in mathematics or physics opens a lot of doors. With a strong mathematical foundation and experience in approaching and solving difficult problems there is high demand for graduates even if they do not have domain-specific knowledge.
If a mathematics/physics graduate is interested in programming he/she can very well work on all sorts of algorithms which we already discussed for the Computer Science degree (motion planning, Computer Vision, etc.). A lot of graduates also go on to work on machine learning topics. When you start exploring the machine learning approaches in detail, a strong mathematical background is inevitable.
If you are passionate about mathematics or physics, you will definitely be able to find your way into robotics after your studies.
Robotics degrees
More and more universities offer a dedicated robotics degree. That is a great opportunity to gain domain-specific knowledge before starting your career. However, it is important to pay close attention to the structure and the specific focus of these degrees.
Some programs are more focused on the mechanical engineering aspects which often makes them studies in advanced control theory for robotics. Others are focused on the (artificial) intelligence part meaning perception, machine learning etc.
A robotics degree can be a great preparation for your future career. Just make sure that the offered courses fit your interest as different robotics degrees set different priorities.
Conclusion
From this listing you can see that many different degrees can pave the way for a career in robotics. So which one should you choose in the end? I tried to describe the slight focus these degrees have on different areas of robotics. So in the end you should find out which area interests you the most.
How do you do that? By trying out a lot of different things! If you think you are interested in an area, do some research on it. Try to find projects you can do at home (you can draw some inspiration from the article on projects to learn robotics). Start with tutorials about a subject (e.g. have a look at the tutorials overview to learn about different robotics topics) and see if you want to learn more about it. If you are a beginner, I have written a complete article on how to start learning robotics that you should check out.
In the end, nothing is set in stone. Even if the above descriptions gives some hints on where a certain degree path might lead you, there are just as many counterexamples. Robotics is such an interdisciplinary field that it is easily possible to switch between disciplines.
Another aspect that is just as important as the degree you choose is the environment you study in. A university that has a good robotics lab and lets theirs students gain experience there is hugely valuable. If you have the opportunity, make use of it!
Whatever degree you are pursuing in the end, if you one day decide you want to work in robotics, you will inevitably end up doing it and you will have so much fun! I promise.