Principal Software Engineer (Distributed Systems - Elasticsearch)

Principal Software Engineer (Distributed Systems - Elasticsearch)

Full-Time No working from home possible
Elastic

Responsibilities

  • We are on the lookout for a Principal Software Engineer I to join our Elasticsearch - Distributed Systems team and focus on how Elasticsearch provides scale, performance, and resilience
  • This team owns how nodes in an Elasticsearch cluster communicate, and how data are indexed, allocated, and replicated across nodes
  • 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

Benefits

  • Toast to your health: Fully paid health coverage for you and your family, in many locations.
  • Craft your calendar: Flexible location and schedule for most roles.
  • Create space for you: Distributed by design workforce, plus generous number of vacation days each year.
  • Embrace parenthood: Minimum of 16 weeks of parental leave, plus generous family formation benefits.
  • Give back your time: 40 hours each year to use toward volunteering with organizations and causes you’re passionate about.
  • Amplify your impact: Double your charitable giving — we match donations up to $1500 USD (or local currency equivalent).

Qualifications

  • You have experience managing projects involving multiple engineers.
  • A strong background in distributed systems and consensus 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, covering both technical design and collaborating with others to develop needed components.
  • You demonstrate the ability to build and debug features with a broad impact, running on multiple machines.
  • 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.
  • Search, analytics, Lucene, and data stores experience.
  • Strong knowledge of the JDK.
  • Experience with asynchronous event-driven network frameworks such as Netty.
#J-18808-Ljbffr
Elastic

Contact Details:

Elastic Recruitment Team