Summary
✨ AI‑Generated
An experienced software engineer is sought to design, architect, develop, integrate, and validate complex software systems supporting advanced scientific technologies. The role combines hands-on engineering with technical leadership, mentoring, and responsibility across the development lifecycle. A bachelor's degree or equivalent experience and typically 5+ years of professional software engineering experience are expected.
Highlights
Experienced engineering role combining hands-on development with technical leadership, multidisciplinary collaboration, and ownership of complex software systems from concept through release.
Description
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.
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 Development experience with programming languagesSQL database or relational database skills
This is an onsite role in Bozeman, Montana.
Montana Instruments will not be sponsoring visas for this position.
Local candidates will have first preference.