Principal Instrumentation Software Engineer

STARDUSTX MATERIALS INC.
San Jose, CA, United States
9 days ago
Apply on www.indeed.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Part-time (≤ 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$249,600.0 - $312,000.0
Working hours
Regular working hours
Job source

Tech stack

Computer-Aided Design Application Programming Interfaces (APIs) Automation of Tests C++ (Programming Language) Configuration Management Computer Engineering Software Debugging Firmware Field-Programmable Gate Array (FPGA) Graphical User Interface Hardware Design Monitoring of Systems
+19 more
Python (Programming Language) NumPy Software Architecture Qt (Software) Rapid Prototyping Process Real-Time Operating Systems Release Management Scientific Computating SciPy Software Engineering Software Systems System Testing Systems Integration Data Processing Multithreading PIC Microcontroller Event Driven Architecture Information Technology Software Version Control

Job description

We are seeking an experienced software engineer to lead software and firmware development for a novel scientific instrumentation platform. This individual will assume technical ownership of the instrument’s software architecture, integrating custom electronics, commercial hardware, data acquisition, instrument control, experimental automation, and data processing into a reliable, extensible system.

The position combines hands-on development with technical leadership, working closely with scientists, electrical and mechanical engineers, and external equipment manufacturers. As the company’s founding software engineer, the successful candidate will establish development practices and architecture while helping guide the instrument from research prototype toward deployment. The role is expected to grow into leadership of an expanded software engineering team.

Principal Responsibilities

  • Instrument Control and Software Architecture

Evaluate, maintain, improve, or replace existing instrument-control software and firmware, including potentially undocumented legacy code. Design a modular, maintainable software architecture integrating commercial and custom hardware. Develop unified instrument-control interfaces, including an operator GUI, hardware monitoring, diagnostics, calibration, and configuration management. Work with equipment manufacturers to integrate their products through APIs, SDKs, and other communication interfaces.

  • Embedded Systems and Hardware Integration

Develop firmware and control software for custom electronics in collaboration with PCB designers and electrical engineers. Implement hardware communication, synchronization, triggering, and timing-sensitive operations. Support hardware commissioning, troubleshooting, and integration of new instrument subsystems, including sensors, power supplies, motion controls, and data acquisition electronics.

  • Measurement Automation and Instrument Safety

Develop flexible experimental automation tools, including a user-accessible scripting framework for defining and executing custom measurement sequences. Implement instrument-state management, operating limits, fault detection, and recovery procedures, with appropriate safeguards in close collaboration with scientific team members.

  • Scientific Data Processing

Develop software for acquisition, storage, visualization, and analysis of complex, high-volume, multidimensional scientific datasets. Collaborate with scientific staff to implement custom analysis and processing algorithms. Ensure efficient data handling, reproducibility, and preservation of experimental metadata.

  • Software Engineering and Technical Leadership

Establish software engineering standards, including version control, documentation, automated testing, release management, and system validation. Coordinate software-related activities with external contractors and hardware manufacturers. Work with technical leadership to establish development priorities and long-term software strategy, and eventually assist in recruiting and leading additional engineers.

Requirements

  • Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, Physics, or a related discipline, or equivalent professional experience.
  • Approximately 5+ years of relevant experience in scientific instrumentation, embedded systems, industrial automation, or other hardware-intensive software development. Demonstrated ability is more important than years of experience.
  • Strong proficiency in C++ and Python, including development and maintenance of substantial software systems.
  • Demonstrated experience with hardware/software integration, device communication, instrument control, and manufacturer APIs or SDKs.
  • Experience with embedded programming, multithreading, asynchronous or event-driven systems, and timing-sensitive operations.
  • Experience designing software architectures and developing graphical user interfaces for technical applications.
  • Familiarity with modern software engineering practices, including testing, version control, debugging, and documentation.
  • Ability to independently investigate unfamiliar hardware and legacy software, troubleshoot complex systems, and collaborate effectively with multidisciplinary engineering teams.

Preferred Qualifications

Experience with scientific or analytical instruments, including microscopy, spectroscopy, particle detection, or precision measurement systems, is particularly desirable. Additional valuable experience includes Qt/PySide GUI development; microcontroller firmware and real-time operating systems; FPGA-based systems; high-speed data acquisition and precision timing; scientific computing with NumPy/SciPy; distributed instrument-control frameworks; and development of user-programmable experimental automation.

Experience transitioning prototype instruments into reliable scientific platforms, or serving as a technical lead on multidisciplinary engineering projects, would be especially advantageous.

Ideal Candidate

The ideal candidate combines strong software engineering fundamentals with an understanding of physical instrumentation and experimental science. They are comfortable working directly with unfamiliar hardware, developing new capabilities in an evolving research environment, and balancing rapid prototyping with long-term reliability.

Above all, we seek a technically independent, collaborative engineer capable of taking ownership of a complex instrument’s software ecosystem and developing it into a robust, maintainable, and extensible platform.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.indeed.com
Prepare application

Good distractions

Loading talks and stories from around this role…