Senior Java Engineer - Distributed Systems - Elasticsearch
Role details
Job location
Tech stack
Job description
Elastic, the Search AI Company, enables everyone to find the answers they need in real time, using all their data, at scale - unleashing the potential of businesses and people. The Elastic Search AI Platform, used by more than 50% of the Fortune 500, brings together the precision of search and the intelligence of AI to enable everyone to accelerate the results that matter. By taking advantage of all structured and unstructured data - securing and protecting private information more effectively - Elastic's complete, cloud-based solutions for search, security, and observability help organizations deliver on the promise of AI. What is The Role, * 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.
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 language features.
- You have a deep technical proficiency in algorithms.
- You have shown your ability to understand and work on complex, highly distributed systems.
- You demonstrate the ability to build and debug features with a broad impact, running on multiple machines.
- You are able to own projects from beginning to end. This covers both technical design and working with others to develop needed components.
Bonus Points:
- Data stores
- Search, analytics, Lucene
- Strong knowledge of the JDK
- Asynchronous event-driven network frameworks such as Netty
Benefits & conditions
Elastic believes that employees should have the opportunity to share in the value that we create together for our shareholders. Therefore, in addition to cash compensation, this role is currently eligible to participate in Elastic's stock program.Our total rewards package also includes a company-matched 401k with dollar-for-dollar matching up to 6% of eligible earnings, along with a range of other benefits offered with a holistic emphasis on employee well-being.
The typical starting salary range for this role is:
$133,100-$210,600 USD
The typical starting salary range for this role in the select locations listed above is:
$159,900-$252,900 USD Different people approach problems differently. We need that. Elastic is committed to diversity as well as inclusion. We are an equal opportunity employer and committed to the principles of affirmative action. Qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender perception or identity, national origin, age, marital status, protected veteran status, or disability status or any other basis protected by federal, state or local law, ordinance or regulation. If you require any reasonable accessibility support, please complete our Candidate Accessibility Request Form.