Embedded Firmware & Linux Software EngineerThis full-time, onsite role in Eagan, Minnesota focuses on designing and developing embedded firmware and Linux-based software for microcontroller-based systems. You will work across the full embedded stack, from bare-metal and RTOS-based firmware to embedded Linux, contributing to high-technology products in an engineering-focused environment.ResponsibilitiesDesign, develop, and maintain embedded firmware and software solutions for microcontroller-based boards and applications.Develop and integrate software within embedded Linux environments, including system-level components and services.Implement and optimize C and C++ code for embedded platforms, including bare-metal and RTOS-based systems.Develop, test, and debug device drivers and low-level interfaces for microcontrollers and peripherals.Implement and support serial communication protocols such as UART, SPI, and I2C.Work with serial and fieldbus protocols, including Modbus RTU/TCP or CANBus where applicable.Support and enhance embedded firmware platforms and Board Support Package (BSP) development.Contribute to system-level features such as bootloaders, embedded file systems, system controls, and embedded Linux components.Collaborate with hardware teams on board layout and design considerations related to firmware and software.Participate in Agile development processes, including sprint planning, code reviews, and continuous integration activities.Create and execute tests for embedded firmware and Linux components, using scripting (such as Python or Bash) where helpful.Troubleshoot and resolve issues at the hardware, firmware, and system levels to ensure reliable and robust product performance.Document designs, interfaces, and implementation details to support maintainability and future development.Essential SkillsBachelor's degree in Computer Engineering, Electrical Engineering, Software Engineering, or a related technical discipline.4–5+ years of hands-on experience programming in C or C++ for embedded systems.Strong experience in embedded firmware development for microcontroller-based boards and applications.Proficiency with embedded RTOS and bare-metal development.Experience with embedded Linux development and working within embedded Linux environments.Solid understanding and practical experience with serial communication protocols such as UART, SPI, and I2C.Experience with embedded software development, including low-level programming, debugging, and optimization.Ability to develop and support device drivers and system-level embedded software.Strong programming skills in C; ability to write efficient, reliable, and maintainable embedded code.Experience working in an engineering-focused product development environment.Additional Skills & QualificationsExperience with ARM-based microcontrollers, such as STMicroelectronics, NXP, or Silicon Labs EFM devices.Experience with Modbus RTU/TCP or CANBus communication protocols.Experience supporting embedded firmware platforms and Board Support Package (BSP) development.Hands-on experience with one or more of the following: boot or bootstrap loaders, embedded file systems, system controls, and embedded Linux internals.Familiarity with Agile development methodologies and associated tools and practices.Experience with board layout and design, and the ability to collaborate effectively with hardware engineers.Proficiency in C++ for embedded firmware development, in addition to strong C skills.Experience with RTOS-based systems and embedded bare-metal implementations.Scripting experience in Python and/or Bash for test automation and validation is a plus.Experience in high-technology product development environments.Work EnvironmentThis is a full-time, onsite role based in Eagan, Minnesota, operating during standard business hours in an engineering-focused environment. You will work closely with other engineers in a collaborative setting, using modern embedded development toolchains, microcontroller evaluation boards, and Linux-based systems. The work involves hands-on interaction with hardware, firmware, and embedded Linux platforms in a professional engineering lab and office setting, with a focus on high-technology product development.Job Type & LocationThis is a Contract position based out of Eagan, MN.Pay and BenefitsThe pay range for this position is $50.00 - $72.00/hr. Eligibility requirements apply to some benefits and may depend on your job classification and length of employment.
Benefits are subject to change and may be subject to specific elections, plan, or program terms. If eligible, the benefits available for this temporary role may include the following: • Medical, dental & vision • Critical Illness, Accident, and Hospital • 401(k) Retirement Plan – Pre-tax and Roth post-tax contributions available • Life Insurance (Voluntary Life & AD&D for the employee and dependents) • Short and long-term disability • Health Spending Account (HSA) • Transportation benefits • Employee Assistance Program • Time Off/Leave (PTO, Vacation or Sick Leave)Workplace TypeThis is a fully onsite position in Eagan, MN.Application DeadlineThis position is anticipated to close on Aug 17, 2026.