Journalist Hanna Bandalier has interviewed a Principle Data Architect at Tesla Motors, and this is my English translation of the interview excerpt for the English speaking community.
A Ukrainian-born aviation engineer-turned-data architect, Oleksiy Illyashov worked on USSR space discovery projects at the end of the 1980s, was involved in digitalization of the Ukraine's military forces in the 1990s and migrated to the United States in 1999 after getting a Master's Degree in IT Management from Naval Postgraduate School in Monterey, California.
In 15 years of living in the USA Oleksiy made his way from an average web developer at a San Jose based firm to IT Director at Nanosolar, a solar energy startup that was planning to manufacture and sell cheap aluminum foil based solar batteries (and eventually failed).
Check out a related article:
On his way to Tesla Motors
In 2014, when working for Maxim Integrated, a leading developer of innovative analog ICs for the automotive, industrial, healthcare, mobile consumer, and cloud data center markets, Oleksiy was invited to join Tesla Motors by his former boss at Nanosolar. At the time Tesla had an image of a nebulous and unreliable company able to manufacture no more than 12,000 cars per year. Although a lot of his colleagues and friends were very skeptical about his intention to apply for a tech role at Tesla and didn't believe in the brand's competitive edge and bright future, Oleksiy still chose to apply and got a job offer undersigned by Elon Musk. However, his incumbent employer didn't want to let him go and promoted him to a higher position the next day after getting his job quit notification. So Oleksiy turned down Tesla's job offer, as Maxim Integrated seemed to be a more stable and reliable place to work. Yet, two weeks later Oleksiy received a call from Tesla and was then offered a higher role and a higher pay. This time he couldn't help accepting it and that's how he joined Tesla.
Informal communication and open source tech
"My current job title is Principle Data Architect which is in fact very close to Technical Director. I have an assistant who never interferes with technical part of our job and trusts all my decisions, although we both review technological solutions within teams and between teams in an informal way. Tesla is actually a huge startup that's evolving at a very rapid pace, which is great on the one hand and not so great on the other hand. Sometimes quality is compromised when the task is urgent and there's no time to test it properly. Because the company has a very flat, or horizontal structure, most of communication is pretty informal. For instance, employees can come up with some initiative which can then transform into a standalone project, while top management will have no idea about it. So, when you work at Tesla Motors, you have to balance between many tasks, make decisions and set priorities all the time without having the opportunity to get an initial approval and buy-in from your senior leadership.
It's a usual situation when people come up to me with urgent requests everywhere, right on the go or at the cafe. In order to avoid all this burden to fall on my shoulders and waste a lot of my time, I always ask them to jot down two paragraphs of what they need and it often helps reduce the list of their inquiries. All resources are overwhelmed with various simultaneous projects, so it's critically important to be able to allocate and distribute them dynamically.
I always thrive professionally and I never stop learning and upgrading my qualifications and skills. Tesla provides employees with the access to such free and paid educational resources as Lynda.com and Udemy.
Tesla uses a lot of different technologies, but even more technologies are being tested and researched on a daily basis. At Tesla, we are not limited to a single tech stack like Microsoft, Java or R for Big Data. All development teams are free to use whatever tools best suit their current need or challenge. We prefer open source products to avoid falling prey to hardcore legacy systems such as SAP or Oracle which are very expensive to use and maintain (Give them a finger, and they'll take the whole hand!) We prefer free scalable solutions like Hadoop, MySQL or Red Hat."
Tesla Approach to Big Data
"Tesla is a far cry from other automotive companies that normally have a small core team of engineers and designers and keep other human resources busy at manufacturing. Tesla has a huge team of software developers and testers who work on all types of projects including development of in-vehicle systems, driverless technology and solar panels used in Solar Roof and Powerwall projects.
My team deals with big data processing, analytics and integrations. Tesla car self-reports a myriad of data that's recorded and transmitted to central servers. There're many things we can then do with this data. For instance, we can process a telemetry dataset from a car with faulty pumps detected and can build a model that would predict specific car pump failures before they occur in the real time. In this case the driver will get a notification and will be prompted to drop in a car repair shop without even knowing the reason behind it. If a car failure has been identified as critical, Tesla will send a mechanic to the user's home to save their time and efforts. In the future, driverless cars will drop in car repair shops automatically for diagnostics and troubleshooting while not being in use.
That being said, our machine learning model helps predict that a certain event will happen if certain factors take place. No other car manufacturer on the planet has such a smart system put in place!
Sure we save all logs and car telemetry parameters, but we don't do it for surveillance purposes or to know who drives where and why. We just don't care about this information. Access to personal data is very much limited; when processed, this data comes as abstract streams that connect to registered user's personalized data in extraordinary situations or under a special permission only. So, user data is pretty safe with Tesla.
Big Data progress results in some very cool things. Back to our pumps example, by analyzing telemetry data we can easily identify a low-grade pump components supplier, determine the exact number of cars being at risk and pay special attention to them. Based on this analysis, we can replace the supplier or use a different pump model. There're different reasons for failures: in some cases we should blame on poor-quality materials, while in others it can be a human error or drawback in the process. The better you know the cause of failure, the easier it is to fix it."
Tesla Approach to Quality
"Tesla is literally obsessed with quality; its employees spend a lot of efforts to make sure they deliver a perfect car free of bugs and issues. The company provides an 8-year guarantee on the battery and engine, so their endurance must be unprecedented. Driverless tech is based on deep learning: even if you don't activate this feature in your car, all telemetry data is still gathered and laid over your overall driving data. The more data about external lighting, state of roads, weather, traffic, etc. it's able to collect and analyze, the smarter the model. Each new model contributes to driverless technology improvements. Elon Musk promises a driverless car will drive safely from LA to NYC by the end of this year. Such progress became possible thanks to self-learning models we create.
Tesla has a unique selling point against other automakers: each model released after October 15, 2016 is equipped with a full set of features needed for autonomous driving: 8 webcams, a radar, 12 ultrasonic sensors and a supercomputer that collects all object and image recognition data, the more - the better. In contrast, Google has just a few cars that drive all over Palo Alto and have gathered as much all-time information as Tesla gathers and processes every day! Their big data sets required for deep learning models isn't even comparable to those collected at Tesla."
When Oleksiy's team worked with Mobileye (an Israeli unicorn that was later acquired by Intel for $15 billion) on the first iteration of the driverless system, Tesla allowed them to use all of the collected data. Once the partnership with Mobileye had been over, Mobileye lost access to Tesla collected data it could use to teach its neuron networks. Tesla keeps everything in-house and has full control of its data unlike other car makers that depend heavily on Intel technologies and partnerships.
Another example is Mercedes that claims to release own electric car soon. However, Mercedes doesn't produce batteries which actually make up most of the car price. So they'll have to rely on 3rd party suppliers. And if Mercedes e-cars are in high demand, suppliers will tell them: "Hey guys, it's time to double the price for you!" Tesla produces batteries in large volumes on its own, which allows it to reduce car prices. Therefore in-house development of all car components as well as a strong vertical integration of all company's projects seems like the right business strategy. Of course, there're components that Tesla doesn't have to make on its own, like a water pump or brakes, because there're thousands of them available on the market and there's nothing sophisticated in them. But when it comes to critical elements like an engine, batteries, software and driverless systems - they are proprietary!
How to get a job at Tesla
"Tesla has very few contractors, has no R&D in India and keeps its entire technology development in-house. This allows for more efficiency, which is important for any fast growing business. When I came to Tesla in 2014, there were 5,000 employees, now Tesla employs around 30,000 people. Last year, Tesla received around 1.5 million resumes, so competition among job applicants is tough as you can judge. Tesla provides visa and relocation support for exceptionally skilled foreign engineers with unique experiences only. For instance, when in-car design was questionable Tesla hired and relocated a former VP Design at Volvo.
Software development isn't the main line of business at Tesla, so you can pursue career opportunities in other areas, too. Tesla doesn't need a pool of IT specialists to work on its projects; rather it focuses on hiring bright and creative personalities who will be able to teach a team something new and sophisticated that no local expert can do.
We tend to hire senior level guys only who can switch on a work mode right away and won't slow down the team. The level of seniority is determined based on task complexity a person can be accountable for and the level of their professional responsibility. Each software developer should realize they're responsible for product quality, not QA engineers and testers. If you're a high-profile candidate, be ready to be challenged with a presentation or solving a problem during an interview. By the way, all Tesla job applicants should undergo a drug test!
In the Bay area, the problem isn't to hire a software developer, the problem is to hire qualified people to work at conveyer line; these specialists are scarce and in high demand!"