Skip to main content

Principal Java Engineer - Distributed Systems, Serverless - Elasticsearch

Elastic
SpainUpdated 1d ago
Base salary
€80k–€127k
Published base salary range
Location
Spain
Remote eligibility
Employment
Full-time
Staff / Principal
Role family
Engineering
Developer tools
Apply on jobs.elastic.co
Job actionsApply now
Job actionsApply now

About the job

About the Role

Elastic, the Search AI Company, is looking for a Principal Software Engineer to join the Elasticsearch - Distributed Systems team, focusing on 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 are indexed, allocated, and managed across nodes.

What You Will Be Doing

  • Design, build, and operate core pieces of the next-generation Serverless Elasticsearch offering.
  • Improve Elasticsearch components that support concurrent and consistent indexing across multiple machines.
  • Maintain cluster coordination systems to keep performance high while nodes come and go, preserving safety and liveness properties.
  • Push limits on shards, nodes, and petabytes that Elasticsearch can handle.
  • Investigate performance or concurrency issues and propose solutions.
  • Support support engineers with harder problems and own operational investigations end-to-end.

What You Bring

  • Deep background in distributed systems and consensus algorithms.
  • Strong skills in core Java, including standard library data structures, concurrency constructs, and newer language features.
  • Deep technical proficiency in algorithms.
  • Experience building large-scale distributed systems, not just using off-the-shelf services.
  • Experience building and debugging complex features running on multiple machines.
  • Ability to own projects from beginning to end, including technical design and collaboration.
  • Experience managing projects involving multiple engineers.
  • Proven track record of using AI to accelerate development, debug complex systems, and optimize code.
  • Ability to collaborate across functions and teams, and work autonomously in a distributed team with asynchronous, direct, transparent communication.

Bonus Points

  • Data stores, search, analytics, Lucene
  • Strong knowledge of the JDK
  • Asynchronous event-driven network frameworks such as Netty

Compensation

Base salary only; no variable compensation component. Typical starting salary range: €80,400—€127,200 EUR.

Benefits

  • Competitive pay based on work, not previous salary
  • Health coverage for you and your family in many locations
  • Flexible locations and schedules for many roles
  • Generous number of vacation days each year
  • Up to $2000 (or local currency equivalent) match for financial donations and service
  • Up to 40 hours each year for volunteer projects
  • Minimum of 16 weeks of parental leave

Additional Information

Elastic is an equal opportunity employer and committed to an inclusive culture. Accommodations available upon request via candidate_accessibility@elastic.co. Export controls may apply for certain sanctioned countries.

Skills & tags

What you can verify before applying

Compare the essentials before you leave: pay, remote scope, employment type, source, and the employer apply destination.