Experience

2023-present | Instrumental - Staff Software Engineer

  • Building the webapp backend for an enterprise data science and machine learning platform
  • Interim Team Lead/Manager for the webapp backend team
  • Tech lead for interdisciplinary engineering projects
  • Improving maintainability and velocity by redesigning core schemas and abstractions
  • Planned and executed migration from a legacy interface description language to Protobuf
  • Onboarding new engineers and maintaining training documentation
  • Scaling by strategically moving backend components to AWS lambda
  • Designed and built tool for bulk importing/exporting customer data

2021-2023 | Instrumental - Senior Software Engineer

  • Designed a pipeline that fetches/processes/summarizes millions of points of data per minute
  • Made a lambda-based s3 virus scanning solution optimized using lambda extensions
  • Redesigned core abstractions to remove complex joins and improve application performance
  • Built core abstractions and testing scaffolds to improve engineering velocity
  • Implemented generic wrappers for paginating database queries using Akka Streams and JOOQ
  • Improved security with automated dependency checks/update PRs

2019-2020 | Strateos (formerly Transcriptic) - Software Engineer L4

  • Architected and built a workflow engine for factory automation that manages parallel execution across hundreds of robots
  • Integrated robots into an automated medicinal chemistry platform by writing control software and ETL pipelines
  • Instrumented core services with event monitoring for improved performance and root cause analysis
  • Prototyped a microservice-based rearchitecture of backend components using Play Framework
  • Migrated build and deployment to Gradle, Jib, Docker, and Kubernetes
  • Wrote a library for automatic compile-time deserializer derivation

2017-2019 | Transcriptic - Scientific Software Engineer

  • Designed and developed an "SDK" for scientific workflows that:
    • Provides a python framework for specifying scientific intent
    • Compiles declarative workflows into robot instructions
    • Validates scientific integrity against available devices
  • Built scheduling and constraint modeling tools to reduce experiment execution time
  • Maintained Autoprotocol, an open standard for specifying scientific workflows
  • Wrote drivers for laboratory instruments
  • Gathered external customer requirements, refined and delegated tasks, and coordinated acceptance tests
  • Maintained CI, deployment, and network infrastructure

2016-2017 | Transcriptic - Research Associate

  • Engineered data analysis pipelines for monitoring hardware performance
  • Wrote scripts to automate laboratory instruments
  • Prepared standard operating procedures for the operations team

2014-2015 | UC Merced - Research Assistant

  • Developed climate and ecological simulation models
  • Analyzed geospatial species range and climate data
  • Characterized regional morphological variation in Pinus spp.

Skills

  • languages: Scala • Bash/Fish • Python • Rust • Lua • Vimscript
  • technologies: PostgreSQL • Elasticsearch • Play Framework • Akka • JOOQ • Flask • RabbitMQ • Shapeless • Datadog • CircleCi
  • aws: ECS • EC2 • Lambda • S3 • SQS
  • build: SBT • Gradle • Jib
  • deployment: Docker • Terraform • Jenkins • Ansible • Heroku • Kubernetes • VirtualBox

Education

2010-2014 | Willamette University - B.A. Biology (chemistry minor)

  • Hybridization in Camassia: a synthetic approach using geometric morphometrics, microsatellites, and morphology

Publications