Junior Embedded Software Engineer
Job Description
Support the end-to-end development lifecycle for embedded software and firmware powering consumer electronics.
Responsibilities
- Develop, debug, and test embedded software and firmware for assigned features under the direction of the Senior Embedded Software Engineer, including implementation, validation, and release support.
- Contribute to sustaining engineering for products already in the field by owning assigned firmware update releases from implementation through validation, documentation, and deployment.
- Participate in product development discussions covering product requirements, specifications, and technical feasibility.
- Assist with embedded system hardware design reviews, including microcontrollers, memory, I/O, audio, displays, and other digital design considerations.
- Troubleshoot embedded hardware and firmware issues using lab equipment such as oscilloscopes, logic analyzers, multimeters, and related tools.
- Support QA activities, including defect investigation, issue reproduction, root-cause analysis, test support, and validation.
- Improve software quality through design discussions, testing, documentation, and participation in peer or AI-assisted code reviews.
- Seek guidance, mentorship, and design feedback from senior engineers and apply it to grow technical depth in embedded development.
- Perform other duties as assigned.
Requirements
- 0–2 years of hands-on experience developing and troubleshooting embedded software/firmware, including internship, co-op, or academic project work.
- BS in Computer Science, Computer Engineering, Electrical Engineering, or equivalent.
- Programming experience in C, with exposure to assembly and C++ preferred.
- Familiarity with microcontrollers, peripherals, interrupts, timers, and communication interfaces such as UART, SPI, I2C, or similar.
- Ability to read schematics, with developing capability to contribute input on embedded system hardware design, including microcontrollers, memory, I/O, and digital interfaces.
- Some hands-on experience debugging hardware and firmware using oscilloscopes, logic analyzers, multimeters, and related lab equipment.
- Ability to work effectively with direction from senior engineers while collaborating with other engineering disciplines, product, QA, and manufacturing teams.
- Strong problem-solving skills, attention to detail, and eagerness to learn from code reviews and design discussions.
Technologies
- C
- assembly
- C++
- UART
- SPI
- I2C
- oscilloscopes
- logic analyzers
- multimeters
Preferred Qualifications
- Exposure to RTOS-based, preemptive, multitasking embedded systems.
- Exposure to USB device stacks and host-side software implementation.
Benefits
- 401(k)
- 401(k) matching
- Dental insurance
- Health insurance
- Paid time off
- Referral program
- Vision insurance
- Location: West Chester, OH (hybrid)
- Employment Type: Full-time salaried position with benefits
- Reporting: Senior Embedded Software Engineer
- Pay: USD 65,000 - 85,000 per year