Cursor

Software Engineer, ML Data Systems

Full-time · San Francisco
✓ Verified live on the employer's own system · added 203 days ago
Save search
Mid-level · 5+ yrs exp

Requirements

Experience: 5+ years

Skills & tools

DatabricksTroubleshooting
Apply on company site ↗ See your fit → free

Full job description

About the Role

Cursor ships daily. Every release leaves signals behind: telemetry, prompts, completions, agent runs, sessions. Those signals power model improvement, evals, and experimentation.

Data infrastructure is what turns them into something teams can trust.

A lot of systems here started simple so we could move fast. Over time, the constraints change and the "good enough" version becomes the bottleneck. This role owns the full ladder: patch what should be patched, redesign what should be redesigned, ship the replacement, and operate it.

Privacy guarantees are part of correctness. What we can retain and use depends on Privacy Mode and org configuration, and getting that wrong breaks a product promise. We choose work by business impact: what blocks product and model teams today, and what will block them next month.

Sample projects include...

- A core pipeline started as a pragmatic reuse of infrastructure built for something else. It works, but it cannot guarantee properties downstream consumers now need (for example, point-in-time consistency). You design and ship the replacement while keeping the existing system running.

- A new product surface ships without instrumentation. You talk to the team, define what needs to be captured, and wire it through before the absence becomes anyone else's problem.

- Eval coverage drops. You trace it to an instrumentation gap introduced weeks ago by a product change nobody flagged. You fix the gap, add a contract so it cannot recur, and ship the dashboard that would have caught it earlier.

- Multiple consumers depend on overlapping data. You design schema evolution and validation so changes in one place do not silently degrade the others.

- Storage costs rise faster than usage. You decide what is worth keeping, implement retention and compression, and delete what is not.

What we're looking for

We're looking for someone who has built real systems at scale and cares about correctness, cost, and ergonomics.

Strong signals include:

- Deep experience with Spark (Databricks or open-source Spark both count)

- Production experience with Ray Data

- Hands-on ownership of large data pipelines and storage systems

- Comfort debugging performance issues across client instrumentation, streaming, storage, and model-facing workflows, as well as, compute, storage, and networking layers

- Clear thinking about data modeling and long-term maintainability

- You have good judgment about when to patch and when to rebuild

Nice to have

- Experience running or scaling ClickHouse

- Familiarity with dbt, Dagster, or similar orchestration and modeling tools

We're in-person with cozy offices in North Beach, San Francisco and Manhattan, New York, replete with well-stocked libraries.

Applying

If there appears to be a fit, we'll reach to schedule 2-3 short technicals. After, we'll schedule an onsite in our office, where you'll work on a small project, discuss ideas, and meet the team.

#LI-DNI

More jobs at Cursor

Similar jobs near San Francisco

Tell me when more Data Engineer, Machine Learning jobs post near San Francisco We re-check every listing against the employer’s own board — no résumé needed.

Search Software Engineer, ML Data Systems jobs near San Francisco → Browse all live jobs

This posting was published by Cursor on their own careers system and is shown here with a direct link to apply there. Employers: for corrections or removal, contact jobs@veritahire.com.