Firmware Engineering Intern
About the role
We're looking for a firmware engineering intern to own the code that makes our products work β the embedded software running on the microcontrollers at the heart of everything we build. You'll write it, test it on real hardware, and see it come to life in a product people actually use.
This role is what you make of it. We're looking for a self-starter who can take the reins and run without hand-holding β someone who will make the position their own and help shape the future of our firmware and embedded systems as we grow. We'll give you real ownership and trust; we expect you to run with it.
We're hiring for the long term. We want someone who can grow with us and step into a permanent, senior role as the company scales.
What you'll do
- Write, test, and debug firmware for the microcontrollers that run our products (embedded C/C++)
- Bring up new hardware β get sensors, displays, radios, and other peripherals talking over I2C, SPI, UART, and similar
- Build and improve product features, then validate them on real hardware and iterate
- Debug with oscilloscopes, logic analyzers, and serial output β track issues down and fix them
- Work closely with our electrical and mechanical team to integrate firmware into the full product
- Help shape how we build, version, and document firmware as we grow (Git and good habits)
- Contribute to firmware for both existing products and new prototypes
What you'll bring
Above all, we care about attitude and initiative. If you're a self-starter with a great attitude β someone who can take a problem and run with it, a genuine team player, and eager to learn β you'll thrive here.
- A self-starter who takes initiative and works independently β we'll hand you ownership, not step-by-step direction
- Hands-on experience programming microcontrollers (Arduino, ESP32, STM32, PIC, or similar) β school, club, or - personal projects count
- Solid programming fundamentals in C or C++
- Real projects you've built β we want proof you've made things work on hardware (a portfolio or GitHub strongly preferred)
- Currently pursuing or recently completed a degree in Computer, Electrical, or Software Engineering (or a related field, or equivalent hands-on experience)
- A great attitude, strong work ethic, and eagerness to learn and adapt
Nice to have
- Experience with embedded communication protocols β I2C, SPI, UART, BLE/Wi-Fi
- Comfort reading datasheets and schematics and working close to the hardware
- Debugging with oscilloscopes and logic analyzers
- Version control with Git, and some RTOS or bare-metal experience
- Familiarity with tools like PlatformIO or the ESP IDF toolchain
Apply for this position
- Hours: Part-time, up to 30 hours/week β flexible around a class schedule - Pay: $25/hr - Location: On-site in Maryland Heights, Missouri β you'll be working hands-on with our hardware and team - Opportunity: We're hiring with the future in mind β this role is built to grow into a permanent, full-time position for the right person
Innovative Timing Systems is an equal opportunity employer and welcomes applicants from all backgrounds.