Software Engineer, Storage
Backend Engineer · Senior · Full Time
Opens Cursor's application page
Role
What you'll do.
As a Software Engineer on the Storage team at Cursor, you'll own the data layer infrastructure supporting millions of developers using an AI-powered coding platform. This role focuses on designing scalable multi-database architectures, implementing query attribution systems, and managing cache infrastructure for a rapidly growing developer tool. You'll need deep experience with relational databases like PostgreSQL and MySQL at scale, plus proven expertise in database sharding, migration, and operational excellence.
Responsibilities
- Design Next-Generation Data Architecture: Architect and evolve the storage layer into a partitioned, resilient topology supporting millions of concurrent users. Design multi-database strategies that enable rapid scaling while maintaining system reliability and performance across all product surfaces.
- Implement Query Attribution and Guardrails: Build comprehensive query monitoring systems that instrument database queries by service and detect problematic patterns before they reach production. Create review workflows and automated safeguards that prevent performance-degrading queries from being deployed.
- Define Data Store Selection Strategy: Establish clear guidance and golden pathways for engineering teams to select appropriate database engines for their specific workloads. Document tradeoffs between storage solutions and build decision frameworks that eliminate guesswork and standardize infrastructure choices across teams.
- Own Cache Infrastructure End-to-End: Design, deploy, and maintain reliable cache systems including capacity planning, performance optimization, and correctness guarantees. Build patterns and abstractions that allow product teams to leverage caching without managing complexity or worrying about cache invalidation issues.
- Collaborate on Database Operations and Scaling: Partner with infrastructure and product teams to implement database sharding strategies, handle migrations, and manage service decomposition. Handle backups, disaster recovery, monitoring, and capacity planning with proactive operational excellence.
- Drive Infrastructure Standards and Best Practices: Establish monitoring frameworks, alerting systems, and performance baselines for the storage infrastructure. Create documentation, runbooks, and training materials that enable other engineers to work effectively with storage systems and troubleshoot issues independently.
Qualifications
What we look for.
Technical
Relational Database Expertise
Deep production experience with PostgreSQL, MySQL, or similar OLTP systems at scale. Proven track record optimizing complex queries, managing indexes, and tuning database performance for high-throughput environments supporting millions of operations.
Database Sharding and Scaling
Hands-on experience designing and implementing database sharding strategies, horizontal scaling patterns, and data decomposition approaches. Demonstrated ability to handle migration challenges and maintain consistency during infrastructure evolution.
Cache and Storage Systems
Practical expertise with caching layers (Redis, Memcached, or similar), understanding cache invalidation strategies, and implementing reliable cache infrastructure. Knowledge of tradeoffs between different storage engines and caching approaches for various workload patterns.
Systems Design and Architecture
Strong systems design fundamentals with ability to architect resilient, scalable distributed systems. Experience designing for fault tolerance, consistency, availability, and operational simplicity in production environments.
Monitoring and Observability
Proficiency building and implementing comprehensive monitoring, alerting, and observability systems for databases and infrastructure. Experience using APM tools, query profilers, and performance analysis to identify and resolve bottlenecks.
Education
Bachelor's Degree in Computer Science or Related Field
Formal education in Computer Science, Computer Engineering, or equivalent practical experience demonstrating strong foundational knowledge in algorithms, data structures, and system design principles.
Experience
5+ Years Backend/Infrastructure Engineering
Minimum five years of professional software engineering experience with significant focus on backend systems, database architecture, or infrastructure engineering at scale.
Production Database Operations
Proven experience tackling real production challenges including database troubleshooting, performance optimization, incident response, and capacity management in high-traffic environments.
Cross-Team Infrastructure Collaboration
Track record of working effectively with multiple engineering teams to design and implement shared infrastructure. Demonstrated ability to communicate complex technical concepts and build consensus around architectural decisions.
Skills
Required
PostgreSQL
Advanced proficiency with PostgreSQL including query optimization, indexing strategies, configuration tuning, and operational management at scale.
MySQL/MariaDB
Deep experience with MySQL or MariaDB including understanding of storage engines, replication, high availability configurations, and performance tuning.
Database Sharding and Horizontal Scaling
Hands-on experience implementing partitioning strategies, managing shard keys, and handling distributed query execution across sharded datasets.
Redis or Memcached
Practical expertise deploying and operating distributed cache systems, implementing cache strategies, and debugging cache-related issues in production.
SQL Performance Tuning
Expert-level ability to analyze query execution plans, identify bottlenecks, and optimize slow queries. Proficiency with database profiling tools and query optimization techniques.
Backend Programming Languages
Proficiency in one or more backend languages such as Python, Go, Java, Rust, or Node.js for building infrastructure tooling and systems.
Distributed Systems Design
Strong understanding of distributed system principles including consistency models, fault tolerance, replication, and consensus mechanisms.
Preferred
Experience with Database Migration and Decomposition
Nice to haveHands-on experience managing database migrations, service-oriented architecture transformations, or moving data between systems with minimal downtime.
Kubernetes and Container Orchestration
Nice to haveFamiliarity with Kubernetes or similar container orchestration platforms for managing database workloads and infrastructure automation.
Infrastructure as Code (Terraform, CloudFormation)
Nice to haveExperience using Infrastructure as Code tools to define, version, and manage database infrastructure and configuration changes.
Time-Series or Specialized Databases
Nice to haveExperience with specialized database systems such as ClickHouse, TimescaleDB, Elasticsearch, or other purpose-built data stores for specific workload patterns.
Incident Response and On-Call Experience
Nice to haveTrack record of effectively responding to production database incidents, performing root cause analysis, and implementing preventive measures to avoid recurrence.
AI/ML Infrastructure or Developer Tools
Nice to haveExperience building infrastructure for AI/ML systems, developer tools, or platforms serving large developer communities. Familiarity with challenges unique to AI-powered applications.
Tech stack
Languages
Frameworks
Databases
Tools
Other
Compensation
Pay and benefits.
Base·USD 180,000 – 280,000
Equity·Stock options
Benefits
High-Impact Infrastructure Role
Own the storage layer serving millions of developers using Cursor's AI-powered coding platform. Your work directly enables faster shipping, improved reliability, and explosive platform growth across all product surfaces.
Flat Organization and Autonomy
Work in a talent-dense, small team with minimal hierarchy. Enjoy significant autonomy to design solutions, make architectural decisions, and execute on high-leverage problems with direct input on company direction.
Cutting-Edge AI Developer Tools
Build infrastructure for next-generation AI-powered developer tools. Work on systems that are transforming how millions of programmers write code and collaborate with the latest AI and automation technologies.
Growth and Learning Opportunities
Join a rapidly growing company where you'll tackle increasingly complex scaling challenges. Continuous opportunity to expand expertise in distributed systems, database architecture, and infrastructure at scale.
Collaborative Engineering Culture
Work with passionate, creative engineers who value truth-seeking debate and shipping code. Participate in a culture that encourages spirited discussion, welcomes crazy ideas, and celebrates rapid iteration.
Process
Interview steps.
- 01
Technical Screening
Two to three short technical interviews focused on systems design, database architecture, and practical problem-solving. Expect discussions around your experience with database sharding, scaling challenges, and infrastructure decisions you've made in production environments.
- 02
Onsite Interview
Full-day onsite visit to Cursor's San Francisco office. Participate in a hands-on small project demonstrating your storage architecture and systems design thinking. Engage in technical discussions about infrastructure design philosophy, scalability approaches, and the future of Cursor's data layer.
- 03
Team Meeting
Meet with members of the Storage team and cross-functional engineering partners. Discuss how you approach collaboration on shared infrastructure, handling competing priorities, and driving consensus around architectural decisions across multiple teams.
Full posting
Original listing.
Our mission is to automate coding. The first step in our journey is to build the best tool for professional programmers, using a combination of inventive research, design, and engineering. Our organization is very flat, and our team is small and talent dense. We particularly like people who are truth-seeking, passionate, and creative. We enjoy spirited debate, crazy ideas, and shipping code.
About the Role
As a Software Engineer on the Storage team at Cursor, you'll own the data layer that underpins every product surface: the databases, caches, and the strategy for how teams provision, query, and scale their data stores.
Millions of developers depend on Cursor every day, and the future of our storage architecture is one of the highest-leverage problems at the company: get it right, and every team ships faster, every product surface gets more reliable, and Cursor can scale to meet explosive demand. You'll design and execute the path to a robust, multi-database topology built for that growth.
Example projects include...
Designing the next-generation data architecture: evolving our storage layer into a partitioned, resilient topology that keeps pace with Cursor's rapid growth.
Building query attribution and guardrails: instrumenting every database query by service, catching bad patterns before they hit production, and making it impossible to ship problematic queries without review.
Defining the "when to use what" strategy for data stores: creating clear guidance and golden pathways so every team picks the right engine for their workload without second-guessing.
Owning cache infrastructure end-to-end: reliability, capacity planning, and patterns that let product teams move fast without worrying about cache correctness.
You may be a fit if
You have deep experience with relational databases at scale, especially Postgres, MySQL, or similar OLTP systems.
You've tackled database sharding, migration, or decomposition problems in production environments.
You understand the tradeoffs between different storage engines and can help teams make the right choices for their workloads.
You care about operational excellence: backups, monitoring, query performance, and capacity planning are things you think about proactively.
You have strong software engineering fundamentals and enjoy building systems that other engineers depend on.
Applying
If there appears to be a fit, we'll reach out 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
Redirects to Cursor's application page.
Other roles
More at Cursor.
Field Engineer, Life Sciences
Mid
Field Engineer - India
Mid
Engineering Manager, Agent & Product Security
Manager
Engineering Manager, ML
Manager
RVP, Field Engineering, Public Sector
VP