Software Engineering Lead, Platform/Ops at Color Genomics
Burlingame, CA, US
Color is a modern health service that applies expertise in robotics, genomics, software and design to a crucial healthcare challenge: preventing or detecting conditions where early knowledge can improve health outcomes and reduce treatment costs. Color’s affordable, clinical-grade genetic tests help people understand their risk for hereditary cancer and heart conditions - knowledge that they and their doctors can use to create personalized health plans.
 
Color's platform/ops engineers enjoy a wide degree of flexibility and tackle a diversity of challenges, depending on the interests of the engineer. Possibilities range from developer productivity (continuous integration, deploy tools, staging/feature environments, dev environment) to core platform (AWS, ansible, network config, database/caching layers, machine learning clusters and async pipelines) to team-wide engineering architecture (evolution to microservices, containers, logging, exception-handling, package/dependency management, core frameworks like Django and Python 3). No background or expertise in biology/genetics is required.
 
This role is primarily engineering with a focus on operations: the entire Color engineering team shares production oncall/operational responsibilities. Those with a background in developer productivity, site-reliability engineering, platform engineering, and similar roles at top engineering companies are encouraged to apply.


You will
  • Improve the quality, reliability, and maintainability of our web services and asynchronous/batch compute jobs
  • Propose and implement changes to our developer workflow and codebase
  • Help the entire Color engineering team improve our speed of execution without compromising reliability or safety
  • Drive team-wide efforts to propose and upgrade to new language versions and web frameworks. Make it easy for developers to deploy/manage/test microservices.


Projects you might tackle include
  • Implement configuration-as-code by porting home grown release and config management to Ansible, Chef, Puppet, and/or Terraform.
  • Lead us to separate our codebase and services into more loosely coupled components and microservices.
  • Evaluate and set up an internal build system that handles both internal components and external dependencies.
  • Speed up our continuous integration by porting it to Docker, parallelizing, decoupling independent components, or anything similar.
  • Work with security consultants to run a penetration test, analyze the results, and propose mitigation steps.
  • Lead internal training for on call firefighting, a la Wheel of Misfortune.
  • Set up white box and black box monitoring, alerts, and escalation for multiple interdependent systems.
  • Build a suite of tools for manually or automatically handling a range of production events. For example, a switch that we could flip to serve assets from application servers instead of a CDN if that CDN goes down...and then detect when the CDN is down and flip it automatically.


You might be a good fit if
  • You’re passionate about using software and technology to help save lives and prevent catastrophic disease. You want to apply your skills in the service of a greater mission.
  • You believe in craft and pragmatism: solving the problem at hand with the best tools for the job. Today we do most of our work in Python (Django) and a few popular JavaScript frameworks (Angular and React). We use go for automated builds, deploys, and staging/feature test environments.
  • You've learned through experience that “all code is liability,” and heavily emphasize reuse of existing packages.
  • You've spent the first years of your career mastering complexity, but are always striving for more simplicity.
  • You are excited about collaborating with scientists/domain experts across Color’s organization
  • You have strong opinions (loosely held) about modern web app architecture, including the benefits/challenges of microservices and client-side frameworks like Angular/React
  • You work best in a collaborative development environment, giving/receiving feedback on code reviews and designs to help the team sharpen its thinking and practices.
  • You are intrinsically motivated, able to execute independently (while being proactive about seeking input from colleagues).
  • You're confident coding in Python and an expert at managing and developing in cloud environments like AWS, with a variety of datastores, backends, and caching layers. You have experience with modern web frameworks like Django. You're experienced with microservice stacks, containers, and have some experience using go.
  • You enjoy teaching other engineers about operations and infrastructure.