Staff Software Engineer
Role summary
The Diner Core Availability team is seeking a Staff Software Engineer to design, implement, and operate backend services powering availability search for the core diner experience. This role requires deep expertise in C#/.NET, high-throughput/low-latency systems, distributed caching (Redis), event-driven architectures (Kafka), and database management. You will be a hands-on engineer and technical leader, owning the architecture of availability search services, defining caching strategies, and leading the evolution of event-driven systems. The position emphasizes performance, reliability, and simplicity at global scale, with a focus on making pragmatic trade-offs and using AI tooling to enhance velocity. You will also break down complex initiatives, manage dependencies, and uphold high engineering standards within a remote work environment.
### Who you are
- Strong experience (5+ years) designing, implementing, and operating backend services in C#/.NET
- Proven track record building and scaling high-throughput, low-latency services (e.g., search, recommendation, or other read-heavy systems)
- Deep hands-on experience with Redis and other cache technologies, including key design, eviction strategies, cache invalidation patterns, and multi-layer caching topologies
- Solid understanding of event-driven architectures and Kafka (or similar systems)
- Strong experience with database systems (SQL/NoSQL), including schema design, indexing strategies, query optimization, and handling high-volume read/write workloads
- Strong grasp of distributed systems fundamentals: consistency models, failure modes, circuit breaking, timeouts, retry/backoff strategies
- Experience with observability and performance tuning in production (profiling, capacity planning, latency/throughput trade-offs)
- Comfortable using AI-assisted development tools (for example, to accelerate implementation, test coverage, code reviews, or incident analysis) in a safe and responsible way
- History of acting as a technical leader on a product or platform team: setting direction, influencing roadmaps, and being accountable for significant system outcomes
- Demonstrated bias for action: proactively unblocking teams, building prototypes, driving decisions to closure, and moving complex initiatives forward without waiting for perfect information
- Demonstrated ability to decompose large, ambiguous initiatives into clear technical plans that multiple engineers can execute
- Comfortable working with cross-functional stakeholders (Product, Design, Data, other Engineering teams) to balance technical constraints, user experience, and business impact
- A bias toward data-informed decisions: using metrics and experiments to validate whether changes are improving outcomes
- Experience with search or ranking systems
- Background in reservation or marketplace platforms where availability and matching are core problems
- Familiarity with Kubernetes-based deployments, service meshes, and modern CI/CD pipelines
### What the job involves
- The Diner Core Availability team builds and operates the systems that power availability search for the core diner experience—delivering fast, reliable booking options across our global network
- We serve millions of diners, handle several thousands of searches per second, and operate under strict low-latency and high-reliability requirements. The team owns the end-to-end lifecycle of availability queries: from ingesting upstream changes (inventory, policies, events) through event-driven pipelines, to maintaining highly-optimized in-memory and distributed cache layers, to responding to real-time search requests from web and mobile clients
- We’re looking for a Staff Engineer who applies a deep understanding of the underlying technologies and dependencies to solve problems. They help raise the bar on performance, reliability, and simplicity as we scale availability search at OpenTable
- Technologies you’ll work with include C#/.NET, Redis, in-memory and distributed caches, RESTful APIs, and Kafka-based event-driven architectures (EDA)
- You’ll be both a hands-on engineer and a technical leader: writing code, writing technical design docs, reviewing design docs, and owning solutions end-to-end from design through rollout, observability, and ongoing iteration
- Design, implement, and evolve C#/.NET services and APIs that expose availability information to internal and external consumers
- Own the architecture of availability search services and related caches, ensuring low-latency, high-throughput performance at global scale
- Define strategies for in-memory and distributed caching (e.g., Redis) that balance freshness, consistency, and cost
- Lead the evolution of our event-driven architecture (Kafka) for propagating inventory, configuration, and policy changes into availability systems
- Make pragmatic trade-offs between delivery speed, technical quality, operational risk, and cost
- Use AI tooling thoughtfully (e.g., for design exploration, code generation, test scaffolding, and incident analysis) to increase team velocity while maintaining a high quality bar
- Break down large, ambiguous availability initiatives into sequenced technical workstreams
- Provide reliable estimates and hold yourself accountable to delivery commitments, while adjusting plans thoughtfully as new information emerges
- Proactively identify and unblock cross-team dependencies across other backend and platform teams
- Represent the team in projects you own during sync meetings by providing clear, and actionable updates
- Set and uphold code, design, and review standards for the team in C#/.NET and our surrounding ecosystem, with a focus on simplicity, testability, readability, and long-term maintainability
- Represent the Diner Core Availability team in cross-team forums and communities of practice, ensuring our systems align with platform-wide standards while feeding local needs back into those standards
- Foster a healthy, inclusive engineering culture: encourage thoughtful debate, blameless retros, and data-driven decision-making
### Benefits
- Work from (almost) anywhere - wherever you do your best work
- Mental health and well-being - company-paid therapy sessions through SpringHealth, company-paid subscription to HeadSpace, and company-wide weeks off a year so the whole team can recharge
- Generous parental leave
- Generous paid vacation + time off for your birthday
- Paid volunteer time
- Enriched learning and development opportunities - leadership development & access to thousands of on-demand e-learnings
Sample OpenTable interview questions
- 1
What strategies would you employ to handle seasonal variations and new types of fraud in your detection system?
system designmedium - 2
Decode Ways Determine the number of valid ways to decode a string of digits. Input: s = "10" Output: 1 Explanation: The string can only be decoded one single way, as the sequence '10' maps exclusively to the letter 'J'.
codingmedium - 3
Add Two Numbers Represented as Strings Add two non-negative integers represented as strings. Input: num1 = "456", num2 = "77" Output: "533" Explanation: Performs character-by-character addition from right to left, carrying the 1 from 6+7=13 to the next decimal place.
codingmedium - 4
Pacific and Atlantic Water Flow Calculate water flow from a matrix to the Pacific and Atlantic oceans. Input: heights = [[2,1],[1,2]] Output: [[0,0],[0,1],[1,0],[1,1]] Explanation: All cells can flow to both oceans because water can move to adjacent cells of equal or lower height or directly off the edges.
codingmedium - 5
Merge a New Interval Merge a new interval into a list of non-overlapping intervals. Input: intervals = [[1,2],[3,5],[6,7],[8,10],[12,16]], newInterval = [4,8] Output: [[1,2],[3,10],[12,16]] Explanation: The new interval overlaps with [3,5], [6,7], and [8,10], merging them all into the unified block [3,10].
codingmedium
Sign up for a personalized interview prep pack tailored to this role.
Similar roles
Senior Software EngineerNorthside Hospital · Atlanta, Georgia, United States · Onsite- Senior Software EngineerRandstad Digital Americas · North York, Ontario, Canada · Hybrid
Software EngineerConcord Servicing, LLC · Dallas, Texas, United States · Remote
Lead Software EngineerElanco · Lake County, Indiana, United States · Onsite
Software EngineerAMERICAN SYSTEMS · Fredericksburg, Virginia, United States · Onsite