Principal Java Engineer, Distributed Systems, Serverless

Elastic

Confirmed live yesterday Low trust

Quick summary

Work type
On-site
Location
Salary
$159,800–$252,800 / yr
Posted
91 days ago
Freshness
Confirmed live yesterday

Market check

Salary context

Competitive pay

How this pay compares to similar roles

Similar $195k
This role $206k
$138k most similar roles pay here $265k

This role pays more than 61% of similar roles. Most pay $165,650–$223,750 — the shaded band above. At the midpoint, this role pays about $206k versus about $195k for comparable roles.

Based on 240 similar postings.

Employer

About Elastic

Elastic is the company behind Elasticsearch and the Elastic Stack (Elasticsearch, Kibana, Beats, and Logstash). It sells search, observability, and security products built on that search engine, primarily through its Elastic Cloud managed service.

Elastic currently has 240 open roles on FindRole.

Listed pay typically runs $133,100–$210,600 across 91 roles with salary data.

Most-posted roles

View all roles at Elastic

At a glance

TL;DR · Principal Java Engineer, Distributed Systems, Serverless

Principal Java Engineer - Distributed Systems, Serverless - Elasticsearch joins the Elasticsearch - Distributed Systems team to focus on scale, performance, and resilience for the company's serverless offering. This role involves tackling deep distributed systems challenges regarding how nodes in an Elasticsearch cluster communicate and how data is indexed, allocated, and managed across nodes. The engineer will build core components for next-generation serverless features, improve concurrent indexing across multiple machines, and maintain the cluster coordination system to ensure safety and liveness as data moves. Key requirements include expertise in distributed systems, consensus algorithms, and core Java, including standard library concurrency constructs and advanced algorithms. Candidates should have experience building large-scale distributed systems rather than using off-the-shelf services. Preferred skills include knowledge of Lucene, the JDK, and Netty for asynchronous event-driven network frameworks.

What you'll do

  • Design and build core components for the next-generation Serverless Elasticsearch offering.
  • Improve components that support concurrent and consistent indexing across multiple machines.
  • Maintain the cluster coordination system to ensure performance during node changes and data movement.
  • Scale the system to handle a massive number of shards, nodes, and petabytes of data.
  • Identify and resolve complex performance, concurrency, and stability issues within distributed systems.
  • Lead end-to-end operational investigations until technical issues are fully resolved.
  • Provide high-level technical support to engineers for complex troubleshooting problems.

What we're looking for

  • You must have a deep background in distributed systems and consensus algorithms.
  • You must possess strong skills in core Java, including standard library data structures and concurrency constructs.
  • You must have deep technical proficiency in algorithms.
  • You must have experience building large-scale distributed systems rather than using off-the-shelf services.
  • You must have experience building and debugging complex features running on multiple machines.
  • You must be able to own projects from beginning to end, including technical design and team collaboration.
  • You must have experience managing projects involving multiple engineers.
  • You must have a proven track record of using AI to accelerate development and optimize code.
  • Experience with data stores, search, analytics, Lucene (preferred).
  • Strong knowledge of the JDK (preferred).
  • Experience with asynchronous event-driven network frameworks such as Netty (preferred).

More like this

Similar roles