Software Engineer, ML Systems
Harmonic · Palo Alto, CA · 3 wk ago
On-siteEngineeringFull-time
About The Role
We are looking for a pragmatic, Software Engineer to own the productionization of our research pipelines. This is an implementation-heavy role designed for an engineer who can take a nascent research idea and build the robust, scalable machinery required to prove it at scale within our cloud infrastructure.
Key Responsibilities
- Pipeline Engineering: Build and manage end-to-end ML pipelines (ETL and automated evaluation) that are the bedrock of our RL research.
- Bottleneck Resolution: Identify and refactor inefficient research code. You act as the primary engineer ensuring that a promising idea reaches its full potential through scalable code.
- Standardization: Establish best practices for versioning, experiment tracking, and CI/CD for ML models to ensure reliability.
- Cloud Infrastructure & Observability: Manage the deployment and scaling of workloads on Kubernetes. Implement the tooling and telemetry that allows the team to understand agent behavior and training health at a glance.
Minimum Qualifications
- BS in Computer Science, a related technical field, or equivalent industry experience
- 2+ years of relevant industry experience
- Expert-level Python skills and a disciplined approach to software engineering (testing, versioning, and modular design)
- Experience building and managing end-to-end ML pipelines in a production or research-intensive environment
Preferred Qualifications
- Full-stack ML experience: Comfortable moving from data engineering to model debugging
- Experience refactoring research-grade code into high-quality, scalable production packages
- Proven ability to design and implement complex data-loading and evaluation systems for non-deterministic models
- Experience with workflow orchestration tools (e.g., Kubeflow, Airflow, or Metaflow)
- Experience managing large-scale experiments on cloud providers (AWS, GCP, or Azure)
- Proven track record collaborating directly with researchers to translate algorithmic requirements into engineering roadmaps
- Hands-on experience with containerization (Docker) and orchestration (Kubernetes)