Jobs · Engineering · California

Sr. Software Engineer in Test

Yugabyte · Sunnyvale, CA · 3 wk ago
HybridEngineering$64/hrFull-time

Responsibilities

  • Architect, develop and maintain test automation frameworks.
  • Design and execute comprehensive test suites focusing on the "hard problems" of distributed databases: stress, resiliency, scalability, and performance.
  • Design and orchestrate distributed systems tests that simulate real-world failure modes.
  • Own the end-to-end quality of major features, from initial design review and test planning to production-ready automation.
  • Modernize existing test footprints by identifying opportunities for redesign, improved efficiency, and higher stability in CI/CD pipelines.
  • Uncover deep-seated bugs such as data corruption and consistency violations.
  • Deep-dive into the codebase to understand technical dependencies and execution paths, ensuring tests target the most critical logic.
  • Scale our test infrastructure, ensuring that the built tests scale with our growing feature set.
  • Define and inspire changes to our product with our development engineering team based on feedback from tests and customer issues.
  • Act as a technical lead for junior engineers and serve as an internal advocate for the customer experience.
  • Develop and contribute to internal and external knowledge bases. Be a champion for our customers.
  • Go above and beyond to ensure customers are getting the most out of their investment in the Yugabyte database.

Requirements

  • 5–8 years of experience in Software Development in Test (SDET) or Systems Engineering, with a BS/MS in Computer Science or a related field.
  • Strong foundation in Distributed Systems: Deep understanding of distributed architecture, including consistency models (linearizability, serializability), the CAP theorem, and consensus protocols (Raft).
  • Database Internals Expertise: Highly desirable knowledge of query processing, transactions (ACID), recovery logs, and concurrent B-tree access.
  • Proficient in Data Structures and Concurrent Programming. Must be comfortable reading and navigating the complex C++ codebase to identify potential failure points.
  • Working knowledge of Python, Java programming languages and advanced SQL.
  • Sound understanding of JDBC APIs and database connectivity.
  • Hands-on experience with Linux, shell scripting, Git, and architecting scalable CI/CD pipelines.
  • Able to leverage generative AI and LLM-based coding assistants to accelerate the authoring, refactoring, and optimization of complex test suites.
  • Exceptional troubleshooting skills with a "break-it" mindset; ability to trace issues from high-level test failures down to the code level for both internal and customer-reported bugs.
  • A proven track record of identifying complex bugs, specifically data corruption and consistency issues.

Similar jobs