Senior Engineer, Transactions (C/C++)
As a senior software engineer on the Storage team working on Transaction Processing, you will have the unique benefit of building systems software in a rapid production environment with a small and collaborative team. This includes overseeing the direction, design and development of key features. In this position, you will be empowered to leverage your technical, leadership, and business acumen while mentoring other engineers who are eager to learn from you.
At SingleStore, the Storage Team owns most of the low-level and System of Record architecture of the system. This architecture is a distributed, shared-nothing and cloud-native system, which is a big part of how our product's scalability and resiliency works. This includes working with (and building) cluster management, replication, consensus, fault-tolerance, and system of record features and other core distributed system concepts.
If you want to know more about the cool things built by the storage team, you can check out these two articles:
- The Future is Bottomless
- Building Fast Distributed Synchronous Replication.
Role and Responsibilities
- Lead innovation for major software components, systems, and features.
- Extend the architecture of the system to support enhanced requirements.
- Ensure data consistency and durability with breakthrough performance and scalability.
- Automate and test your own code to improve overall software quality.
- Manage individual project priorities, deadlines and deliverables.
- Mentor and train other team members on design techniques and coding standards.
- Actively participate in customer POCs to optimize customer experience and adoption.
- Work collaboratively with other engineering teams and other departments such as Support, Sales, and Marketing.
- 3+ years of experience designing distributed systems and/or fault-tolerant systems, independently of the programming language.
- 5+ years of experience developing and debugging in system level C/C++, preferably on Linux.
- 5+ years of experience with low level concepts such as file systems, concurrency, multithreading, and server architectures.
- Familiarity with Transaction Processing concepts such as isolation levels, replication, 2PC, consensus, optimistic concurrency, MVCC, …
- Familiarity with modern cloud architectures and paradigms, such as docker containers and kubernetes.
- Passionate about building highly reliable system software.
- B.S. degree or equivalent experience in Computer Science or a similar field.
Other:
- Employment Status: Full Time Employment
- Location/Working classification: Hybrid Role
- Required to work from office 1 day a week
SingleStore delivers the cloud-native database with the speed and scale to power the world’s data-intensive applications. With a distributed SQL database that introduces simplicity to your data architecture by unifying transactions and analytics, SingleStore empowers digital leaders to deliver exceptional, real-time data experiences to their customers. SingleStore is venture-backed and headquartered in San Francisco with offices in Sunnyvale, Raleigh, Seattle, Boston, London, Lisbon, Hyderabad, Dublin, and Kyiv.
Consistent with our commitment to diversity & inclusion, we value individuals with the ability to work on diverse teams and with a diverse range of people.
To all recruitment agencies: SingleStore does not accept agency resumes. Please do not forward resumes to SingleStore employees. SingleStore is not responsible for any fees related to unsolicited resumes and will not pay fees to any third-party agency or company that does not have a signed agreement with the Company.