Software Engineer II

Montana InstrumentsBozeman, MT
391d

About The Position

The Software Engineer II plays a crucial role in developing advanced scientific instruments and software applications for the quantum industry. This position involves working within a multidisciplinary team to design, implement, test, and maintain software systems that enhance product performance, usability, and reliability. The engineer will support new product introductions, custom product development, and sustaining engineering efforts, focusing on creating innovative solutions that advance scientific research.

Requirements

  • Bachelor's degree in Computer Science, Computer Engineering, or a related field or equivalent experience.
  • 2+ years relevant work experience.
  • Experience with embedded software systems design and maintenance.
  • Proficient in C++ and Python.
  • Knowledge of UNIX/Linux systems.
  • Familiarity with version control systems (e.g., SVN, Git).
  • Understanding of embedded development, including cross-platform considerations.
  • Strong problem-solving skills and ability to debug systems.
  • Good communication skills for articulating technical information to team members.
  • Action-oriented and self-motivated, able to manage multiple tasks with strong prioritization skills.

Nice To Haves

  • Familiarity with common communication protocols such as USB, RS-485, SPI, I2C, and CAN.
  • Experience with software testing frameworks and tools for embedded systems, including unit testing, integration testing, and test automation.
  • Experience in developing software for scientific or precision applications.
  • Background in or familiarity with fields such as physics, chemistry, or materials science.
  • Understanding of hardware design principles and ability to interpret schematics.

Responsibilities

  • Design, develop, and maintain software systems for embedded and application-level environments.
  • Collaborate with cross-functional teams to define system requirements and ensure designs integrate into overall system architecture.
  • Participate in the software development lifecycle from design to deployment and testing.
  • Contribute to code reviews to ensure best practices and high standards.
  • Troubleshoot and resolve technical issues.
  • Document design processes and key decisions for team knowledge sharing.
  • Communicate project progress and technical findings to internal stakeholders.

Benefits

  • Diverse and inclusive work culture that values unique perspectives and fosters innovation.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service