Overview
Elastic, the Search AI Company, enables organizations to find answers in real-time using all their data at scale. They are looking for a Senior Software Developer to join the Elasticsearch - Distributed Systems team, focusing on the challenges of distributed systems in the context of their Serverless offering.
Key Responsibilities
- Build and operate core components of the next-generation Serverless Elasticsearch offering.
- Improve components supporting concurrent and consistent indexing across multiple machines.
- Maintain the cluster coordination system to ensure high performance, safety, and liveness.
- Push limits on the number of shards, nodes, and data Elasticsearch can handle.
- Investigate performance or concurrency issues and propose solutions.
- Support engineers with complex problems and own operational investigations end-to-end.
Requirements
- Deep background in distributed systems and consensus algorithms.
- Strong skills in core Java and familiarity with the standard library, concurrency constructs, and newer language features.
- Technical proficiency in algorithms and experience with complex, highly distributed systems.
- Ability to build and debug impactful features across multiple machines.
- Proven track record of using AI to enhance development and code optimization.
- Skills in collaborative work across functions and the ability to work autonomously in a distributed team.
Benefits
- Base salary compensation without a variable component, with a typical starting range of $128,300 — $203,000 CAD.
- Participation in Elastic's stock program.
- Company-matched Registered Retirement Savings Plan (RRSP) with up to 6% matching.
- Health coverage for employees and their families in many locations.
- Flexible locations and schedules for many roles.
- Generous vacation days and parental leave policy.
- Financial donation matching and volunteer time off.
Location
Remote role based in Canada.
How to Apply
Interested candidates should apply via the company's careers page.