Senior Java Developer - Distributed Systems, Serverless - Elasticsearch

Elastic $128.3K - $203K/year Posted about 1 hour ago

100% remote Canada only · Canada (remote)

About the role

Join the Elasticsearch Distributed Systems team and focus on how Elasticsearch provides scale, performance, and resilience, especially in the context of the Serverless offering. You will tackle deep distributed systems challenges in how nodes in an Elasticsearch cluster communicate, and how data is indexed, allocated, and managed across nodes.

Responsibilities

  • Leveraging your distributed systems expertise to build and operate core pieces of the next-generation Serverless Elasticsearch offering, directly impacting customers worldwide.
  • Improve the components that support concurrent and consistent indexing across multiple machines.
  • Maintain the cluster coordination system, keeping performance high as nodes come and go and data moves around, while preserving the safety and liveness properties of the system.
  • Push the limits on the number of shards, nodes, and petabytes Elasticsearch can handle today.
  • Investigate performance and concurrency issues, propose solutions, and own operational investigations end-to-end until they are resolved.
  • Support Elastic's support engineers with the hardest problems.

Qualifications

  • Deep background in distributed systems and consensus algorithms.
  • Strong skills in core Java, including the standard library of data structures, concurrency constructs, and newer language features.
  • Deep technical proficiency in algorithms.
  • Proven ability to understand and work on complex, highly distributed systems rather than composing off-the-shelf services.
  • Experience building and debugging complex features with broad impact, running on multiple machines.
  • Ability to own projects from beginning to end, covering technical design and collaboration with other engineers.
  • Track record of using AI to accelerate development, debug complex systems, and optimize code while owning the final outcomes.
  • Comfortable working autonomously in a distributed team through asynchronous, direct, and transparent communication.
  • Bonus points for data stores, search and analytics, Lucene, strong JDK knowledge, and asynchronous event-driven network frameworks such as Netty.

Skills

How to apply

Apply directly on the employer's application page. Your application goes straight to them.

Republished listing

This opportunity was discovered on Elastic's public careers page and is republished here for discovery purposes. Applications are handled by the employer.

Elastic team? Claim this listing or ask us to remove it.