We are looking for top Software Engineers with experience in complex distributed systems to join our team. This is a great opportunity to work on the inner heart of one of the most popular open source products.
Your work will primarily focus on the distributed aspects of Elasticsearch, by which we mean the parts that are responsible for data replication, consensus and node to node coordination.
*
Examples include:
The logic for keep multiple copies of the data in sync while supporting concurrent and high through put indexing and searches;
Consensus algorithms used by the cluster master to coordinate meta data like cluster membership, shard assignment and document metadata;
Shard migration logic responsible for transferring gigabytes of data between nodes without dropping a single indexing or search operation;
Some modelling work using TLA+ and/or similar languages.
We believe in room for creativity and breadth of knowledge. As such you will be given to opportunity and time to work on other aspects of the complex system that is Elasticsearch – be it the high speed lower level indexing code or an aggregation using the latest analysis algorithms.
Collaborate with other development teams, our community, and our customers to execute on product deliverables
Occasionally provide training at Elasticsearch Training Events

