Description
We're seeking an Embedded Software Engineer to join our Electric Vehicles, Digital and Design (EVDD) team. As an Embedded Software Engineer, you will design and implement software running on a distributed embedded system with multiple microcontrollers. Your focus will be on creating reusable software designs/components, designing and implementing real-time Ethernet communication, and developing custom serial communication protocols.
Responsibilities:
- Design and implement software running on a distributed embedded system with multiple microcontrollers.
- Design and implement real-time Ethernet communication.
- Develop custom serial communication protocol over UART and I2C interfaces to support reliable data exchange between the device and external components.
- Specify requirements, design, implement, and test both bare metal and RTOS low-level software for creating a scalable platform.
- Work with/resolve ambiguity in requirements/specifications/designs.
- Create elegant, efficient real-time software components and interfaces.
- Develop software component testing methodologies and implementations to ensure maturity/stability/release readiness.
- Work with hardware and debuggers at a bench and HIL level to verify software operation.
- Define system-level power/compute/communication requirements and implement solutions that allow different applications to achieve different combinations of configurations.
- Profile power/CPU/bus usage and identify opportunities for optimization on the submodule as well as system level.
- Collaborate with V&V to develop comprehensive test plans and perform thorough testing to validate firmware functionality, stability, and performance under various conditions, including low power modes.
- Interface with external vendors, including review of firmware specifications, providing design guidance, and integrating code releases.
- Maintain clear and concise documentation of design and firmware architecture
Qualifications:
- Bachelor's degree in electrical engineering, computer science, computer engineering, or related field.
- 5+ years of relevant experience in embedded design, using C/C++.
- Experience with bare metal and RTOS environment.
- Experience with JIRA/Confluence or a similar system for tracking inputs/results.
- Knowledge of electrical engineering fundamentals including circuit analysis and design.
Preferred qualifications:
- Highly collaborative mindset and strong communication skills.
- Desire to work with vendors to integrate source code for new technology.
- Experience in driver development and RTOS integration. Zephyr OS experience is a plus.
- Experience with software build tools like Bazel, Scons, Cmake etc.
- Experience with fundamental hardware components on PCB and their analysis tools.
- Ability to write testing scripts for using scripting languages (Python)
- Fluent in software fundamentals including software design and maintainability.
- Hands-on experience in hardware bring-up, system debugging, and code optimization.
Benefits:
- Immediate medical, dental, vision, and prescription drug coverage
- Flexible family care days, paid parental leave, new parent ramp-up programs, subsidized back-up child care, and more
- Family building benefits including adoption and surrogacy expense reimbursement, fertility treatments, and more
- Vehicle discount program for employees and family members and management leases
- Tuition assistance
- Established and active employee resource groups
- Paid time off for individual and team community service
- A generous schedule of paid holidays, including the week between Christmas and New Year's Day
- Paid time off and the option to purchase additional vacation time.
Salary: This position is a general salary grade 7 and ranges from $118,000-198,000.
This listing is enriched and indexed by YubHub. To apply, use the employer's original posting:
https://efds.fa.em5.oraclecloud.com/hcmUI/CandidateExperience/en/sites/CX_1/job/61742