Embedded Firmware Engineer
About the role
An Embedded Software Engineer is required to join our Firmware Team, developing and maintaining high-quality boot code, deployed test, and IPMI firmware for Abaco Systems’ ruggedized embedded computing solutions. These products serve the rugged embedded COTS market and require firmware such as BIOS/UEFI on Intel platforms, U-Boot on NXP and ARM platforms, Built-in Test (BIT) for deployed diagnostics, and IPMI for out-of-band management and monitoring.
Responsibilities
- Generate requirements, port, and develop firmware for new products.
- Maintain and update firmware for existing products.
- Create project documentation to comply with company procedures and customer requirements.
- Provide product support to customers and manufacturing teams.
- Collaborate closely with hardware engineering, other software teams, and cross-disciplinary groups within Abaco.
- Develop and maintain embedded software written in C and assembly.
- Follow company design procedures for software development.
- Use Continuous Integration and Static Analysis tools to improve code quality and detect bugs.
- Provide customer support with accompanying documentation.
- Communicate status to key stakeholders in a timely and professional manner.
- Participate in continuous improvement of software development processes.
- Analyze hardware operation through schematics, component datasheets, and discussions with hardware engineers.
- Work with industry-standard backplane interconnect technologies (VME, VPX, CPCI).
Requirements
- Bachelor’s Degree in Electrical or Computer Engineering from an accredited university or college.
- 7+ years of related experience.
- 3+ years of electrical engineering design experience.
- Ability and willingness to travel up to 10% as required.
Skills
- Strong understanding of C/C++ and assembly programming; primary language is C.
- Experience with at least one of the following technologies: UEFI, U-Boot, NVIDIA CBoot, Slim Bootloader, Secure/Trusted Boot, Xilinx SDK, NXP K21.
- Experience writing software to test computer systems.
- Experience with compilers/cross-compilers (e.g., GCC) and build environments.
- Strong understanding of computer architectures and hardware design, with knowledge of at least one of the following: Intel Architecture (i7), NXP (Freescale) T-series, P-series, PowerPC, or ARM.
- Experience with source code repositories and static code analysis tools.
- Strong problem-solving and creative solution-building skills.
- Experience working in an Agile environment with multi-discipline teams.
- Demonstrated ability and willingness to use AI tools to improve productivity, decision-making, and work quality.
- Strong verbal and written communication skills.
Desired Skills
- Experience with source code repositories (Perforce, Git).
- Experience with source code analysis tools (Klocwork).
- Experience with collaborative tools (Atlassian toolset, JIRA, Confluence).
- Experience with continuous integration servers (e.g., Jenkins).
- Knowledge of modern Real-Time Operating Systems.
- Knowledge of Linux as a software development environment.
- Knowledge of backplane interconnect architectures (VME, CPCI, VPX, IPMI).
- Awareness of Agile/Scrum methodologies.
- Awareness of DO-178B/C.
Security
This role may involve working with or exposure to export-controlled or classified information. Candidates must be U.S. citizens or qualified permanent residents with proper clearances.
Pay
Salary range: $150,000 – $190,000 USD. Incentive target: $1,289. Actual salary offered will be based on experience, skills, qualifications, market considerations, and geographic location.
Benefits
Competitive benefits package available. For more information, visit AMETEK’s careers page.