Building Self-Driving Cars by Embracing Remote Engineering

Work from anywhere in the U.S. and engineer truly driverless cars at Voyage

Billy Okal, a remote Voyage engineer

Building a self-driving car has always been regarded as a hands-on exercise. It’s easy to imagine why, with state-of-the-art autonomous vehicles containing dozens of hardware components interacting with many layers of complex software. This delicate dance has resulted in zero self-driving car programs embracing large-scale remote engineering to date.

We’ve always done things differently at Voyage, and recruiting is no exception. We are building a world-class team of machine learning, robotics and software experts, and we are now embracing those engineers working from anywhere in the USA.

We began experimenting with remote engineering in late 2018, to see if it truly could work on a project this challenging, and I’m happy to report it has worked phenomenally well.

In Chicago, Billy, an ex-Apple SPG engineer, works on our Behavior module. In Los Angeles, Nickolai, an ex-SpaceX and Tesla engineer, works on our fail-safe systems. In Seattle, Matt, an ex-Twitter engineer, works on our Perception systems. We began experimenting with remote engineering on a small scale, and we are now ready to truly embrace remote work to grow our engineering team even faster. We are aiming to hire an additional 10 remote engineers over the next three months, and many more thereafter.

If you’re interested in joining the Voyage team, we’re now accepting remote engineering applications for roles on our perception, prediction, tele-operations, integration, infrastructure and safety-critical platform teams. Browse our Careers page to find the right role for you.

Voyage – Careers

A sample of our G2 autonomous vehicle fleet

Why Is This Possible Now?

The proliferation of Zoom, Slack and other tools has enabled countless software startups to embrace remote work. This trend, and its many advantages, is hard to ignore. At Voyage, we put key infrastructure in place to enable remote engineering that really works for us, and we continue to invest in more.

  1. Extensive tooling for engineers
  2. Rapid iteration with reliable simulation
  3. Access to powerful compute and hardware
  4. A world-class operations team

Extensive Engineering Tooling

Since Day 1 of Voyage, we have invested heavily in world-class tooling. Our Tooling team has the audacious goal of 10x’ing engineering productivity, wherever those engineers are. The tools we’ve built demonstrate that.

Our chain of tools is extensive, ensuring we can rapidly capture data in the field and get it to any engineers desk (or sofa) in hours. We’ve built in-car note-taking tools (Notepad), data storage, annotation and slicing solutions (Baggage), custom CI integrations, event querying (Query), data analytics (utilizing off-the-shelf tools like Mode and Grafana), powerful data visualization (VoyageViz), issue triage (powered by RavenOps), and lots more.

A small preview of some of our internal tools

Because of our focus on tooling, our remote engineers have real-time access to critical data and tools necessary to do their job from anywhere in the USA. Data, perhaps generated from thousands of miles away, is available on any engineers machine in hours.

Rapid Iteration With Simulation

In the early days of any self-driving car startup, the fastest way for an engineer to run experiments is to physically jump into a vehicle and experiment. This very quickly becomes a pain point and a time sink. The ability to iterate as rapidly as possible is what engineers crave, and there’s no better way in self-driving cars to iterate than in reliable simulation environments.

A small sample of our simulation scenarios, powered by Applied Intuition

Every engineer at Voyage, regardless of location, has access to Simian (either running locally on their machine for fast turnaround or remotely for scale), the amazing simulation environment provided by our friends at Applied Intuition. Not every self-driving car startup has access to extensive and powerful simulation. We do, and it’s proven to be a key enabler for remote engineering.

Fast access to data and powerful compute is crucial to enabling remote engineering

Access to Powerful Compute and Hardware

Our vehicles generate a lot of data: telemetry, sensor outputs, compute information, metrics and more. Because of the size of this raw data, it’s often tempting to store it on-premise. This is, in fact, how we began: installing a Network Attached Storage (NAS) unit at our Palo Alto headquarters. After we added our first remote engineer, we enabled VPN access to this NAS, but the speeds were unbearably slow.

The solution? The cloud. All the data generated by our vehicles now makes its way to the cloud (powered by AWS). From here, this data can be sliced, analyzed or downloaded by any engineer around the world. What’s more, we’ve also installed fiber links in our vehicles, ensuring that we can offload data from our vehicles to the cloud at the fastest possible speed.

In addition to making extensive use of AWS for data storage and propagation, every engineer has access to powerful, GPU-powered remote compute clusters they can use to experiment, train or visualize.

Our Operations team with Sally, one of our first riders at The Villages

A World-Class Operations Team

Most crucial of all to enabling remote engineering is a world-class Operations team that is continuously pushing our software to its limits and generating new insights.

Our fleet of G2 autonomous vehicles today operates in three locations: our Testing Grounds in San Jose, The Villages in Florida, and The Villages in San Jose. Our vehicles, monitored by our Operators, are continuously driving these locations with the latest software release, generating new learnings daily.

A portion of our Testing Grounds in San Jose

When something cannot be tested or validated in simulation, the Operations team is there to execute tests and get fast feedback to our engineers. Any engineer, regardless of where they are located, can easily request any structured test, branch or release to be deployed by utilizing our #dispatch channel in Slack. A comprehensive spreadsheet report is then generated, with the results the engineer requested.

Perhaps my favorite meeting of the week at Voyage is Triage Weekly, organized and run by our Operations team. We invite everyone at Voyage to a one-hour Zoom meeting, where the biggest issues the team saw in the field that week are exposed and discussed. This is a great forum for anyone, in any location, to understand what our biggest challenges are, and to help overcome them.

With our remote-friendly culture and ongoing investment in remote-enabling tools and infrastructure, we’re excited to grow our team of engineers anywhere in the U.S.

I’ve always been a believer that great minds exist all over the world, and many simply cannot or will not live in Silicon Valley (although we are still hiring for our HQ in Palo Alto). Many of these minds would thrive working on a problem as challenging as truly driverless vehicles, and I am excited that we are now embracing remote work to find these world-class engineers.

Voyage – Careers


Building Self-Driving Cars by Embracing Remote Engineering was originally published in Voyage on Medium, where people are continuing the conversation by highlighting and responding to this story.

Go to Source