Senior Java Developer - Distributed Systems, Serverless - Elasticsearch
Elastic- Base salary
- $128k–$203k Published base salary range
- Employment
- Full-time Senior
About the job
About the Role
Elastic, the Search AI Company, enables everyone to find the answers they need in real time, using all their data, at scale. 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. We are looking for a Senior Software Developer 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 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
- Leveraging your distributed systems expertise to 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
- Deep background in distributed systems and consensus algorithms.
- Strong skills in core Java and conversant in the standard library of data structures and concurrency constructs, as well as newer language features.
- Deep technical proficiency in algorithms.
- Ability to understand and work on complex, highly distributed systems, rather than making use of off-the-shelf services.
- Ability to build and debug features with a broad impact, running on multiple machines.
- Ability to own projects from beginning to end, covering both technical design and working with others to develop needed components.
- Proven track record of using AI to accelerate development, debug complex systems, and optimize code, while still owning the final outcomes.
- Ability to collaborate across functions and teams and seamlessly transition between different projects, codebases, or teams based on business priorities.
- Ability to 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 & Benefits
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 this role is $128,300—$203,000 CAD. In addition to cash compensation, this role is currently eligible to participate in Elastic's stock program. Our total rewards package also includes a company-matched Registered Retirement Savings Plan (RRSP) with dollar-for-dollar matching up to 6% of eligible earnings, along with a range of other benefits offered with a holistic emphasis on employee well-being.
Additional benefits include: health coverage for you and your family in many locations, ability to craft your calendar with flexible locations and schedules for many roles, generous number of vacation days each year, match up to $2000 for financial donations and service, up to 40 hours each year to use toward volunteer projects, and minimum of 16 weeks of parental leave.
Additional Information
Elastic is an equal opportunity employer and is committed to creating an inclusive culture. We welcome individuals with disabilities and strive to create an accessible and inclusive experience for all individuals. To request an accommodation during the application or the recruiting process, please email candidate_accessibility@elastic.co.
Skills & tags
Compare the essentials before you leave: pay, remote scope, employment type, source, and the employer apply destination.