Udacity Grads in Self-Driving Car Jobs and Beyond

Since we launched our Self-Driving Car Engineer Nanodegree program in late 2016, nearly 2,000 students have completed the program, and more new graduates are joining them every month.

Not all students enroll in the program specifically to find a new job, but many do, and it’s exciting to see a new generation of talent entering this field. With that in mind, we’d like to introduce you to some of these alums!

One of our early graduates, Robert Ioffe, transitioned within his company, Intel, to the role of Senior Self-Driving Car Software Engineer shortly after enrolling in our Nanodegree Program. Since then, Intel has announced its plan to begin testing 100 self-driving cars in Jerusalem, and eventually in the U.S.

“The coolest thing is that everything I learn in the class is immediately applicable to my current job, which is building a self-driving Range Rover with Intel technology inside. It is very rare where you can learn things in class one day, and the next day you can apply it in your work!”

Megha Maheshwari, who immigrated to the U.S. from India, began her career as a software engineer, but ultimately landed a position at Volvo Cars as an Autonomous Driving, Deep Learning, and Computer Vision Engineer. Volvo is investing heavily in fully electric and self-driving vehicles, which many industry analysts believe is part of its plan to go public.

“When I was ending Term One, I felt I had enough knowledge about classical computer vision and deep learning. That’s when I started looking for jobs and not long after looking and applying, I got hired.”

Udacity grads are also launching startups to capitalize on the growing opportunities in the autonomous vehicle market. After earning their Nanodegree credentials, alums David Hayes and Duncan Iglesias formed the Autonomous Vehicle Organization, or AVO, to increase safety and security by focusing on the vehicle-to-pedestrian (V2P) segment.

Using skills developed in the course, David and Duncan built a semi-autonomous Honda Civic in just 11 days!

Fellow alum Patrick Kern also co-founded a startup, with a different focus. Brighter AI was launched to develop “Deep Natural Anonymization” to help companies comply with new General Data Protection Regulations (GDPR) in Europe.

And just last month, we profiled Han Bin Lee, who teamed up with fellow students he met while working on the Udacity-Didi challenge to start Seoul Robotics. Expanding on the Lidar perception software, they began building during the challenge, and today, the company is already looking for a 3D Vision Researcher and a C++ Software Developer to join their crew in South Korea!

“We’re looking for people with the willingness and ability to learn new concepts and algorithms from the latest research. And we’re a startup, so we need team players, who are able to work effectively within a fast-growing, diverse group of people — we have Korean, Vietnamese, American, and Irish people working with us so far. We are really short of people right now, and we would love to work with fellow Udacity alumni to build this company together!”

Because this is still an emerging field, many of our early students didn’t start out wanting to become Self-Driving Car Engineers. That’s changing rapidly as people are realizing how much opportunity there is in this space, but for lifelong learners like Kyle Martin, the decision to enter this field was the culmination of a really interesting journey:

“I started looking for an industry role while I was still in the program. A lead robotics engineer role appeared with a company that was beginning to work on an autonomous shuttle. I jumped at it and got an interview! They were interested in all the areas I’d been working on — things like computer vision and systems architecture. And they were really impressed I’d kept learning and adding to my skills in the program. When they made me an offer, I said “yes” immediately — it sounded like I’d have the opportunity to work on really groundbreaking projects.”

These are just a few examples of how alumni of our autonomous transportation programs are having an impact on this incredible field. As our alumni network continues to grow, we’re excited to help more students find positions in the industry. Stay tuned!

The Story of the Model 3

Bloomberg published a terrific long-form piece last week entitled, “Hell for Elon Musk Is a Midsize Sedan”.

The piece covers everything from Musk’s personal work style, to Tesla’s strategy of vertical integration, to the triumphs and failures on the way to finally hitting their 5,000 cars weekly goal at the end of June. Although the article goes on to question how sustainable that success really is.

“In early June, at Tesla’s annual meeting, Musk tried to project calm, but at times seemed close to tears. “This is like — I tell you — the most excruciatingly hellish several months that I have ever had,” he said, before noting that Tesla’s assembly lines were being further upgraded, making the company “very likely” to hit the weekly goal of 5,000. He also revealed he’d asked employees to build a third general assembly line that would be “dramatically better than Lines 1 and 2.” That sounded even more alien-dreadnoughty.”

I’ve had some difficulty pairing the massive success of the Model 3 as a product with the tremendous manufacturing struggles Tesla has experienced getting the car out the door. This piece helped put that together for me.

Criminal Complaint Reveals Apple Self-Driving Information

This reads like the climax of a James Bond movie. A recently-fired Apple engineer stole secrets from the company, possibly in collusion with a Chinese self-driving car competitor, and was arrested by the FBI at San Jose Airport, just before boarding a plane to China. The Mercury News got the scoop, and kudos to them.

What’s more, the associated “Criminal Complaint” reveals a few previously unknown details of Apple’s secretive self-driving car effort.

https://www.courtlistener.com/recap/gov.uscourts.cand.328942/gov.uscourts.cand.328942.1.0.pdf

The main reveal is the size of the program: 5,000 employees are “disclosed” on the project (out of 135,000 total Apple employees), and 2,700 have been granted access to project databases. That is a big self-driving car team.

The exact nature of the stolen secrets are not disclosed in the complaint, but they seem to involve proprietary circuit boards for sensors.

This is basically the Waymo-Uber lawsuit all over again, plus a dash of international intrigue.

A few years ago, Apple was a highly visible player in the self-driving car world, in spite of their attempted stealth and unwillingness to even acknowledge working on self-driving cars. Recently, Apple has become much less visible, basically because they aren’t demonstrating their cars and attention has moved on to companies that have products to show.

Think about the size of this self-driving car program, though. Then consider that Apple has more self-driving cars in California than any other company. And they have about $300 billion in cash.

Maybe we should be paying more attention to Apple.

I-Pace

The I-Pace, the high-performance electric SUV collaboration between Waymo and Jaguar, is live in San Francisco. So says Clean Technica.

Some news I didn’t notice a few months ago: the partnership between Waymo and Jaguar Land Rover will supposedly be deeper than the Waymo-FCA partnership that has led to the self-driving Pacifica minivan, according to The Verge.

“Waymo and Jaguar Land Rover’s engineers will work in tandem to build these cars to be self-driving from the start, rather than retrofitting them after they come off the assembly line.”

Self-Driving Car Fundamentals: Featuring Apollo

Udacity just launched a free course about self-driving cars with Baidu, the creators of the Apollo open-source self-driving car framework!

“Self-Driving Fundamentals: Featuring Apollo” is a conceptual overview of the key components of a self-driving car and how they work. No math or coding required!

Baidu is one of China’s most important Internet companies, and runs the largest search engine in the largest country in the world. They have also built, Apollo, an open-source self-driving car framework adopted by more and more companies around the globe.

This course is both free and English (with Chinese subtitles, of course). The course consists of 7 lessons:

  • Welcome
  • HD Maps
  • Localization
  • Perception
  • Prediction
  • Planning
  • Control

These are the fundamental components that comprise the autonomous vehicle software stack, and you can learn how they work by following along!

Self-driving cars are truly a global phenomenon, with centers of innovation in North America, Europe, and of course Asia. This course was built with Udacity’s US and China teams, and Baidu’s US and China teams. It is really exciting to watch engineers from around the world work together on some of the most amazing technology mankind has ever produced.

Self-Driving Asteroids

NASA is providing an exploratory grant to a company called Made in Space for the purpose of turning asteroids into autonomous vehicles.

“The objective of this study is for Made In Space (MIS) to establish the concept feasibility of using the age-old technique of analog computers and mechanisms to convert entire asteroids into enormous autonomous mechanical spacecraft. Project RAMA, Reconstituting Asteroids into Mechanical Automata, has been designed to leverage the advancing trends of additive manufacturing (AM) and in-situ resource utilization (ISRU) to enable asteroid rendezvous missions in which a set of technically simple robotic processes convert asteroid elements into very basic versions of spacecraft subsystems (GNC, Propulsion, Avionics).”

And you thought flying cars were the next big thing.

More information here.

Robots Don’t Hurt Robots, People Hurt Robots

Wired has an amusing article on the difficulty of building self-driving cars, as evidenced by the fact that humans keep crashing into them. The story pegs on a Cruise-on-Cruise collision in which a Cruise safety driver accidentally and manually rear-ended a Cruise vehicle in autonomous mode.

“On June 11, a self-driving Cruise Chevrolet Bolt had just made a left onto San Francisco’s Bryant Street, right near the General Motors-owned company’s garage. Then, whoops: Another self-driving Cruise, this one being driven by a Cruise human employee, thumped into its rear bumper. Yes, very minor Cruise on Cruise violence.”

This prompted me to go digging through the California DMV’s Report of Traffic Collision Involving an Autonomous Vehicle (OL 316). There have been 79 such reports so far. Here are some of the latest:

Fore!

Beware Squirrel

Drifting

Forward!

Fortunately, none of these collisions was especially serious, unlike a few other incidents that have been in the news. But they do serve to highlight just how often human drivers cause collisions. Watch out!

Baidu Apolong Buses

Baidu is launching self-driving shuttle buses running their Apollo open-source self-driving software. The bus model is called “Apolong”, which I assume is a portmanteau of “Apollo” and “King Long”, the Chinese vehicle manufacturer.

At the Baidu Create 2018 conference, Baidu CEO Robin Li announced the autonomous shuttles will launch this year in China and early next year in Japan.

“2018 marks the first year of commercialization for autonomous driving. From the volume production of Apolong, we can truly see that autonomous driving is making great strides — taking the industry from zero to one.”

The autonomous vehicle market might come to resemble some aspects of the mobile phone market, but this time with Google (technically, Alphabet/Waymo) controlling the closed ecosystem.

Baidu says it will support at least four companies’ computational units: Intel, NVIDIA, NXP, and Renesas. That’s part of the larger group of 100+ partners they’ve signed up.

The New Udacity Self-Driving Car Engineer Nanodegree Program Syllabus

A focus on fundamental skills in each core area of the self-driving car stack.

Over 12,000 students have enrolled in Udacity’s Self-Driving Car Engineer Nanodegree Program, and many of them are now working in the autonomous vehicle industry.

These successes have taught us a great deal about what you need to know in order to accomplish your goals, and to advance your career. In particular, we’ve learned that by narrowing the breadth of the program, and expanding opportunities to go deep in specific areas, we can better offer a path that is expressly tailored to support your career journey.

To that end, we’re updating the curriculum for the program to focus on fundamental skills in each core area of the self-driving car stack. I’d like to share some details with you about this important update, and about the changes we’ve made.

Term 1

Introduction

  1. Welcome
    In our introduction, you’ll begin by meeting your instructors — Sebastian Thrun, Ryan Keenan, and myself. You’ll learn about the systems that comprise a self-driving car, and the structure of the program as a whole.
  2. Workspaces
    Udacity’s new in-browser programming editor moves you straight to programming, and past any challenges related to installing and configuring dependencies.

Computer Vision

  1. Computer Vision Fundamentals
    Here, you’ll use OpenCV image analysis techniques to identify lines, including Hough transforms and Canny edge detection.
  2. Project: Detect Lane Lines
    This is really exciting—you’ll detect highway lane lines from a video stream in your very first week in the program!
  3. Advanced Computer Vision
    This is where you’ll explore the physics of cameras, and learn how to calibrate, undistort, and transform images. You’ll study advanced techniques for lane detection with curved roads, adverse weather, and varied lighting.
  4. Project: Advanced Lane Detection

EIn this project, you’ll detect lane lines in a variety of conditions, including changing road surfaces, curved roads, and variable lighting. You’ll use OpenCV to implement camera calibration and image transforms, as well as apply filters, polynomial fits, and splines.

Deep Learning

  1. Neural Networks
    Here, you’ll survey the basics of neural networks, including regression, classification, perceptrons, and backpropagation.
  2. TensorFlow
    Next up, you’ll train a logistic classifier using TensorFlow. And, you’ll implement related techniques, such as softmax probabilities and regularization.
  3. Deep Neural Networks
    This is where you’ll combine activation functions, backpropagation, and regularization, all using TensorFlow.
  4. Convolutional Neural Networks
    Next, you’ll study the building blocks of convolutional neural networks, which are especially well-suited to extracting data from camera images. In particular, you’ll learn about filters, stride, and pooling.
  5. Project: Traffic Sign Classifier

For this project, you’ll implement and train a convolutional neural network to classify traffic signs. You’ll use validation sets, pooling, and dropout to design a network architecture and improve performance.

  1. Keras
    This will be your opportunity to build a multi-layer convolutional network in Keras. And, you’ll compare the simplicity of Keras to the flexibility of TensorFlow.
  2. Transfer Learning
    Here, you’ll fine tune pre-trained networks to apply them to your own problems. You’ll study cannonical networks such as AlexNet, VGG, GoogLeNet, and ResNet.
  3. Project: Behavioral Cloning

For this project, you’ll architect and train a deep neural network to drive a car in a simulator. You’ll collect your own training data, and use it to clone your own driving behavior on a test track.

Career Development

  1. GitHub
    For this career-focused project, you’ll get support and guidance on how to polish your portfolio of GitHub repositories. Hiring managers and recruiters will often explore your GitHub portfolio before an interview. So it’s important to create a professional appearance, make it easy to navigate, and ensure it showcases the full measure of your skills and experience.

Sensor Fusion

Our terms are broken out into modules, which are in turn comprised of a series of focused lessons. This Sensor Fusion module is built with our partners at Mercedes-Benz. The team at Mercedes-Benz is amazing. They are world-class automotive engineers applying autonomous vehicle techniques to some of the finest vehicles in the world. They are also Udacity hiring partners, which means the curriculum we’ve developed is expressly designed to nurture and advance the kind of talent they’re eager to hire!

  1. Sensors
    The first lesson of the Sensor Fusion Module covers the physics of two of the most import sensors on an autonomous vehicle — radar and lidar.
  2. Kalman Filters
    Kalman filters are a key mathematical tool for fusing together data. You’ll implement these filters in Python to combine measurements from a single sensor over time.
  3. C++ Checkpoint
    This is a chance to test your knowledge of C++ to evaluate your readiness for the upcoming projects.
  4. Geometry and Trigonometry
    Before advancing further, you’ll get a refresh on your knowledge of the fundamental geometric and trigonometric functions that are necessary to model vehicular motion.
  5. Extended Kalman Filters
    Extended Kalman Filters (EKFs) are used by autonomous vehicle engineers to combine measurements from multiple sensors into a non-linear model. First, you’ll learn the physics and mathematics behind vehicular motion. Then, you’ll combine that knowledge with an extended Kalman filter to estimate the positions of other vehicles on the road.
  6. Project: Extended Kalman Filters in C++

For this project, you’ll use data from multiple sensors to track a vehicle’s motion, and estimate its location with precision. Building an EKF is an impressive skill to show an employer.

Term 2

Localization

This module is also built with our partners at Mercedes-Benz, who employ cutting-edge localization techniques in their own autonomous vehicles. Together we show students how to implement and use foundational algorithms that every localization engineer needs to know.

  1. Introduction to Localization
    In this intro, you’ll study how motion and probability affect your understanding of where you are in the world.
  2. Markov Localization
    Here, you’ll use a Bayesian filter to localize the vehicle in a simplified environment.
  3. Motion Models
    Next, you’ll learn basic models for vehicle movements, including the bicycle model. You’ll estimate the position of the car over time given different sensor data.
  4. Particle Filter
    Next, you’ll use a probabilistic sampling technique known as a particle filter to localize the vehicle in a complex environment.
  5. Implementation of a Particle Filter
    To prepare for your project, you’ll implement a particle filter in C++.
  6. Project: Kidnapped Vehicle

For your actual project, you’ll implement a particle filter to take real-world data and localize a lost vehicle.

Planning

  1. Search
    First, you’ll learn to search the environment for paths to navigate the vehicle to its goal.
  2. Prediction
    Then, you’ll estimate where other vehicles on the road will be in the future, utilizing both models and data.
  3. Behavior Planning
    Next, you’ll model your vehicles behavior choices using a finite state machine. You’ll construct a cost function to determine which state to move to next.
  4. Trajectory Generation
    Here, you’ll sample the motion space, and optimize a trajectory for the vehicle to execute its behavior.
  5. Project: Highway Driving

For your project, you’ll program a planner to navigate your vehicle through traffic on a highway. Pro tip: Make sure you adhere to the speed, acceleration, and jerk constraints!

Control

  1. Control
    You’ll begin by build control systems to actuate a vehicle to move it on a path.
  2. Project: PID Control

Then, you’ll implement the classic closed-loop controller — a proportional-integral-derivative control system.

Career Development

  1. Build Your Online Presence
    Here, you’ll continue to develop your professional brand, with the goal of making it easy for employers to understand why you are the best candidate for their job.

System Integration

  1. Autonomous Vehicle Architecture
    Get ready! It’s time to earn the system architecture of Carla, Udacity’s own self-driving car!
  2. Introduction to ROS
    Here, you’ll navigate Robot Operating System (ROS) to send and receive messages, and perform basic commands.
  3. Packages & Catkin Workspaces
    Next, you’ll create and prepare an ROS package so that you are ready to deploy code on Carla.
  4. Writing ROS Nodes
    The, you’ll develop ROS nodes to perform specific vehicle functions, like image classification or motion control.
  5. Project: Program an Autonomous Vehicle

Finally, for your last project, you’ll deploy your teams’ code to Carla, a real self-driving car, and see how well it drives around the test track!

  1. Graduation
    Congratulations! You did it!

By structuring our curriculum in this way, we’re able to offer you the opportunity to master critical skills in each core area of the self-driving car stack. You’ll establish the core foundations necessary to launch or advance your career, while simultaneously preparing yourself for more specialized and advanced study.

Ready? Let’s drive!