> Markdown version of [/jobs/ext/1321714-senior-embedded-software-engineer](https://www.wearedevelopers.com/jobs/ext/1321714-senior-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). --- # Senior Embedded Software Engineer - **Company:** PUCK ENTERPRISES, INC. - **Location:** Worthing, SD, United States - **Experience:** Expert - **Contract:** Permanent contract - **Skills:** LTE (Telecommunication), Abstraction Layers, Component-Based Software Engineering, Automation of Tests, UClibc (C Standard Library), C++ (Programming Language), CAN Bus, Software Quality, Code Review, Communications Protocols, Computer Programming, Computer Engineering, Software Debugging, DevOps, Device Drivers, Memory Management, Linux on Embedded Systems, Embedded Software, Ethernet, Firmware, Hardware Interface Design, Hardware-In-The-Loop Simulation, Interoperability, Inter-Process Communication, Object-Oriented Software Development, Performance Tuning, Qt (Software), Software Safety, Secure Coding, Software Engineering, Software Systems, Structured Text, Systems Integration, Toolchain, Curam Configuration Tools, Multithreading, Real Time Systems, Concurrency, Build Management, Linux Development, Yocto, Information Technology, Process Control Systems, Iec61131-3, Software Version Control - **Published:** July 17, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=60a2639a2941af99 ## About the Role * Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, Software Engineering, or related field - or equivalent practical experience * 6+ years of professional experience developing production-grade embedded systems * Deep proficiency in C++ for embedded applications, including object-oriented design, multithreading, memory management, and performance-conscious development * Strong hands-on experience in embedded Linux, including system bring-up, process-level debugging, and device interfaces * Experience building UI or application components with Qt in embedded or industrial environments * Practical experience with industrial or vehicle communication protocols (J1939, CANBus, Ethernet) and message-based system integration * Experience with Structured Text (ST) or comparable IEC 61131-3 programming for control systems or automation * Solid grounding in source control, automated testing, debugging tools, and modern team-based development practices * Comfort using AI-assisted development tools to improve design, coding, testing, and documentation without sacrificing code quality or judgment * Strong debugging and problem-solving skills across software, hardware interfaces, and communication networks * Excellent communication skills and the ability to work across software, hardware, systems, and non-engineering teams. Nice to Have * Low-level Linux development, device drivers, board support packages, or hardware abstraction layers * Cross-compilation toolchains, Yocto, Buildroot, or similar embedded Linux build environments * Hands-on experience with bus analyzers, logic analyzers, or protocol analyzers * Real-time systems, concurrency, and performance optimization in resource-constrained environments * Experience integrating software with sensors, actuators, displays, controllers, or other embedded peripherals * Knowledge of software safety, reliability, diagnostics, or secure development practices for industrial/vehicle systems * Experience with hardware-in-the-loop (HIL), system integration, or validation testing * A track record of mentoring engineers and shaping coding standards across teams * Familiarity with regulated, industrial, automotive, agricultural, or heavy equipment environments ## Description We're looking for a Senior Embedded Software Engineer to lead the design and development of embedded software powering our connected industrial and machine control systems. You'll work in an embedded Linus environment across C++, Qt, and Structured Text (ST), owning technical architecture from hardware-software interfaces down to the UI layer. This is a senior individual contributor role - you'll set technical direction, mentor other engineers, and directly shape how our platforms evolve, while staying hands-on with firmware, application code, and system-level debugging. If you like solving hard problems at the intersection of software, hardware, and controls - and want your work to end up running in real machines in the field - this is that role. What You'll Do * Lead the design, implementation, and long-term evolution of embedded software components using C++, QT, and modern engineering practices in an embedded Linux environment. * Own technical design for complex embedded systems - architecture, hardware-software interfaces, inter-process communication, device integration, and performance optimization. * Build and maintain software for machine, vehicle, or industrial control systems using protocols, and configuration tools. * Design UI and application-layer functionality in Qt for operator displays, diagnostics, and configuration tools. * Contribute to control logic and automation using Structure Text (ST), collaborating across embedded and controls. domains. * Drive engineering quality through code reviews, design reviews, technical standards, and testing strategy. * Partner with product, program, QA, and engineering peers to turn requirements into robust software solutions. * Lead root-cause analysis on complex field and lab issues spanning software, hardware interfaces, and communication buses. * Build and improve automated build, integration, test and release workflows. * Mentor engineers and help shape the technical roadmap and long-term architecture of our embedded platforms. ## Related Videos - [A Hitchhikers Guide to Container Security - Automotive Edition 2024](https://www.wearedevelopers.com/videos/1119-a-hitchhikers-guide-to-container-security-automotive-edition-2024) - [The best of two worlds - Bringing enterprise-grade Linux to the vehicle](https://www.wearedevelopers.com/videos/67-the-best-of-two-worlds-bringing-enterprise-grade-linux-to-the-vehicle) - [From DevOps to Scaled DevOps: How We’re Rebuilding Continuous Delivery as a Platform](https://www.wearedevelopers.com/videos/100018-from-devops-to-scaled-devops-how-we-re-rebuilding-continuous-delivery-as-a-platform) - [For the Cars and the Curious: Android Drift](https://www.wearedevelopers.com/videos/499-for-the-cars-and-the-curious-android-drift) - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Developer Tools for Microsoft Azure](https://www.wearedevelopers.com/videos/450-developer-tools-for-microsoft-azure) ## Related Articles - [How software is steering vehicle technology](https://www.wearedevelopers.com/magazine/515-how-software-is-steering-vehicle-technology) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [Is Software Engineering Over-Saturated?](https://www.wearedevelopers.com/magazine/418-is-software-engineering-over-saturated) - [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)