Join Elastic as a Principal Software Engineer I to enhance Elasticsearch's performance and resilience in distributed systems.
Posted by employer 4 months ago
First seen on Joblaze 4 months ago
Last verified on the company career page 1 day ago
Not disclosed in this posting: years of experience, visa sponsorship.
Joblaze summary
In this role, the Principal Software Engineer I will enhance Elasticsearch's distributed systems by focusing on indexing, data allocation, and cluster coordination to ensure high performance and resilience. Proficiency in core Java, distributed systems, and consensus algorithms is essential, along with a strong grasp of algorithms and debugging complex systems. This position is ideal for experienced engineers who can manage projects and collaborate effectively across teams. Elastic fosters a diverse and inclusive environment, emphasizing employee well-being and work-life balance.
Quick facts
- Is the Principal Java Engineer - Distributed Systems, Serverless - Elasticsearch role remote?
- It's hybrid — Elastic expects some on-site time in United States.
- What's the salary range?
- Elastic lists $133,100–$210,600 for this role.
- Where is the role based?
- Elastic is hiring for this position in United States.
- What's the tech stack?
- Joblaze extracted these technologies from the posting: Elasticsearch, Java, distributed systems.
- What seniority level is this role?
- Elastic targets principal-level candidates for this position.
- Is this full-time or contract?
- Full-time for this Principal Java Engineer - Distributed Systems, Serverless - Elasticsearch role at Elastic.
From the original posting
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. The Elastic Search AI Platform, used by more than 50% of the Fortune 500, brings together the precision of search and the intelligence of AI to enable everyone to accelerate the results that matter. By taking advantage of all structured and unstructured data — securing and protecting private information more effectively — Elastic’s complete, cloud-based solutions for search, security, and observability help organizations deliver on the promise of AI.
What Is The Role:
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. You will be tackling 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:
- Leveraging your deep distributed systems expertise to design, build, and operate core pieces of our next-generation Serverless Elasticsearch offering, directly impacting the experience of customers worldwide.
- 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.
- Owning operational investigations end-to-end, until performance or stability issues are successfully resolved.
What You Bring:
- You have a deep background in distributed systems and consensus algorithms.
- 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.
- You have experience building large-scale distributed systems, rather than making use of off-the-shelf services.
- You have experience building and debugging complex features with a broad impact, running on multiple machines.
- You are able to own projects from beginning to end. This covers both technical design and working with others to develop needed components.
- You have experience managing projects involving multiple engineers.
- You have a proven track record of using AI to accelerate development, debug complex systems, and optimize code, while still owning the final outcomes.
- You possess the ability to collaborate across functions and teams and seamlessly transition between different projects, codebases, or teams based on business priorities
- You can work autonomously, drive decisions and results in a distributed team by leveraging asynchronous, direct, and transparent communication.
Bonus Points:
- Data stores
- Search, analytics, Lucene
- Strong knowledge of the JDK
- Asynchronous event-driven network frameworks such as Netty
Compensation for this role is in the form of base salary. This role does not have a variable compensation component.
The typical starting salary range for new hires in this role is listed below. In select locations (including Seattle WA, Los Angeles CA, the San Francisco Bay Area CA, and the New York City Metro Area), an alternate range may apply as specified below.
These ranges represent the lowest to highest salary we reasonably and in good faith believe we would pay for this role at the time of this posting. We may ultimately pay more or less than the posted range, and the ranges may be modified in the future.
An employee's position within the salary range will be based on several factors including, but not limited to, relevant education, qualifications, certifications, experience, skills, geographic location, performance, and business or organizational needs.
$159,800—$252,800 USD
The typical starting salary range for this role in the select locations listed above is:
$191,900—$303,500 USD
Additional Information - We Take Care of Our People
Please see here for our Privacy Statement.
Standard company text repeated across Elastic's postings is omitted here.