Principal Java Developer - Distributed Systems, Serverless - Elasticsearch

Elasticsearch B.V.

Canada

On-site

CAD 128,000 - 203,000

Full time

14 days+

Get more replies from employers

Send a job-specific resume in minutes.

Benefits offered by this job

Competitive pay
Health coverage for you and family
Flexible locations and schedules
Generous vacation days
Donation matching to $2000
Volunteer hours
Parental leave

Job summary

Elastic is seeking a Principal Software Engineer for the Elasticsearch - Distributed Systems team to focus on scale, performance, and resilience in our Serverless offering. You will tackle deep distributed systems challenges in how Elasticsearch nodes communicate, and how data are indexed and managed across nodes.

You will design, build, and operate core pieces of our next-generation Serverless Elasticsearch, directly impacting customers worldwide.

Qualifications

  • Deep background in distributed systems and consensus algorithms.
  • Strong skills in core Java and concurrency constructs; familiarity with data structures.
  • Deep proficiency in algorithms.
  • Experience building large-scale distributed systems rather than using off-the-shelf services.
  • Experience delivering complex features with broad impact across multiple machines.
  • Ability to own projects from design to delivery and to manage multi-engineer efforts.
  • Proven track record of using AI to accelerate development and optimize code.
  • Ability to collaborate across functions and switch between projects as priorities change.

Responsibilities

  • Design, build, and operate core pieces of the serverless Elasticsearch offering.
  • Improve components supporting concurrent and consistent indexing across machines.
  • Maintain cluster coordination to preserve performance as nodes join/leave and data moves.
  • Push the limits on shards, nodes, and petabytes Elasticsearch can handle today.
  • Investigate performance or concurrency issues and propose solutions.
  • Support engineers with the harder problems and own end-to-end investigations.

Skills

Distributed systems
Java
Algorithms
Large-scale systems
Project ownership
Collaboration
AI acceleration
Asynchronous communication

Tools

Netty
JDK knowledge

Job 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. 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
Additional Information - We Take Care of Our People:

As a distributed company, diversity drives our identity. Whether you’re looking to launch a new career or grow an existing one, Elastic is the type of company where you can balance great work with great life. Your age is only a number. It doesn’t matter if you’re just out of college or your children are; we need you for what you can do.

We strive to have parity of benefits across regions, and while regulations differ from place to place, we believe taking care of our people is the right thing to do.

  • Competitive pay based on the work you do here and not your previous salary
  • 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
  • Increase your impact - We match up to $2000 (or local currency equivalent) for financial donations and service
  • Up to 40 hours each year to use toward volunteer projects you love
  • Embracing parenthood with a minimum of 16 weeks of parental leave

Security & Privacy Responsibilities: Take ownership of protecting the confidentiality, integrity, and availability of organizational data and systems by following applicable privacy and security policies, standards, and procedures. Ensure that all individual contributions follow Elastic’s Secure Software Development Framework (SSDF). Proactively participate in mandatory role-based training to ensure personal technical execution consistently aligns with the highest standards of data protection, data privacy, and system resilience.

Different people approach problems differently. We need that. Elastic is an equal opportunity employer and is committed to creating an inclusive culture that celebrates different perspectives, experiences, and backgrounds. Qualified applicants will receive consideration for employment without regard to race, ethnicity, color, religion, sex, pregnancy, sexual orientation, gender perception or identity, national origin, age, marital status, protected veteran status, disability status, or any other basis protected by federal, state or local law, ordinance or regulation.

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. We will reply to your request within 24 business hours of submission.

Applicants have rights under Federal Employment Laws and can view the following posters linked below:

Family and Medical Leave Act (FMLA) Poster

Employee Polygraph Protection Act (EPPA) Poster

Elasticsearch develops and distributes technology and information that is subject to U.S. and other countries’ export controls and licensing requirements for individuals who are located in or are nationals of the following sanctioned countries and regions: Belarus, Cuba, Iran, North Korea, Syria, or Russia, including the Ukrainian territories annexed by Russia (The Crimea region of Ukraine, The Donetsk People’s Republic (DNR), The Luhansk People’s Republic (LNR), Kherson or Zaporizhzhia). If you are located in or are a national of one of the listed countries or regions, an export license may be required as a condition of your employment in this role. Please note that national origin and/or nationality do not affect eligibility for employment with Elastic.

Please see here for our Privacy Statement.

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.

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.

Elastic believes that employees should have the opportunity to share in the value that we create together for our shareholders. Therefore, 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.

The typical starting salary range for this role is:

$128,300—$203,000 CAD

Vacancy Status: This is a posting for an existing vacancy. We are actively seeking to fill this position with a qualified candidate.

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Senior Java Developer - Distributed Systems, Serverless - Elasticsearch
Senior Java Developer - Distributed Systems, Serverless - Elasticsearch

Elasticsearch B.V. • Canada

Hybrid
CAD 128,000 - 203,000
Stock options
RRSP matching
Health coverage
+4
Principal Software Developer - Performance Tuning - Elasticsearch
Principal Software Developer - Performance Tuning - Elasticsearch

Elasticsearch B.V. • Canada

Hybrid
CAD 154,000 - 244,000
Health coverage for you and yourfamily
Flexible locations and schedules
Generous vacation days
+3
Senior Software Developer - Performance Tuning - Elasticsearch
Senior Software Developer - Performance Tuning - Elasticsearch

Elasticsearch B.V. • Canada

Hybrid
CAD 128,000 - 203,000
Health coverage
Flexible locations
Generous vacation days
+3
Principal Software Developer - Vector Search - Elasticsearch
Principal Software Developer - Vector Search - Elasticsearch

Elasticsearch B.V. • Canada

Hybrid
CAD 154,000 - 244,000
Health coverage for you and family
Flexible locations and schedules
Generous vacation days
Senior Java Developer - Core/Infra - Elasticsearch
Senior Java Developer - Core/Infra - Elasticsearch

Elasticsearch B.V. • Canada

On-site
CAD 128,000 - 203,000
Health coverage
Flexible work locations
Generous vacation days
+2
Senior Software Engineer - Search Relevance in ES|QL - Elasticsearch
Senior Software Engineer - Search Relevance in ES|QL - Elasticsearch

Elasticsearch B.V. • Canada

On-site
CAD 128,000 - 203,000
Health coverage
Flexible locations & schedules
Vacation days
+3
Senior Java Developer - Core/Infra - Elasticsearch Elastic
Senior Java Developer - Core/Infra - Elasticsearch Elastic

Neura Market • Canada

On-site
CAD 128,000 - 203,000
Health coverage
Flexible locations
Generous vacation days
Senior Software Developer
Senior Software Developer

Elasticsearch B.V. • Canada

Hybrid
CAD 128,000 - 203,000
Health coverage
Flexible scheduling
Vacation days
+2
Principal Software Developer - Security - Elasticsearch
Principal Software Developer - Security - Elasticsearch

Elasticsearch B.V. • Canada

On-site
CAD 154,000 - 244,000
Health coverage
Flexible schedules
Vacation days
+4
Principal Software Engineer - Vector Search - Elasticsearch
Principal Software Engineer - Vector Search - Elasticsearch

PowerToFly • Canada

On-site
CAD 154,000 - 244,000
Health coverage for you and your family
Generous vacation days
Flexible work arrangements
+1