Embedded Software Engineer designing and implementing software for Ford's distributed embedded systems. Collaborating on real-time communication protocols and low-level software testing.
Responsibilities
Design and implement software running on a distributed embedded system with multiple microcontrollers with a focus on creating re-usable software designs / components.
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
Requirements
Bachelor’s degree in electrical engineering, Computer Science, Computer Engineering, experience
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
Even better, you may have...**• 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.
Knowledge of electrical engineering fundamentals including circuit analysis and design
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.
Senior Technical Lead developing power and performance plans for Intel's IPs and SoCs. Collaborating across functions to optimize architectures and ensure power efficiency.
Product Engineer at Zanders turning product ideas into working software for financial consulting. Collaborating with Product Owners and specialists to ensure successful implementation.
Software Engineer 2 responsible for analysis, design, testing, and development of software projects at U.S. Bank. Collaborating with teams to ensure minimal impact to customer experience and embrace technology transformation.
Principal Engineer developing cloud - native systems for financial crime detection. Collaborating with cross - functional teams and modernizing legacy systems in a highly technical environment.
Staff Software Engineer driving AI transition for conversational banking at the Commonwealth Bank. Leading engineering direction and ensuring modern AI - powered solutions across customer interactions.
Aeromechanical engineer performing aircraft - weapon integration activities for HALCON. Ensuring compliance with military standards and conducting aeromechanical analyses in Abu Dhabi.
Senior Engineer responsible for managing electrical and communication integration at HALCON. Leading development of tools and strategies for successful platform readiness.
Lead .NET Developer responsible for developing and supporting custom C# and .NET applications. Collaborating with cross - departmental teams and leveraging modern technologies like Azure and Blazor.
Senior Principal Engineer in charge of F5’s Distributed Cloud Platform services. Drive design, implementation, and troubleshooting of edge - native applications and networking technologies.
Lead Software Engineer driving DevOps processes and Azure infrastructure management at Blue Yonder. Focused on Kubernetes, CI/CD pipelines, and continuous delivery framework.