At 10-15 hrs/week
Get access to classroom immediately on enrollment
To optimize your chances of success in the Robotics Software Engineer Nanodegree program, we’ve created a list of prerequisites and recommendations to prepare you for the program curriculum.See detailed requirements.
Learn the essential elements of robotics, meet your instructors, and get familiar with the tools that will help you succeed in this program.
Learn how to simulate your first robotic environment with Gazebo, the most common simulation engine used by Roboticists around the world.Build My World
Discover how ROS provides a flexible and unified software environment for developing robots in a modular and reusable manner. Learn how to manage existing ROS packages within a project, and how to write ROS Nodes of your own in C++.Go Chase It!
Learn how Gaussian filters can be used to estimate noisy sensor readings, and how to estimate a robot’s position relative to a known map of the environment with Monte Carlo Localization (MCL).Where Am I?
Learn how to create a Simultaneous Localization and Mapping (SLAM) implementation with ROS packages and C++. You’ll achieve this by combining mapping algorithms with what you learned in the localization lessons.Map My World
Learn different Path Planning and Navigation algorithms. Then, combine SLAM and Navigation into a home service robot that can autonomously transport objects in your home!Home Service Robot
from industry experts
Personal career coach and
As the founder and president of Udacity, Sebastian’s mission is to democratize education. He is also the founder of Google X, where he led projects including the Self-Driving Car, Google Glass, and more.
David Silver leads the School of Autonomous Systems at Udacity. Before Udacity, David was a research engineer on the autonomous vehicle team at Ford. He has an MBA from Stanford, and a BSE in computer science from Princeton.
Karim started his early career as a Mechanical Engineer. He earned his M.S. in Mechatronics and Robotics Engineering from NYU. His specialties include Kinematics, Control, and Electronics.
Julia is an experienced educator and robotics specialist. Her previous work experiences include teaching Mechatronics Engineering at the University of Waterloo and designing electric vehicles for underground mines.
Great program overall! I love it that the projects are non-trivial and require more than a superficial understanding of the subject to complete. The tools and environment are also very nice! A few notes about the progress through lessons 1 - 4: * it would be great to have more reference documentation on the technical sections, particularly in the Kinematics section. Any practical reference, even textbooks that one can order would be great, because some of the concepts may not be obvious and require a more thorough introduction * the projects seem to take more than 10 hours to complete; that in itself is ok, but it might be unexpected after reading the FAQ * it would be great to improve, if at all possible, to provide tools to streamline the development process even more For example, testing the robotic arm sometimes required several attempts at starting everything up. A script that allowed restarting the IK server without restarting the simulation would have been very useful, as well as a reminder on how to test the IK without using the heavy simulator. Encouraging test driven development should also help students avoid rushing straight to coding the solution and attacking the problem in a more systematic fashion instead.
While I went through many courses on Udacity this was my first Nanodegree. I think this is fantastic and so far Udacity is hands down the best online education provider I know of. Udacity works very hard that this is not just a set of videos but a product/experience and it shows. The price tag can seem high but when you consider all stuff you get I think it is worth it easily. I think the only thing you need to decide as a potential student is if you are ready to commit the time. These are more complex than regular courses and the 15 hrs a week (on avg) is not too far from reality even if you are not completely new + this is only to get you started. If you want to be a roboticist this is only the first step on a long journey. One (and probably the only) recommendation for the authors is to keep working on the tools. Projects are not simple and you often need to install and set up multiple pieces that interact together. This is still a weaker point even though it is minor.
This Nano Degree prepares ROS aspirants from the ground up. The program facilitates you with an experienced team of mentors who review your project submissions almost instantly, provide honest feedback and keep pushing you through with a lot of encouraging reviews. Kudos to Udacity's noble profession of grooming the budding technologists with industry-ready skills!!! I recommend you to be part of their journey and shape your career, add a new skill to your profile and distinguish yourself from others.
I enjoyed the lessons. They are very good structured and explained with a lot of graphics, animations and examples. It is very exciting to work at projects in complex and well prepared environments. It's a great felling to control a rover, a robot and a quadcopter with your own code and self trained neuronal networks. You really need enough free time, at least the said 15h per week, to do your job well. Many thanks to the staff for giving me that experience.
I had problem in the beginning with installing environment since this workspace you provide has limited hours. I use windows and not linux, so was harder to switch. If you had tutorial for using docker with ROS and Gazebo, or even how to install ROS on windows, it would be much easier. Looks like Microsoft provided ROS for windows and you can update you instructions. Otherwise the course is very good, very practical oriented learning. I like it for now.
the projects are very good and if you are willing to learn, the monitors help you. I think the feedback of the projects is always cool, you have to improve more and the tutors find this, I had a lot of difficulty in the project, pick a arm but in the end, after a lot of effort I was able to understand reverse kinetics and even apply it to my universe real. I'm really enjoying the course.
Numbers don't lie. See what difference it makes in career searches.*
Career-seeking and job-ready graduates found a new, better job within six months of graduation.
Average salary increase for graduates who found a new, better job within six months of graduation.
Demand for software engineers with advanced robotics skills far exceeds the current supply of qualified talent. This makes this an ideal time to pursue career advancement in this field, and this program represents a great opportunity to develop and practice core robotics skills such as C++, ROS, and probabilistic robotics algorithms such as Localization, Mapping, SLAM, Path Planning and Navigation.
You will graduate from this Nanodegree program having completed five hands-on robotics projects in the Gazebo simulator; these will serve as portfolio pieces demonstrating your acquired skills to hiring managers and recruiters. These skills will help you pursue and advance a career in the robotics field.
As a Robotics Software Engineer, you'll be equipped to bring value to a wide array of industries and be eligible for many roles.
Your opportunities might include:
The Robotics Software Engineer Nanodegree program is designed for those looking to pursue or advance a career in the robotics field. In this program, you will learn and practice the core robotics skills that employers have told us serve as the foundation for the work robotics engineers do: C++, ROS, Gazebo, and robotics algorithms such as Localization, Mapping, SLAM, Path Planning, and Navigation amongst others.
If you want to work in a field where you get to see your solutions come to life, and solve some of the world’s most difficult and exciting problems, the Robotics Software Engineer Nanodegree program is right for you.
The Robotics Software Engineer Nanodegree program focuses on teaching the core robotics skills needed for a successful robotics software engineering career. The program focuses on Localization, Mapping, SLAM, Path Planning, and Navigation. These are taught using C++ and the Robot Operating System (ROS) framework.
The Self-Driving Car Engineer Nanodegree program focuses entirely on a specialized application of robotics—it uses robotics concepts and applies them to a self-driving car. If your primary interest is in the application of robotics, machine learning, and artificial intelligence to autonomous vehicles, then this is the program for you. However, if you want to learn and practice core robotics skills in C++ and ROS, with an emphasis on robotics algorithms, then the Robotics Software Engineer Nanodegree program is your best option.
There is no application. This Nanodegree program accepts everyone, regardless of experience and specific background.
To succeed in this Nanodegree program, you should have experience with the following:
We created the Intro to Self-Driving Cars Nanodegree program to help prepare prospective students for more advanced programs. That introductory program will teach you the skills you need to be successful in the Robotics Software Engineer Nanodegree program, including C++, linear algebra, calculus, and statistics.
The Robotics Software Engineer Nanodegree program is comprised of content and curriculum to support five (5) projects. We estimate that students can complete the program in four (4) months, working 10 hours per week.
Each project will be reviewed by the Udacity reviewer network. Feedback will be provided and if you do not pass the project, you will be asked to resubmit the project until it passes.
Please see the Udacity Nanodegree program FAQs for policies on enrollment in our programs.
The core of this Nanodegree program focuses on robotics applications in software. You will learn and practice robotics skills using the Gazebo simulator.
For this Nanodegree program, you will use the Robot Operating System (ROS) and Gazebo. You will code primarily with C++. These platforms and languages are freely available.
We will provide you with a GPU-enabled Linux Workspace that runs in your browser, and an internet connection is required. Optionally, you can install the Linux image on a Virtual Machine.