Software Engineering at Tesla

I’ve been working at Tesla for 6 and 1/2 months now and am so glad I took the job. Not because of the CEO or the stock, but because of the mission, the culture, the work and the colleagues. I’m going to talk about all of those things, but I also want to say right up front that we’re growing and we can’t hire fast enough. If you can meet our high standards, please come work with us.

The Mission

Tesla’s mission is to accelerate the world’s transition to sustainable energy. This is not just lip service and greenwashing, but is truly our motivation and driving force. When Elon addresses the company, he always talks about the mission, and this focus percolates down throughout the company.

I used to think that I had chosen the wrong career and that I could never find a job where I could use my skills in a way that aligned with my values and met the urgency of the moment. At Tesla I write software to make it easier and faster to install and commission residential and industrial battery systems. My work will help Tesla to radically scale the deployment of these critical components of a sustainable electrical grid. It is freaking awesome work and I hope I can spend the rest of my career working on seriously important stuff like this.

The Culture

Tesla is an engineering organization through-and-through. And unlike all of my previous jobs, the word “engineer” at Tesla is not a synonym for “coder”. We’ve got software engineers, firmware engineers, electrical engineers, mechanical engineers, chemical engineers, engineers who know how to make cars great, engineers that know how to make car-building robots, engineers who know how to design manufacturing lines and engineers who know how to build the gigafactories that keep popping up around the world.

As engineers, we solve problems, and as an engineering organization, Tesla has a problem solving culture. We find solutions and make crisp decisions, but also pride ourselves on being able to pivot quickly when (to choose a relevant recent example) global supply chain issues mean that products need design and firmware and software modifications in order to prevent the manufacturing lines from shutting down.

We are nimble without (and I cannot stress this enough) being agile–on my team, at least, we are trusted to get our work done without the distraction of daily standups and weekly sprint planning meetings. (This is just one manifestation of our rule, which comes right from the top, against “corporate bullshit”.)

Tesla is not a laid-back place. Working here is intense, in a focused, driven, positive way. There are times when we work late or on weekends before important release deadlines, but Tesla is no longer a startup and we’re not doing death marches and burning out employees. It is understood and expected that people have lives that they go home to when work is done.

The Work

Most of my previous jobs have involved using software to process information in one way or another, and one of the things that I find fascination and satisfying about working at Tesla is that we manufacture physical things (important things!) and I get to write software for them. I work as a full-stack engineer using Go and Typescript and React to create the software that is used by the installers who install industrial and residential batteries. My team is looking for a frontend specialist and Tesla is growing so fast that there are always other teams that are hiring software engineers as well.

There are lots of software engineering jobs on the vehicle side of Tesla, but I don’t know much about those. On the energy side of the business, we have teams (I’m sure I’ve overlooking some) that work on:

  • firmware for the microcontrollers in Powerwall, Megapack, Supercharger, Wall Connector and other devices

  • software that runs on the CPUs in those same devices

  • customer-facing and installer-facing web sites and apps along with their cloud backends.

  • test infrastructure for energy hardware, firmware and software

  • data pipelines for our massive amounts of telemetry

  • backend systems to manage inventory, serial numbers, warehousing, installation jobs

  • our Autobidder software that enables industrial battery owners to buy and sell electrical energy in real time.

The Colleagues

Tesla maintains high standards in hiring. We look for colleagues who take a first-principles approach to problem solving, who can analyze problems by breaking them down, who can communicate effectively, and, of course, who are excellent programmers. This is great because if you work here, you know you’re going to have high-caliber colleagues. I’ve been impressed, across the board, by everyone I’ve worked with at Tesla. And this is not limited to the engineers: our engineering managers (who are engineers themselves) are great, and I’ve been particularly impressed by our product managers who have deep knowledge of and field experience with our products.

Everyone I’ve worked with has been professional, respectful, helpful and kind. I think it is part of our no bullshit culture that we don’t seem to have 10x primadonnas or slackers here. Employees aren’t in competition with each other and there is not backstabbing and politics going on behind the scenes.

Join Us

Tesla is a great mission-driven place to work. Please come accelerate the world’s transition to sustainable energy with us.