Software Engineer III

Your role
At Montana Instruments, the Software Engineer III is an experienced software professional responsible for the design, architecture, development, integration, and validation of software systems used in advanced scientific instrumentation and cryogenic technologies. As a key contributor within multidisciplinary project teams, this role leads development efforts for complex software subsystems, provides technical guidance to less experienced engineers, and drives projects from concept through release. The Software Engineer III balances hands-on software development with technical leadership to deliver innovative, reliable, and maintainable solutions that support Montana Instruments' product roadmap and enable scientific discovery.
To succeed, you will need
Experience & Education
Bachelor's degree in Computer Science, Computer Engineering, Software Engineering, or related technical discipline. Equivalent experience may be considered.
Typically, 5+ years of professional software engineering experience.
Demonstrated experience developing and deploying software products through complete development lifecycles.
Experience designing software architectures and leading development of complex software subsystems.
Experience working with embedded systems and hardware-integrated software applications.
Competencies, Knowledge, Skills, and Abilities
Advanced proficiency in C++ and Python
Strong understanding of Linux/UNIX development environments
Experience designing scalable and maintainable software architectures
Strong knowledge of software engineering principles, object-oriented design, design patterns, and software lifecycle methodologies
Proficiency with source control and collaborative development tools, including Git-based workflows
Experience developing automated testing and validation strategies
Strong analytical, troubleshooting, and debugging skills
Ability to decompose complex technical problems and develop practical engineering solutions
Effective written and verbal communication skills with both technical and non-technical audiences
Ability to mentor junior engineers and provide technical leadership without direct supervisory authority
Preferred Qualifications
Experience with Qt application development
Experience with ArchOS and/or Yocto Linux
Experience with scientific instrumentation, automation systems, or precision electromechanical equipment
Familiarity with communication protocols including USB, Ethernet, CAN, SPI, I²C, Modbus, and RS-485.
Experience with CI/CD pipelines and automated build systems
Experience integrating software with embedded firmware, electronics hardware, vacuum systems, cryogenic systems, or laboratory instrumentation
Background in physics, chemistry, materials science, cryogenics, quantum technologies, or related scientific fields
In return, we offer
- Culture of trust and accountability
- Lifelong learning and career growth
- Innovation powered by people
- Comprehensive compensation and benefits
- Health and well-being
Job location
This role prefers you to work on-site at our office in Bozeman, United States (US). You will be part of a dynamic team and enjoy the benefits of face-to-face collaboration.
Contact information
Talent Acquisition Team: Danielle Ward
Uniting curious minds
Behind every innovative solution, there are people working together to transform the future. With careers sparked by initiative and lifelong learning, we unite curious minds, and you could be one of them.