Database Internals - Software Engineer - Clustrix

San Jose, CA, US

At Clustrix, we are building the next generation of high performance, super scalable, distributed, enterprise database systems. We have tremendous customer support and outstanding venture capital backing. Our staff is comprised of experts with decades of experience in directly relevant fields and we are always looking for outstanding people who can add to our strength.
Clustrix, is looking for Software Engineers who enjoy design as well as development. We have a focused engineering team with little management overhead.
We are looking for Software Developers to work in the following areas:
Systems Design and Implementation
Distributed Group Membership and Reliable Communication
Distributed Concurrency Control and Transaction Management (2PL, MVCC, 2PC)
Distributed Lock Management and Distributed Deadlock Detection
Fault Tolerance in Distributed Systems
High Concurrency B-Tree Implementation
Database Query Processing/Optimization and Language Design
Distributed Query Planning and Optimization
Design and Implementation of Rule Based Languages (Prolog/Datalog)
Compiler Design, Implementation, and Optimization
SQL Parser Implementation
Network Protocol Design and Implementation
Design and Development of High-Performance Protocol Stacks
Experience with Asynchronous Programming models
Experience in the following areas is highly desirable:
Distributed database development
File System Development
Unix/Linux/BSD Kernel and Systems Development
Large Scale Systems Architecture and Implementation
Understanding of database QoS technologies
Development experience with Docker containers

As a member of the development team, you will be responsible for subsystem design, design reviews, and of course portions of the implementation. You should be an experienced C developer and be comfortable with development of concurrent systems in an asynchronous programming model. We are looking for at least 3-5 years of prior experience in systems development.