Elasticsearch - Senior Java Engineer - Distributed Systems
AI Summary ✨
Requirements:
A strong background in Distributed Systems and Consensus Algorithms.
You have strong skills in core Java and are conversant in the standard library of data structures and concurrency constructs, as well as newer features like lambdas.
Deep technical proficiency in algorithms.
You have shown your ability to understand and work on complex, highly distributed systems.
You are able to own projects from beginning to end. This covers both technical design and working with others to develop needed components.
You demonstrate the ability to build and debug features with a broad impact, running on multiple machines.
Nice to Haves:
Data stores
Search, analytics, Lucene
Strong knowledge of the JDK
Asynchronous event-driven network frameworks such as Netty
What You Will Be Doing:
Improving Elasticsearch’s components that support concurrent and consistent indexing across multiple machines.
Maintaining our cluster coordination system to keep performance high even though nodes come and go from the cluster and data moves around, while maintaining the safety and liveness properties of the system as a whole.
Pushing the limits on the number of shards, nodes, and petabytes that Elasticsearch can handle today.
Looking into all kinds of issues, including performance or concurrency issues, and proposing solutions.
Supporting our support engineers with the harder problems.
Perks and Benefits:
Competitive pay based on the work you do here and not your previous salary
Health coverage for you and your family in many locations
Ability to craft your calendar with flexible locations and schedules for many roles
Generous number of vacation days each year
Increase your impact - We match up to $2000 (or local currency equivalent) for financial donations and service
Up to 40 hours each year to use toward volunteer projects you love
Embracing parenthood with a minimum of 16 weeks of parental leave