Design, develop, and maintain software applications that interface with hardware systems, sensors, and external instruments
Write, debug, and refactor code in C# and related languages to support test control, data acquisition, logging, and visualization
Collaborate with hardware engineers on hardware/software co-design , including defining interfaces, timing, control logic, and system behavior
Develop and maintain automated test frameworks and participate in regression testing to ensure software reliability across releases
Use code repositories (e.g., Git-based systems) for source control, code reviews, branching, and release management
Diagnose and resolve issues that span software, firmware, and hardware boundaries
Contribute to system-level documentation, design reviews, and technical knowledge sharing
Support system bring-up, integration, and troubleshooting in lab environments
Required Qualifications
Strong familiarity with the C# programming language , including object-oriented design and debugging
Demonstrated ability to code beyond scripting-writing maintainable, production-quality software
Experience working with code repositories (e.g., Git), including commits, branches, merges, and code reviews
Familiarity with regression testing concepts , automated test execution, and test result analysis
Experience or strong interest in hardware/software co-design and systems that integrate real-world hardware
Requirements
Experience developing software for test systems, lab automation, or hardware control environments
Familiarity with communication interfaces such as USB, Ethernet, serial, or instrument control APIs
Exposure to data logging, visualization, and post-processing workflows
Experience working in cross-disciplinary teams (hardware, firmware, software, systems engineering)
Comfortable working in lab settings with physical hardware
Education & Experience Recommended
Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related technical field (or equivalent practical experience)
Typically has 4-7 years of work experience, preferably in applications engineering, programming, or a related field or Masters degree or higher with 3-5 years of work experience.
Cross-Org Skills
Effective Communication
Results Orientation
Learning Agility
Digital Fluency
Customer Centricity
The pay range for this role is $105,050 to $150,000 USD annually with additional
opportunities for pay in the form of bonus and/or equity (applies to United
States of America candidates only). Pay varies by work location, job-related
knowledge, skills, and experience.
Benefits
HP offers a comprehensive benefits package for this position, including:Health insuranceDental insuranceVision insuranceLong term/short term disability insuranceEmployee assistance programFlexible spending accountLife insuranceGenerous time off policies, including;4-12 weeks fully paid parental leave based on tenure11 paid holidaysAdditional flexible paid vacation and sick leave (US benefits overview[https://hpbenefits.ce.alight.com/])The compensation and benefits information is accurate as of the date of thisposting. The Company reserves the right to modify this information at any time,with or without notice, subject to applicable law.Job -SoftwareSchedule -Full timeShift -Shift 1, 0% premium (United States of America)Travel -NoRelocation -Yes Equal Opportunity Employer (EEO) -Please be assured that you will not be subject to any adverse treatment if you choose to disclose the information requested. This information is provided voluntarily. The information obtained will be kept in strict confidence.For more information, review HP's EEO Policy or read about yPaid time offFlexible scheduleEquity / stock optionsPerformance bonusParental leave
Additional Information
Embedded Systems Software Engineer
Description -
We are seeking a Systems Software Engineer to support the design, development, and validation of complex hardware test and control systems. This role spans software development, hardware/software co-design, and test automation, with responsibility for building reliable, maintainable code that interfaces directly with physical systems, sensors, and instrumentation.
The ideal candidate is comfortable writing production-quality code, working with version-controlled repositories, participating in regression testing activities, and collaborating closely with hardware, firmware, and systems engineering teams.