Firmware Engineer
- Melbourne, FL, United States
Applications open in a new tab.
Job details
- Posting language
- English
- Posted
Original job description
The Embedded Firmware Engineer I will support the development and sustaining engineering of embedded systems used in radiation measurement and medical-device instrumentation. This early-career role works at the intersection of firmware, electronics, instrumentation, and software. The engineer will begin with well-defined firmware, hardware abstraction layer (HAL), driver, debugging, test, and documentation assignments under the mentorship of a senior firmware engineer, then grow into broader ownership of embedded platforms and legacy product knowledge.
Key Areas of Responsibility
- Develop, modify, debug, and maintain embedded C/C++ firmware for microcontroller-based products.
- Implement well-defined firmware features, HAL components, low-level drivers, device interfaces, initialization, configuration, and error/status handling.
- Support hardware bring-up and troubleshoot issues spanning firmware, electronics, communications, and host software.
- Read schematics and component datasheets and use standard bench equipment such as oscilloscopes, logic analyzers, and digital multimeters.
- Support serial, USB, and other embedded command/response communications between devices and host applications.
- Build firmware from controlled repositories and follow established branching, peer-review, configuration-management, and release practices.
- Develop and execute unit-level and firmware-level tests; support design acceptance testing, defect investigation, and regression testing.
- Create clear design notes, interface documentation, test records, and change documentation for regulated product development.
- Participate in design and code reviews and collaborate with electrical, software, systems, test, manufacturing, and quality engineers.
- Learn existing Sun Nuclear firmware architectures and progressively assume sustaining responsibility for established products.
Knowledge, Skills & Abilities:
- Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a closely related technical discipline.
- Coursework, internship, co-op, project, hobby, or professional experience with embedded systems.
- Working knowledge of C or C++ and basic understanding of microcontrollers and embedded software concepts.
- Ability to read basic electrical schematics and electronic component datasheets.
- Familiarity with common interfaces such as UART, SPI, I2C, USB, or CAN.
- Experience with source control such as Git or an equivalent system.
- Structured problem-solving skills, clear technical communication, and willingness to work directly with laboratory hardware.
- Experience with STM32 or NXP microcontrollers and related development tools.
- Exposure to interrupts, timers, DMA, ADCs, RTOS concepts, memory-mapped peripherals, FPGA-to-MCU interfaces, or reusable driver/HAL design.
- Experience with IAR Embedded Workbench, STM32 development tools, Visual Studio, Python, C#, or scripting for test automation.
- Exposure to medical devices, regulated product development, design controls, or IEC 62304.
More about this job
Skills
- Firmware
- Embedded systems
- Debugging
- Documentation
- Product knowledge
- C
- C++
- Troubleshoot
- Electrical engineering
- Computer engineering
- Computer science
- Git
- Problem solving
- Communication skills
- ADCS
- RTOS
- Microsoft Visual Studio
- Python
- C#
- Test automation
- Medical devices