Develop, enhance and debug new and existing real-time software in C and C++ in embedded RTOS environments
Work with hardware and system teams on design optimization
Drive software development for performance, scalability, modularity, robustness, and tight integration with the hardware
Assist in tool development for testing and system integration
Implement continuous improvements and best practices within the team, and larger organization
What You’ll Bring
Degree in Computer Science, Computer Engineering, Electrical Engineering, Physics, or equivalent experience
Capable of delivering top quality C and C++ code in multi-threaded and multi-process systems
Expert software fundamentals including architectural design, algorithm development, data structures, code modularity, and maintainability
Desired to have strong electrical and electronics fundamentals to be able to perform FMEA analysis of complex power electronics hardware and eliminate SPOF in design
Desired to have system startup, scripting, and extensive board bring up experience
Desired to have experience implementing battery management firmware/software
Desired to have test driven development experience using unit testing, software in the loop, and hardware in the loop methodologies