> Markdown version of [/jobs/ext/1249867-firmware-engineer](https://www.wearedevelopers.com/jobs/ext/1249867-firmware-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). --- # Firmware Engineer - **Company:** Patrick Allen Group - **Location:** Kent, WA, United States - **Experience:** Experienced - **Salary:** $140,000.0 - $170,000.0 - **Contract:** Permanent contract - **Skills:** Agile Methodology, Unit Testing, Bluetooth, Booting (BIOS), Continuous Integration, Debian Linux, Software Debugging, Linux, Device Drivers, Embedded Software, Firmware, Inter-Process Communication, Python (Programming Language), Linux Kernel, Network Programming, Qt (Software), Signal Processing, Transmission Control Protocol (TCP), Wi-Fi Technology, Google Test, Information Technology, Production Code, Asynchronous Programming, C++14, Jenkins, Golang - **Published:** July 12, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=03292cad11d7889e ## About the Role We are seeking a Firmware Engineer possessing a development background on a Linux Operating Systems platform with Debian based distribution. This position will be responsible for the design, development, and debugging of production level code on embedded devices. Demonstrated expertise in all project lifecycle phases, from design and code development through unit testing, documentation, and release is required. This position is available to US Citizens or Permanent Residency (Green Card) candidates. Direct W2 applicants only, 3rd party recruitment agency submissions or inquiries will NOT be considered., Required * 7+ years of experience with a focus in embedded software development. * A Bachelor of Science degree in Computer Science, Computer or Electrical Engineering, or equivalent. * Strong experience with modern C++, 11 or higher, is required, including the ability to communicate and implement object-oriented class designs. * Experience with developing on a Linux Operating Systems is required; preferably with a Debian based distribution. * Experience developing automated unit tests and working with SDETs/QA to ensure product quality is required. * Experience with RF and baseband device driver and signal processing design and implementation * Proven commercial experience writing low level production code for industrial applications * Usage of lab tools such as oscilloscopes or serial analyzers to debug software, and the ability to read electrical schematics. Preferred * Experience with concurrency topics (i.e. threading and inter-process communication), event loops, and asynchronous programming. * Knowledge with Jenkins Continuous Integration, Make and Google Test, Python, and or Golang. * Experience with network programming topics (e.g. TCP, UDP, sockets, REST, etc.), Standard and BLE Bluetooth, and Wi-Fi. * Competent with interfacing application code with device drivers on Linux. * Proficient with Linux kernel development, device trees, driver modification or backporting, bootloader customization, and/or Qt stack. * Strong understanding of Agile development., * Years of experience with modern C++, 11 or higher * Years of experience writing low level production code for industrial applications * Years of experience with RF and baseband device driver and signal processing design and implementation Education: * Bachelor's (Preferred) Experience: * Linux: 5 years (Required) * Debian: 3 years (Required) ## Description * Responsible for writing low level production code for industrial applications * Design, develop, and debug embedded devices. * Be a part of designing and taking a product to market. * Participate in all project lifecycle phases, from design and code development through unit testing, documentation, and release. * Collaborate with business stakeholders to understand needs and translate into technical requirements. ## 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) - [Go with the Flow: Stop the Leaks Before Your Memory's a Waterfall!](https://www.wearedevelopers.com/videos/100073-go-with-the-flow-stop-the-leaks-before-your-memory-s-a-waterfall) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) - [Scoring 2000 Products per Request: Performance Pitfalls in Golang](https://www.wearedevelopers.com/videos/2073-scoring-2000-products-per-request-performance-pitfalls-in-golang) - [For the Cars and the Curious: Android Drift](https://www.wearedevelopers.com/videos/499-for-the-cars-and-the-curious-android-drift) ## Related Articles - [Fully Remote Software Engineer Jobs](https://www.wearedevelopers.com/magazine/447-fully-remote-software-engineer-jobs) - [Where to Find Entry-Level Software Engineering Jobs](https://www.wearedevelopers.com/magazine/397-where-to-find-entry-level-software-engineering-jobs) - [Where To Find Software Engineering Jobs](https://www.wearedevelopers.com/magazine/396-where-to-find-software-engineering-jobs) - [Best Countries for Software Engineers](https://www.wearedevelopers.com/magazine/267-best-countries-for-software-engineers) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated)