> Markdown version of [/jobs/ext/2815865-senior-embedded-engineer](https://www.wearedevelopers.com/jobs/ext/2815865-senior-embedded-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Senior Embedded Engineer - **Company:** Enin Systems - **Location:** United States - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** Clean Code Principles, Board Bringup, C (Programming Language), ARM Architecture, User Authentication, Booting (BIOS), UClibc (C Standard Library), C++ (Programming Language), CMake, Compilers, Software Quality, Communications Protocols, Cyber Security, Computer Programming, Computer Engineering, Continuous Integration, Software Debugging, Linux, Device Drivers, Memory Management, Embedded C, Linux on Embedded Systems, Middleware, Embedded Software, Ethernet, Firmware, FreeRTOS, GNU Debuggers, Hardware Design, Joint Test Action (IEEE Standards), Python (Programming Language), Performance Tuning, Real-Time Operating Systems, Software Deployment, Software Engineering, Software Requirements Analysis, Systems Integration, Universal Asynchronous Receiver/Transmitter, USB, Multithreading, Serial Peripheral Interface, PIC Microcontroller, Real Time Systems, Concurrency, Hardware Testing, Git, System-level Testing, Yocto, Information Technology, Build Tools, Hardware Infrastructure, U-Boot, Software Coding, Software Version Control - **Published:** September 10, 2026 - **Apply:** https://www.dice.com/job-detail/ad8362fd-39e5-47dc-ac52-a37ce4c74d10 ## About the Role * Bachelor's or Master's degree in Electrical Engineering, Electronics Engineering, Computer Engineering, Computer Science, or a related field. * 12+ years of experience in embedded software/firmware development. * Strong programming experience in Embedded C/C++. * Hands-on experience with microcontrollers such as ARM Cortex-M, STM32, NXP, TI, Renesas, or similar platforms. * Strong understanding of embedded systems, real-time programming, memory management, interrupts, timers, and concurrency. * Experience with RTOS and multithreaded embedded applications. * Experience with embedded communication protocols including I2C, SPI, UART, CAN, USB, and Ethernet. * Strong debugging and troubleshooting skills across hardware and software. * Experience with Git and software development/version-control practices. * Familiarity with embedded development tools, compilers, debuggers, IDEs, and build systems. Preferred Qualifications * Experience with Embedded Linux, Yocto, or Buildroot. * Experience developing device drivers or BSPs. * Knowledge of bootloaders, firmware updates, OTA updates, and secure boot. * Experience with automotive, medical devices, industrial automation, consumer electronics, IoT, or other safety-/mission-critical embedded systems. * Familiarity with Python or scripting for automation and testing. * Knowledge of hardware design, schematics, PCB concepts, and electronics fundamentals. * Experience with CI/CD and automated embedded software testing. * Familiarity with cybersecurity concepts such as encryption, authentication, secure communications, and firmware security. * Experience with functional safety standards such as ISO 26262, IEC 61508, or relevant industry standards is a plus. Technical Skills Programming: C, C++, Python Microcontrollers: ARM Cortex-M, STM32, NXP, TI, Renesas RTOS: FreeRTOS, Zephyr, ThreadX, QNX Protocols: CAN, I2C, SPI, UART, USB, Ethernet Operating Systems: Embedded Linux, Linux, RTOS Tools: Git, JTAG/SWD, GDB, oscilloscopes, logic analyzers, IDEs Build/Automation: CMake, Make, GCC, CI/CD Debugging: Hardware/software integration, firmware debugging, performance optimization Key Competencies * Embedded systems architecture * Firmware development * Hardware/software integration * Real-time systems * Problem solving and root-cause analysis * System debugging * Technical leadership * Cross-functional collaboration * Code quality and engineering best practices * Mentoring and knowledge sharing ## Description We are seeking an experienced Senior Embedded Engineer to design, develop, integrate, and maintain embedded software and firmware for next-generation products. The ideal candidate will have strong experience in embedded C/C++, microcontrollers, RTOS, hardware-software integration, debugging, and embedded system architecture., The Senior Embedded Engineer will work closely with hardware, firmware, systems, QA, and product teams to deliver reliable, high-performance embedded solutions from concept through production., * Design and develop embedded software and firmware for microcontroller-based systems. * Develop efficient, reliable, and maintainable code using C/C++. * Work with RTOS environments such as FreeRTOS, Zephyr, ThreadX, or similar platforms. * Develop and integrate device drivers, board-support packages, middleware, and application-level firmware. * Interface with hardware components using protocols such as I2C, SPI, UART, CAN, USB, Ethernet, and GPIO. * Participate in embedded system architecture, design reviews, and technical decision-making. * Analyze system requirements and translate them into software and firmware specifications. * Perform debugging using oscilloscopes, logic analyzers, JTAG/SWD debuggers, and other embedded development tools. * Troubleshoot complex hardware/software integration issues and perform root-cause analysis. * Develop unit, integration, and system-level tests for embedded applications. * Optimize firmware for memory usage, CPU performance, power consumption, and real-time behavior. * Collaborate with hardware engineers on schematic reviews, board bring-up, and hardware validation. * Support firmware releases, production deployment, and post-production troubleshooting. * Mentor junior embedded engineers and contribute to coding standards and best practices. * Maintain technical documentation, design specifications, test plans, and development records. ## Related Videos - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Docker network without Docker](https://www.wearedevelopers.com/videos/1418-docker-network-without-docker) - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [Prototyping with Hardware and the Web](https://www.wearedevelopers.com/videos/651-prototyping-with-hardware-and-the-web) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) ## Related Articles - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Software Engineer Career: Things You Should Know](https://www.wearedevelopers.com/magazine/143-software-engineer-career-things-you-should-know)