comma.ai hiring

Who we look for

Here at comma, we don't care about the source of your education or your traditional puffed up resume, we care about your abilities. We are looking for the following traits:

 


Competitors

People who have done well at math competitions(USAMO, IMO, PUTNAM), competition programming(ACM, USACO, codejam, topcoder), science fairs(ISEF, STS), or capture the flag(DEFCON, secuinside, GITS). Those competitions don't just select for ability, they also select for quickness. We are in a very competitive space.

Contributors

People who have contributed value to open source projects. Show me your github. Got stars? Code is never measured in quantity, but rather quality. We value those who can do more with less code; software engineering doesn't have an external selection pressure for low part count and cost like EE and ME, but you pay massive costs down the line in debugging and upkeep.

Architects

People who can design good APIs and source layouts on the first try. This is crucial to working in teams and scaling. Before you do work, you should be able to explain to a contractor what you want done. ME has a great divide between design and machining that software lacks; we want to try to fix that.

Rigor

It's easy to build something that works. It's hard to build something that works 100% of the time. At comma, crashes are real.



We are looking to assemble a small elite team. We want people who value being right, but not at the expense of being wrong. Roles we are hiring for listed here.


Open Positions

Controls/Planning

We are starting to accumulate a massive amount of data about how cars drive. Currently our driving system openpilot is 100% reactive. Add in GPS information, categorize, and drive down the worldwide number of disengagements that appear on MassiveMap (our internal worldwide map of all users). Know about PID loops, how to debug, how sensors work, and when sensors fail.


Simulation/Testing

Take a comma neo running openpilot, point it at a computer running GTA or similar, and have it drive. Write and maintain openpilot regression tests. Maintain and improve our internal route replay infrastructure. Drive and regression test real cars. Know how to test well.


Pipeline/MassiveMap

Infrastructure. Build and maintain the backend of what's soon to be the largest AI data collection machine in history. 1000's of hours of data come in, process them, make them easy for the company to use. Maintain and improve our large map that's soon to be 3D. Provide more value to our chffr users. Know about celery, EC2, the cloud, and good APIs.


Firmware/Car Reversing

Develop the code that runs on our interface board. Reverse engineer cars into nice DBC files. Add more car support to openpilot. Know about CAN, SPI, operating systems, and how cars work.


Machine Learning Engineer

Improve our internal segnets and depthnets. Work on our automatic ground truthing and ML pipeline. Build better models for openpilot and ship them. Know about TensorFlow, softmax, ground truthing, and Keras.


3D Reconstruction

We have data from tons of sensors that is all correlated. Build a global optimizer for the 3D location of points and the car path. It's SLAM, but with a lot more information than just a video. Then use free satellite data to globally localize it. We are Waze 2.0, building a 3D map of the world. Know about SLAM, visual odometery, sensor fusion, and projective geometry.