Design, implement, and maintain software used to control and interface with scientific and experimental instruments, including custom control, readout, and related hardware subsystems. Develop and maintain Python‑based APIs, libraries, and tools used by experimentalists and automation workflows, while contributing supporting components in systems‑level languages as needed. Translate hardware capabilities, communication protocols, and system constraints into clean, well‑factored software abstractions with clear ownership boundaries. Develop software for instruments that communicate over proprietary, non‑VISA protocols, while also supporting standardized interfaces (e.g., VISA/SCPI) where applicable. Apply software quality practices to ensure instrument‑control software is reliable, testable, and maintainable, including unit testing, debugging, and validation. Collaborate closely with hardware, firmware, and system software engineers during instrument bring‑up, integration, and debugging. Contribute to shared libraries, patterns, and frameworks related to instrument control to improve consistency and long‑term maintainability. Embody our Culture and Values Master's Degree in Computer Science, Software Engineering, Mathematics, Physics, Physical Sciences, or related field AND 1+ year(s) software industry experience, including research and/or development of commercial software, compilers, scientific computing applications, or multi-component systems OR Bachelor's Degree in Computer Science, Software Engineering, Mathematics, Physics, Physical Sciences, or related field AND 2+ years software industry experience, including research and/or development of commercial software, compilers, scientific computing applications, or multi-component systems OR equivalent experience. 2+ years programming experience in related programming languages. 1+ year(s) experience in a collaborative environment. This position requires verification of citizenship or other protected status to meet legal requirements of the role. If the role requires US citizenship, as indicated in the job description, a valid US passport must be provided to verify your citizenship. If the role requires US Person status, as indicated in the job description, US citizens must provide a valid US passport for verification while lawful permanent residents, refugees, and asylees may complete this verification using green cards or other status documents, as applicable. Strong proficiency in Python and at least one systems‑level programming language (C, C++, C#, or Rust), including designing maintainable, extensible software using sound object‑oriented and modular design principles, and the ability to work effectively across language boundaries. Demonstrated ability to design, implement, and deliver software at the feature or component level, working from defined requirements and collaborating with partners to clarify scope, constraints, and tradeoffs. Experience developing software that interfaces with hardware or network‑connected external systems, such as scientific instruments, embedded systems, or custom services, including working with both standardized (e.g., VISA/SCPI) and proprietary communication protocols. Ability to apply software quality and verification practices, including unit testing, debugging, validation, and (where applicable) CI/CD or hardware‑in‑the‑loop testing, to ensure correctness and reliability. Experience developing instrument control, measurement, or experimental automation software, including familiarity with data acquisition systems, measurement pipelines, and associated metadata or data workflows. Experience designing or contributing to APIs or Python bindings layered over systems‑level code. Background in physics, quantum computing, or other applied scientific or engineering domains. Citizenship and Citizenship Verification: This role may require access to export‑controlled information under applicable regulations (e.g., ITAR, EAR). Eligibility will be assessed in accordance with legal requirements. Ability to leverage AI tools to drive innovation and efficiency (e.g., performance modeling and analysis, research gathering, day to day task automation). Familiarity with designing and building AI agents/copilots that assist with design, development, experiment setup, log triage, report generation, specification generation, and knowledge retrieval (e.g. instrument manuals, design docs).
QUANTUM ROLE CONTEXT | Appended by Quantum.Jobs v2
Role context:
This role type exists to establish robust software interfaces between experimental hardware components and high-level control applications within scientific environments. Positioned between physical instrumentation engineers and experimental software users, the position serves as an essential software engineering link. It ensures that complex physical measurement systems, custom readout equipment, and control electronics are reliably abstracted into manageable software interfaces. By standardizing control logic and data pipelines, professionals in this function enable scientific teams to conduct repeatable experiments efficiently while maintaining system stability and software maintainability across evolving hardware revisions.
Quantum ecosystem relevance:
The role supports the quantum ecosystem by providing the underlying instrument control and hardware abstraction layers required for experimental quantum hardware operations. Quantum computing development relies heavily on precise electronic control, signal processing, and low-latency measurement workflows to manipulate physical qubits. By engineering reliable software drivers, APIs, and automation tools, this role enables researchers to interact with physical testbeds seamlessly. This software infrastructure accelerates the hardware bring-up process, improves data collection consistency, and provides the foundational control stack necessary for scaling quantum research setups into functional systems.
Capability signals:
- Expertise in bridging low-level hardware protocols with high-level software application interfaces
- Proficiency in developing cross-language software abstractions for complex scientific instruments
- Demonstrated ability to implement automated test suites and validation pipelines for hardware
- Experience orchestrating data acquisition workflows and experimental measurement pipelines in technical environments
- Strong collaboration with interdisciplinary engineering teams during system bring-up and integration