
Software Engineer II, Lab Software
Job description
About the role
This position centers on owning the backend systems that make it possible for scientists to run experiments with consistency and reliability. You will be responsible for designing services that are both resilient and well-defined, establishing clear contracts for how lab data moves and is processed. The work you do will ensure that these interfaces remain stable and perform even when the demands of scientific workloads increase significantly. You will partner closely with biologists and machine learning engineers to understand their needs and translate them into robust technical solutions. The role requires a mindset focused on durability, correctness, and the long-term maintainability of critical infrastructure. You will operate at the intersection of software engineering and scientific computing, where your code directly supports discovery. Success in this role means delivering systems that abstract complexity without sacrificing transparency for the end users in the lab.
Location: Cambridge
Engagement: Full-time
Compensation: Base 180,000 USD; early-stage equity; bonus potential; U.S. benefits for full-time employees
What you'll do
You will design and build high-performance APIs and UI hooks that connect experiments to AI-driven production factories, ensuring low latency and high throughput. This work involves creating endpoints and interfaces that allow seamless interaction between the physical lab environment and analytical computing platforms.
Your responsibilities include developing and maintaining data schemas and storage layers that can evolve without breaking existing functionality. You will manage diverse data systems, including SQL, NoSQL, and vector databases, to handle scientific workloads with efficiency and precision.
Diagnosing and resolving latency and throughput issues is a critical part of your daily work. You will optimize analysis pipelines to keep them fast and dependable, even when processing large-scale scientific data that grows rapidly over time.
You will orchestrate labflows and instrument integrations using cloud services and container-driven workflows, automating complex sequences of operations. This includes automating data transfer and ensuring bi-directional communication between systems that were previously siloed.
Collaboration with ML researchers forms a core part of the role. You will align data pipelines and model serving infrastructure with the specific requirements of experimental science, ensuring that models are fed clean and timely data.
Shipping reliable features requires strict version control, testing, and deployment practices that you will uphold rigorously. You will review code and designs with cross-functional teams to maintain clarity, correctness, and consistency across the codebase.
Automating deployment and infrastructure is a key duty, where you will use cloud primitives and infrastructure as code approaches to manage production-grade systems at scale. This includes writing infrastructure definitions that are testable and repeatable.
You will implement monitoring and observability strategies to ensure that issues are detected early and can be resolved before they impact the scientists relying on the systems.
The role involves working with complex workflows that require coordination between multiple services and data stores. You will ensure that these workflows are resilient to partial failures and can recover gracefully.
You will contribute to the design of data models that support both transactional needs and analytical queries, balancing the requirements of speed and flexibility.
Your work will include documenting system behavior and interfaces so that other engineers and scientists can understand and use the tools you build effectively.
You will participate in on-call rotations to respond to incidents, applying your problem-solving skills to restore service and investigate root causes quickly.
Requirements
A Bachelor's or Master's degree in Computer Science, Engineering, or a related discipline is required for this position.
You must bring 2 to 5 years of experience building and operating large-scale systems in production, demonstrating a track record of handling complexity.
This role demands a strong backend focus, with the ability to tackle difficult technical challenges that arise in distributed environments.
Full stack development experience is essential for this role. You will work with technologies such as React, TypeScript, TailWind, FastAPI, SQL/NoSQL, Python, and Pydantic to build complete solutions end to end.
Hands-on experience using AI coding assistants to drive productivity is a requirement. You should be able to leverage these tools to enhance development speed and maintain high code quality standards.
Clear communication skills are vital for success. You will work effectively with scientists, data engineers, and product teams, explaining complex ideas to diverse audiences without losing nuance.
You will solve complex backend problems while balancing trade-offs between scalability, performance, and maintainability, making decisions that support both current needs and future growth.
This role requires a pragmatic approach to system design and implementation, where you prioritize delivering working software that users can trust.
You must be comfortable working in an environment where requirements can shift quickly as scientific questions evolve and new experimental methods are developed.
Nice to have
A background in laboratory software for life sciences or material sciences is valuable, as it provides context for the data and workflows you will encounter.
Experience with laboratory devices, robotics, or hardware drivers is a bonus, since understanding the constraints and capabilities of physical instruments is helpful.
Experience with orchestration systems such as Airflow, Prefect, Temporal, or Dagster is advantageous for managing complex scientific workflows and scheduling.
Hands-on knowledge of AWS, Kubernetes, containerization, infrastructure as code, and CI/CD pipelines is desirable, including writing Terraform scripts and configuring GitHub Actions.