> Markdown version of [/jobs/ext/611374-embedded-software-engineer](https://www.wearedevelopers.com/jobs/ext/611374-embedded-software-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). --- # Embedded Software Engineer - **Company:** Cambridge Mobile Telematics - **Location:** Cambridge, MA, United States (Remote available) - **Experience:** Expert - **Salary:** $130,800.0 - $163,600.0 - **Contract:** Permanent contract - **Skills:** Board Bringup, C (Programming Language), LTE (Telecommunication), ARM Architecture, C++ (Programming Language), Protocol Stack, Datasheets, Software Debugging, Device Drivers, Memory Management, Firmware, FreeRTOS, GNU Linker, Hardware Security Module, Joint Test Action (IEEE Standards), Python (Programming Language), Linux Commands, Open Source Technology, Software Architecture, Real-Time Operating Systems, LoRaWaN, Software Engineering, Toolchain, Git, Build Tools, U-Boot, Software Coding, Hardware Debugging - **Published:** June 24, 2026 - **Apply:** https://www.dice.com/job-detail/3cd95285-6645-4ac8-9c8d-33d1a38f8612 ## About the Role * Bachelor's degree or equivalent years of experience and/or certification in a related field * 4+ years of relevant professional work experience * Absolute fluency in C, C++, and Python programming * Strong experience with systems software issues - e.g., race conditions, memory management * Experience working at the boundary of hardware and software - e.g., interrupt handling, device driver development, bringing up untested hardware * Comfortable with the Linux command-line * Comfortable with git * Track record of writing clean, readable, testable code * Be nice. We're nice, and it's not fun to work with people who aren't * Have a "leave things better than you found them" philosophy. For example: If you're adding a new feature and discover that it would be cleaner to refactor some code first, do the refactor * Good engineering taste: for example, finding the right balance of spending time on code health vs. making forward progress on new features in the face of deadline pressure Nice to Haves: * Experience with one or more RTOS platforms (FreeRTOS, Zephyr, or similar) including task management, synchronization primitives, and real-time scheduling * Experience with ARM Cortex-M families specifically (e.g., STM32, Nordic nRF, Infineon PSoC, Microchip SAM) * Proficiency with hardware debugging tools - JTAG/SWD debuggers, logic analyzers, oscilloscopes, and power profilers * Comfortable reading schematics, datasheets, and reference manuals * Experience with embedded build systems, cross-compilation toolchains, and linker scripts * Experience with platform or MCU migration projects, including hardware bring-up on new silicon * Background in electrical engineering or hands-on PCB-level debugging * Familiarity with secure boot, firmware signing, and hardware security modules * Experience with BLE 5.x specifications and protocol stack porting * Experience with Amazon Sidewalk, LoRa/LoRaWAN, or cellular (LTE-M, NB-IoT) * Knowledge of EU Cyber Resilience Act (CRA) or similar regulatory compliance frameworks * Experience with devicetree, Kconfig, or similar hardware abstraction mechanisms * Contributions to open-source embedded projects (Zephyr, FreeRTOS ecosystem, etc.) ## Description * You will be collaborating with colleagues in the firmware group as we build new features and entirely new products together: deciding on the right software architecture, writing code and tests, measuring key metrics such as power use, and keeping the codebase healthy in the face of increasing complexity. You will participate in the entire design process as our software group negotiates with product managers and hardware engineers to find the intersection between what's technically feasible and what customers want. * Complete any additional tasks as they arise ## Related Videos - [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) - [Cyber Security: Small, and Large!](https://www.wearedevelopers.com/videos/259-cyber-security-small-and-large) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) - [On developing smartphones on wheels](https://www.wearedevelopers.com/videos/258-on-developing-smartphones-on-wheels) - [Unleashing the Full Potential of the Arm Architecture – Write Once, Deploy Anywhere](https://www.wearedevelopers.com/videos/940-unleashing-the-full-potential-of-the-arm-architecture-write-once-deploy-anywhere) - [Stop Committing Your Secrets - GIt Hooks To The Rescue!](https://www.wearedevelopers.com/videos/573-stop-committing-your-secrets-git-hooks-to-the-rescue) ## Related Articles - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs) - [Why Upskilling And Reskilling is Important For Developers](https://www.wearedevelopers.com/magazine/428-why-upskilling-and-reskilling-is-important-for-developers)