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.
We are on the lookout for a Principal Software Engineer to join our Elasticsearch - Distributed Systems team and focus on how Elasticsearch provides scale, performance, and resilience, especially in the context of our Serverless offering.
Responsibilities
- Design, build, and operate core pieces of our next-generation Serverless Elasticsearch offering, directly impacting the experience of customers worldwide.
- Improve Elasticsearch’s components that support concurrent and consistent indexing across multiple machines.
- Maintain our cluster coordination system to keep performance high even though nodes come and go from the cluster and data moves around.
- Push the limits on the number of shards, nodes, and petabytes that Elasticsearch can handle today.
- Investigate and propose solutions for various issues, including performance or concurrency issues.
- Support our support engineers with complex problems.
- Own operational investigations end-to-end until performance or stability issues are successfully resolved.
Requirements
- Deep background in distributed systems and consensus algorithms.
- Strong skills in core Java and familiarity with the standard library of data structures and concurrency constructs.
- Deep technical proficiency in algorithms.
- Experience building large-scale distributed systems.
- Experience building and debugging complex features with a broad impact.
- Ability to own projects from beginning to end.
- Experience managing projects involving multiple engineers.
- Proven track record of using AI to accelerate development and optimize code.
- Ability to collaborate across functions and teams.
- Ability to work autonomously and drive decisions and results in a distributed team.
Nice to Have
- Knowledge of data stores.
- Familiarity with search, analytics, and Lucene.
- Strong knowledge of the JDK.
- Experience with asynchronous event-driven network frameworks such as Netty.
Benefits
- Competitive pay.
- Health coverage for you and your family.
- Flexible locations and schedules.
- Generous number of vacation days.
- Matching up to $2000 for financial donations and service.
- Up to 40 hours each year for volunteer projects.
- Minimum of 16 weeks of parental leave.