Senior Windows Software Engineer - NREC
Carnegie Mellon University · Pittsburgh, PA · 2 mo ago
EngineeringFull-time
About the role
The Senior Windows Software Engineer will lead and contribute to the design, development, and integration of Windows-based software systems that interface with laboratory instruments supporting advanced robotics technologies. This role involves working on a diverse range of projects, including those involving military/defense applications and/or sponsored by military/defense entities.
Responsibilities
- Developing Windows-based applications and services that interface directly with laboratory instruments
- Building and maintaining software layers that expose instrument protocols, functions, and operations to the broader system
- Integrating with a variety of communication standards, including Modbus/TCP, Ethernet/IP, and EtherCAT
- Working with both modern and legacy codebases, including reverse-engineering or refactoring older components when necessary
- Collaborating with scientists, engineers, and product teams to understand instrument behavior and translate it into robust software interfaces
- Diagnosing hardware/software integration issues and develop reliable, repeatable solutions
- Writing clean, maintainable code and contributing to long-term architecture decisions
- Participating in testing, validation, and documentation to ensure high-quality instrument integrations
- Learning and applying scientific concepts relevant to instrument operation, with support from domain experts
- Supporting a team culture that values curiosity, knowledge-sharing, and supportive collaboration
Requirements
- Bachelor’s degree in Computer Science, Engineering, Physics, or a related technical field
- At least 3 years of experience developing Windows applications or services using .NET/C#
- Familiarity with C++ and Python for tooling, integration, or performance-critical components
- Experience working with industrial or hardware-communication protocols (e.g., Modbus/TCP, Ethernet/IP, EtherCAT); deep expertise not required - willingness to learn is valued
- Strong debugging skills across software, hardware interfaces, and network communication layers
- Clear, effective technical communication skills
- Ability to work with and modernize legacy codebases when needed
- Ability to work independently, ask questions and seek input when needed
- Commitment to a respectful and supportive team environment
Qualifications
- Experience with instrument control, automation systems, or lab equipment
- Familiarity with serial communication, device drivers, or low-level hardware interfaces
- Exposure to real-time systems or deterministic communication protocols
- Experience writing APIs or SDKs for hardware devices
- Background in scientific computing, laboratory workflows, or experimental systems
- Interest in monitoring or supporting teammates as the team grows
Other Requirements
- Successful pre-employment background check
- Willingness to travel domestically and be willing to work outside of normal business hours as needed
Pay and Benefits
This position offers a competitive salary and a comprehensive benefits package, including:
- Comprehensive medical, prescription, dental, and vision insurance
- A generous retirement savings program with employer contributions
- Tuition benefits
- Flexible vacation and holiday time
- Life and accidental death and disability insurance
- A free Pittsburgh Regional Transit bus pass
- Access to family concierge services
- Access to a fitness center
- And much more!
Equal Opportunity Employer
Carnegie Mellon University is an Equal Opportunity Employer/Disability/Veteran. We welcome applications from all qualified individuals.