Senior Software Engineer
Listed on 2026-08-13
-
Software Development
Unix/Linux, Embedded Systems/ Firmware/ IoT, Embedded Software Engineer, Software Engineer
Join a leading developer of advanced sensing, imaging, and inspection technologies as a full-time Senior Embedded Software Engineer. This opportunity is based in a suburban technology hub outside the Boston area and focuses on creating software that powers sophisticated hardware systems used in high-reliability environments worldwide.
If you're motivated by solving complex engineering challenges at the intersection of software and hardware, this role offers the chance to work on products with real-world impact. You'll collaborate with multidisciplinary engineering teams, influence technical direction, and contribute throughout the entire product lifecycle, from architecture and development through validation and deployment. This position is ideal for an experienced engineer who enjoys working close to the hardware while continuing to grow their technical leadership and system-level expertise.
RequiredSkills & Experience
- Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or a related technical discipline
- 7+ years of professional experience developing embedded or platform-level software
- Advanced programming skills with C and C++ in Linux-based environments
- Experience developing applications that communicate directly with electronic devices, controllers, or embedded hardware
- Strong understanding of concurrent programming, real-time processing concepts, and software performance optimization
- Track record of diagnosing and resolving challenging hardware/software interaction issues
- Excellent analytical thinking and cross-functional collaboration skills
- Experience working with Embedded Linux, RTOS, or similar operating environments
- Knowledge of low-level hardware interfaces, communication buses, or device driver development
- Familiarity with debugging and code-analysis tools
- Scripting experience using Python, Shell scripting, or similar languages
- Exposure to motion control systems, industrial automation equipment, sensors, or electromechanical products
- Experience supporting products in regulated, safety-critical, or highly reliable operating environments
- Background involving imaging systems, inspection technology, aerospace, defense, or security-related applications
Tech Breakdown
- 70% Embedded Linux Development
- 15% Software Architecture & Design
- 15% Hardware Integration & Validation
- 75% Hands-On Software Engineering
- 10% Technical Planning & Documentation
- 15% Cross-Functional Collaboration
- Develop software components that manage and coordinate complex system functionality
- Create applications that interface directly with embedded hardware and control subsystems
- Design and maintain high-performance multi-threaded software running in Linux environments
- Investigate and resolve integration issues discovered during development, manufacturing, and deployment
- Work closely with systems, electrical, mechanical, and quality engineering teams to define and validate interfaces
- Participate in requirements development, system architecture discussions, test planning, and technical reviews
- Support performance analysis, fault isolation, and continuous product improvement initiatives
- Champion best practices related to code quality, maintainability, reliability, and software development processes
- Competitive hourly or salary compensation (based on experience)
- Potential bonus eligibility
- Opportunity to contribute to globally deployed, mission-critical technology solutions
- Collaborative engineering culture with strong technical mentorship and growth opportunities
You will receive the following benefits:
- Medical, Dental, and Vision Insurance (for eligible employees)
- Retirement Savings Plan / 401(k)
- Paid Time Off (for eligible employees)
- Professional Development Opportunities
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).