The Emerald Cloud Laboratory (ECL) enables life scientists to move out of the lab, and to conduct research entirely from a computer. Stepping away from manual completion of experiments at the bench, scientists on the ECL leverage the remote, automated execution of all standard biology and chemistry experiments in Emerald’s industrial lab facilities, working within a software platform for all stages of research workflows, from experimental design to data analysis.
It is our aim at Emerald to build a new technology foundation for the life sciences. On the ECL, it becomes as achievable for a small team of scientists to pursue an ambitious therapeutic R&D initiative as it has become for a small team of capable programmers to develop and deploy a web-based software product.
Platform Engineering at ECL
The Platform Engineer builds the distributed software systems that support the ECL, designing the way in which those systems are safely and scalably deployed in Docker containers on AWS, and contributing to core low-level components of Emerald’s Symbolic Lab Language (SLL) and Experiment Framework. Projects include: building a hybrid object / graph multi-tenant data store that supports describing all standard biology and chemistry experiments in code; managing the deployment of Kubernetes, enabling environment parity between our development and production environments; building a service to safely distribute and execute simulation, analysis, and testing code in SLL; working closely with our Scientific Development team in developing and optimizing data storage, retrieval and search functions in SLL. We’re a small team, which means it is essential for every team member to be ready to take ownership and lead projects.
As an early team member helping to build the Engineering team as well as the product, you will also be encouraged to contribute to the software engineering practices we maintain in our own work, and which we bring to ECL as a whole. We strive to be continually critical of our process, cutting cruft and homing in on performance multipliers (like continuous integration and agile development practices).
Our Tech Stack
Our backend services are written in Go, and deployed on AWS infrastructure in Docker containers, with container orchestration through Kubernetes. Our applications are modern web applications (React / HTML5 / CSS3) running on the desktop (with NW.js) across Windows and Mac OS. Our source code control is on Github, with integration with Travis CI for continuous testing. SLL and the Experiment Framework are written in the Wolfram Language. Our stack is always evolving, and we welcome new ideas and technologies which enhance our ability to deliver incredible software.
The Platform Engineering role operates mostly in Go, AWS (Postgres RDS, S3, EC2, SQS, etc.), Docker, Kubernetes and the Wolfram Language. More broadly, bringing online the first cloud-based biotech lab is an expansive, diverse challenge. A core component of our job is consistently determining the right tools for the job at hand, and diving in to learn these new technologies along the way.
You might resonate with the culture at ECL if …
- You are impressively empathetic. You can argue the rationale you disagree with as convincingly as the one you agree with.
- You are intellectually fearless. Stretching yourself well out of your comfort zone across multiple disciplines is more the rule than the exception at Emerald.
- You are curious. When first-principles reasoning illuminates a path that diverges from the standard assumptions, you feel compelled to see where it leads.
If you would like to apply and learn more, we’d love to hear from you! Please follow the link below, including your resume and, if you like, a brief remark about what you are looking for next and what draws you to ECL and this role. If we see a strong potential match to our current needs and efforts, we will reach out to start a conversation.
Optional but welcome:
A link to your Github account or any projects you are proud of can be especially helpful. With project links, please include a short remark to help us get our bearings.