Principal Embedded Software Engineer
Listed on 2026-06-26
-
Software Development
Python, Unix/Linux, Embedded Software Engineer, C++ Developer
Principal Embedded Software Engineer – Onsite position
Do you have a passion to invent, design and implement embedded software along with a curiosity and desire to learn? Your job will be to create or modify Board Support Packages (BSPs), device drivers, power‑on firmware (BIOS/U‑Boot), built‑in test and design verification test software for Digital Signal Processing computer boards (DSPs). This is your opportunity to be innovative, flexible, self‑directed and bring your software engineering skills to our dynamically growing organization.
LocationAshburn, VA / Boston, MA / Nashua, NH
Salary Range$ – $ per year plus bonus
Benefits- Paid Time Off
- 401K with Employer Match and Profit Sharing
- Health and Wellness Benefits
- Learning and Development Opportunities
- Referral Program
- Competitive Pay
- Recognition
- Employee Stock Purchase Plan
- Inclusive & Supportive Culture
- Plan, design, develop, and test new embedded computing software or complex enhancements to existing software for embedded systems based on specifications and in compliance with industrial, military, and aerospace standards.
- Apply established development processes and assist in process improvement.
- Analyze requirements and develop design alternatives.
- Develop test software and procedures.
- Implement and integrate, or debug embedded software including bootloaders (BIOS, Slim Boot Loader , U‑Boot), device drivers (Linux and VxWorks), customized applications and embedded test software, and product simulation and production test software.
- Diagnose and resolve advanced software defects by collaborating with cross‑functional technical staff and applying expert‑level analytical and troubleshooting skills.
- Evaluate and respond to customer‑reported issues, recommending and implementing software modifications or enhancements to improve functionality and user experience.
- Assist in the development of software design and test documentation, and user manuals.
- U.S. citizenship and active U.S. DoD Clearance required.
- Bachelor’s degree in electrical engineering or computer engineering (or equivalent) with a minimum of 10 years’ experience.
- Hands‑on and demonstrable experience with software development using C/C++, Linux (Red Hat, LynxOS, Wind River), VxWorks (7.x), Linux and VxWorks device drivers, scripting (bash/csh), high‑level application software, Python, LabVIEW, and IPMI.
- Hands‑on and demonstrable experience with development tools such as IDEs (Visual Studio, Eclipse‑based), AMD/Xilinx Vivado/Vitis, Petalinux, GCC, CMake, Yocto, and MS Office.
- Hands‑on and demonstrable experience with Intel x86 processors, ARM, and AMD Zynq MPSoCs.
- Knowledge and experience with protocols and standards such as Ethernet, Infiniband, RDMA, PCIe Gen3/4, SPI, I2C, and RS232/RS422.
- Experience reading and understanding IC datasheets, board schematics.
- Active secret clearance or ability to obtain secret clearance desirable.
This position may require exposure to export‑controlled information and be subject to additional security screening. In the event information provided during the security screening reveals ineligibility to access export‑controlled information, any offer of employment may be reconsidered or withdrawn.
Curtiss‑Wright is an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, ethnicity, color, sexual orientation, gender identity, physical or mental disability, age, ancestry, legally protected medical condition, family care status, marital status, religion, veteran status, national origin, or any other legally protected status. If you require accommodation during the recruitment process, please contact Talent Acquisition.
If you require accommodation due to a disability at any time during the recruitment and/or assessment process, we will make all reasonable efforts to accommodate your request.
(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).