Description
The RoleReporting to the Vice President, Engineering; the Software Engineer will develop new embedded control features, matching PC control features, and participate in R&D and validation of new drive systems and distributed energy systems, as well as future maintenance and customer support. Applicant must have proven design, implementation, debugging and documentation experience in a fast-paced, diverse, high-technology control systems environment, and a strong motivation to achieve software excellency for safety-sensitive applications.
As an early member of our entrepreneurial team, we are looking for a collaborative, hands-on individual who is a team player, highly detail oriented, enthusiastic about cars and excited to contribute to leading-edge technologies transforming our world.
Responsibilities
- Design new control features and implement the matching embedded C code and unit tests;
- Participate in code reviews, design discussions & process improvements;
- Extend system control code on PC (Python/Qt) to control and test new and existing features;
- Participate in the design/implementation of extensions of the automated testing software;
- Maintain excellent documentation of the embedded software system, in the code, revision control system, issue tracking system and design documents, as appropriate;
- Solve complex issues involving software, electronics, electro-mechanical components;
- Provide support to multiple customers and participate in vehicle integration test;
- Must be able to handle multiple tasks simultaneously, and balance priorities with good time management skills.
Requirements
- BS in Computer Science or Computer Engineering, or equivalent experience
- 5 - 7 years of software programming - embedded systems experience
- Strong skills in C, and Python required, Qt programming, a plus
- Commitment to excellency in embedded programming in a safety-sensitive environment required, familiarity with MISRA, ISO 26262, a plus
- Familiarity with Control Theory/Signal Processing/electromagnetics, a plus
- Familiarity with low level SoC peripheral programming, schematics, cooperation with EE engineers, a plus
- Experience with TI Microprocessor and/or experience with motor control and inverters, a plus
- Team-player, can-do attitude, self motivated, works well in a group environment
- Start-up or small company experience, a plus
- Strong analytical problem solving skills
- Experience with the full life cycle of a innovative project: designing, implementing, testing, releasing and customer support
- Occasional international travel as required