Software Engineer, Models
Job description
About the role
This role designs and builds the data infrastructure that lets network engineers' diagnostic reasoning be recorded and used to train models. It bridges network operations and machine learning by creating a durable, queryable record of network state and expert decisions. Success is measured by engineers independently generating training data and model benchmarks improving as a result.
Software engineers turn product ideas into working code. Engineers work in small teams, review each other's work, and ship in small batches. Most teams follow agile practices such as sprints and daily standups. Engineers also write tests, fix bugs, and improve performance. The field values clear communication as much as technical skill. Engineers spend part of every week on planning, code review, and debugging, not just writing new code. The ability to explain a technical decision in plain words separates strong engineers from the rest.
Key facts
-
Location: USA
-
Engagement: Full-time
-
Team: works closely with two research engineers and product leadership
- Degree: a degree requirement is stated
What you'll do
Observe network engineers in their daily work during the first 30 days to understand how diagnostic reasoning appears in real incidents and what telemetry, configs, and support data exist. Capture that understanding as a design for a structured annotation interface and a durable data pipeline that records network state and expert reasoning.
Requirements
Have built backend systems end-to-end and made real architectural decisions with real consequences, including regrets about data storage choices that taught you how to design better.
Bring deep customer empathy learned from spending early weeks observing network engineers, shaping future decisions based on how they think and work and how tools are actually used.
Care about people using the tools you built, because network engineer adoption and satisfaction directly determines the quality of training data, model improvement, and the path toward autonomous networks.
Practical notes
You will work with TypeScript, React, Go, GraphQL, Kafka, and Postgres in a San Francisco based environment. The role requires close partnership with research engineers and product leadership, and adherence to the 30, 60, and 90 day delivery milestones. Typical interview steps
Hiring for engineering roles usually starts with a recruiter screen, followed by one or two technical rounds. Candidates often solve a coding problem, discuss past projects, and answer system design questions. Some loops include a take-home task. Final rounds typically cover team fit and give candidates a chance to ask questions. Interviewers look for how you break down an unfamiliar problem, not just whether you reach the answer. Practicing a few problems aloud and reviewing your own past projects are the best preparation.
Good to know
The role focuses on data infrastructure and human centered design in a network operations context. Core tools include TypeScript, React, Go, GraphQL, Kafka, Postgres, and ClickHouse. Success depends on real world adoption by network engineers and measurable movement in model performance.
Questions to ask
Worth asking in any interview: how the team measures success, who the role works with daily, what the onboarding looks like, and what the company is trying to achieve this year. Asking what past hires did well is a strong final question. Keep the list short and pick the questions that matter most to you.
Career growth
Engineering careers usually progress from individual contributor to senior, staff, and principal levels. Some engineers move into management and lead teams of five to twenty people. Others stay on the technical track. Growth follows demonstrated impact, not tenure alone. A typical engineering ladder has clear levels with defined expectations for scope, quality, and mentorship. Moving up usually requires owning outcomes end to end rather than completing assigned tickets.