Software Engineer, Storage
Software Engineer on the Storage team owning the data layer (databases, caches, scaling strategies) that underpins all Cursor products. Design multi-database architectures, build query guardrails, define storage best practices, and own cache infrastructure for reliability and growth.
About the job
Responsibilities
- Own the data layer underpinning every product surface: databases, caches, and strategies for provisioning, querying, and scaling data stores.
- Design and execute a robust, multi-database topology for growth.
- Design next-generation data architecture: evolve storage layer into a partitioned, resilient topology.
- Build query attribution and guardrails: instrument database queries by service, catch bad patterns before production, prevent shipping problematic queries without review.
- Define "when to use what" strategy for data stores: provide clear guidance and golden pathways for teams to select right engine for workloads.
- Own cache infrastructure end-to-end: reliability, capacity planning, and patterns for product teams.
Requirements
- Deep experience with relational databases at scale, especially Postgres, MySQL, or similar OLTP systems.
- Experience tackling database sharding, migration, or decomposition problems in production.
- Understanding of tradeoffs between different storage engines and ability to guide teams on workload choices.
- Focus on operational excellence: backups, monitoring, query performance, capacity planning.
- Strong software engineering fundamentals and enjoyment in building systems other engineers depend on.
Skills
Postgres, MySQL, Oltp, Database Sharding, Database Migration, Relational Databases, Caching, Query Optimization, Capacity Planning, Monitoring, Backups
Similar jobs
Data Engineering jobsBuild and maintain dbt models, Snowflake semantic layers, and ingestion pipelines across business functions while improving data quality and resilience. The role requires 4–6 years of analytics or data engineering experience, strong dbt and SQL expertise, and a quantitative bachelor's degree.
Build and govern quote-to-cash data models and products integrating Salesforce, CPQ, billing, and finance systems. The role requires 5+ years of data engineering experience, strong SQL and Python skills, and expertise in self-service analytics for GTM teams.
Build and scale distributed data platforms, database systems, delivery services, and APIs, with emphasis on reliability, performance, observability, and data integrity. Requires 3+ years of software development experience with distributed systems and databases; Golang experience is preferred.
Oversee the lifecycle, quality, governance, and publication of research data across scientific programs. The role requires 3–5+ years of research data-management experience, strong metadata and FAIR-data expertise, and the ability to collaborate with researchers and engineers.
Own and evolve trusted data models for Marketing and Product use cases, from design and testing through monitoring and documentation. The role requires 3–5 years of data or analytics engineering experience, strong SQL and Python, dbt expertise, and Snowflake or comparable warehouse experience.