Description
Job Description
About the Role
Deliver high-quality C code in a real-time embedded environment
Specify, design, and implement functionality and behaviors of embedded subsystems
Be involved in the full life-cycle of firmware development from concept through integration, test and high volume manufacturing
Contribute towards writing requirements with traceability to implementation and the test cases
Hands-on hardware bring up, system debugging and code optimization
Make performance and optimization trade-offs to meet product requirements
Contribute to technical designs and ECU requirements, safety analysis, and interface design between various microcontrollers
Interface with hardware and mechanical engineering teams, as well as clients and end-users of the products
Minimum Qualifications
BS or MS in Electrical Engineering, Computer Engineering, Computer Science or similar
All levels of experience are needed
Proficiency in the following areas/aspects:
C programming and proven record of delivering high quality code
1. Design code modules with static memory footprint
2. Git version control system
3. Embedded systems design and architectures - should be familiar with concepts like watchdogs, task preemption, software interrupts, priority inversion, etc.
4. Low-level driver implementation (like SPI, ADC, PWM, CAN, LIN, etc.)
5. Computer Science principles such as data structures and algorithms
6. Hands-on experience with electrical circuits and basic circuit design and analysis
Preferred Qualifications
If the candidate has had experience working on projects for student clubs and organizations like robotics club, SAE (Society of Automotive Engineers), Solarboat, EV Club, etc.
Experience with:
1. MISRA C, unit testing, static analysis tools
2. Python scripting
3. Embedded microprocessor toolchain
4. Familiarity with ARM cores
5. Familiarity with processors from TI (C2000, Hercules, MSP430, etc.), Freescale (MPC560x), Infineon, STMicro
6. Familiarity with embedded RTOS (eg. freeRTOS, MQX, DSP BIOS, etc.)
7. Hardware board bring-ups