Rust Job: Software Applications Engineer - Tesla Energy

Job added on




Austin, TX - United States of America

Job type


Rust Job Details

What to Expect
The Energy Applications Engineering, Software role works within the Energy Projects team to both provide software engineering support to sustain our existing fleet of Tesla Energy products, and to ensure successful deployment of products into new applications. The role requires developing a strong working relationship with service engineering, software engineering and product management to refine system requirements, implement sustaining software improvements and validate new use cases, to improve the operation of our energy storage and solar fleet.

Our software stack is as diverse as our products. It includes embedded and Linux-based systems, web and native apps, cloud services and local IoT protocols. Pragmatism, willingness to dive into new codebases, eagerness to work with stakeholders, and engineering leadership are key strengths we expect you to bring to the table.

What You’ll Do
  • Develop data analysis pipelines to track the performance of energy storage systems against key performance metrics.
  • Collaborate with service engineers, product managers, and engineers from other disciplines to identify software issues impacting key performance metrics.
  • Contribute to software and firmware system and subsystem level requirements.
  • Develop fixes to software issues and test them in both software and hardware environments.
  • Contribute to overall system architecture.
  • Develop automated tests to ensure software regressions can be quickly identified.
  • Document system installation requirements and expected system performance.
What You’ll Bring
  • BS or higher in Engineering, Computer Science, Physics
  • Familiar with Linux/Unix environments
  • Fluent in software fundamentals including CI/CD, code modularity, and maintainability
  • Experience with Docker or Jenkins (or equivalent)
  • Proficiency in data analysis with SQL, Python, Spark, etc.
  • Real-world experience in any of the following categories:
  • Internet protocols (e.g. HTTP, REST, websockets, mTLS, gRPC, oauth)
  • Application and systems languages (e.g. C, C++, Rust, golang, Java, C#)
  • Embedded or Linux-based IoT environments (e.g. FreeRTOS, Arduino, Raspberry Pi, Android)
  • Embedded protocols (CAN, RS-485/UART, Ethernet, WiFi, BLE)
  • Proficiency in at least 1 other engineering domain (mechanical, electrical, thermal etc..)
  • Besides a rock-solid work ethic and a strong team-oriented personality, members of our team display creativity, passion, and a desire to break new ground in a constantly shifting technology landscape.