Senior Software Engineer, AI Evaluation Infrastructure

Turing · Global - Remote · Engineering

Posted 2026-10-20

Apply for this role →

Senior Software Engineer, AI Evaluation Infrastructure

We build the infrastructure that frontier AI labs use to evaluate coding agents and language models: benchmark datasets, agent evaluation runs at scale, and automated task quality checks. You would own features across the stack, from the data model and background jobs to the screens our users work in every day.

This is a role for an experienced engineer who works independently, makes sound tradeoffs, and turns a loosely defined request into something shipped, tested, and safe to leave alone.

What you will do

Design and ship features end to end: data model, API, background workers, and the UI when the change needs it.

Build and improve how agents and models are evaluated: running trials in sandboxed environments, scoring results, and turning thousands of runs into results people can trust.

Improve how benchmark tasks are quality-checked: verifiers, rubric-based and LLM-as-a-judge grading, and deciding whether a task is clear, solvable, and fair to score.

Integrate new models, agents, and benchmarks in a way that generalizes, without a special case for each one.

Keep the system fast and reliable as usage grows: efficient queries, safe migrations, and concurrency that holds up under load.

Review teammates’ pull requests against our engineering guidelines and help keep the codebase consistent.

What you bring

Typically 5+ years building and operating production backend systems, with ownership of at least one service from design through on-call.

Strong Python. Experience with Django (or a similar framework), PostgreSQL, and a task queue such as Celery. What matters most is having run a real system, not knowing a particular framework.

Hands-on experience in LLM evaluation, beyond calling a model API. You understand how a benchmark task is built, how an agent trial is scored, and how results are aggregated and compared. Experience with Harbor, Terminal-Bench, SWE-bench, Inspect, or a similar harness is a strong plus.

Judgment about task quality. You can spot ambiguous instructions, weak or gameable verifiers, leaked answers, and checks that pass for the wrong reason.

Good tradeoffs. You reach for the smallest design that solves the problem, extend what already exists before adding something new, and can explain what you chose not to build.

Ownership. You take a fuzzy request, find the relevant code, ask questions only when the answer changes the design, and finish the job, including migrations, tests, and edge cases users will hit.

Quick adoption of team conventions. You read the written guidelines and your first pull requests already match them in naming, structure, tests, and error handling.

Comfort with a TypeScript and React frontend when a change is visible there. You don’t need to be a frontend specialist.

Clear writing. Your pull request descriptions and design notes explain why, not just what.

Nice to have

Experience running agents in sandboxed or containerized environments (Docker, Kubernetes, or cloud sandboxes such as Modal or Daytona).

Experience with LLM-as-a-judge or rubric-based grading, and with reducing judge bias and noise.

Familiarity with coding agents such as Claude Code, Codex, or OpenHands, and with MCP.

Experience with distributed job scheduling, concurrency limits, or database locking at scale.

Contributions to open-source evaluation or infrastructure projects.

How we work

Written engineering guidelines, applied consistently, with the same review bar for everyone.

Business logic lives in services. Hot paths stay cheap. Lint and tests pass before a pull request is ready.

The same vocabulary in the code, the API, and the UI.

We prefer deleting code to adding it, and simple designs to clever ones.

A strong first month looks like several changes merged with light review, and one area of the system you can change confidently without a guide.

Interview process

A short conversation about a system you built and the tradeoffs you made.

A practical exercise: a focused change in an existing codebase.

A discussion of a flawed benchmark task: what’s wrong with the instruction, the verifier, and the scoring.

A conversation with the team.

Values

Apply for this role →

← Back to all jobs