
Opportunity at
ElasticPrincipal Software Developer - Performance Tuning - Elasticsearch
Elastic wants a senior engineer at the Principal Software Developer level for its Elasticsearch Performance group. The position is full-time and marked on-site, and its purpose…
Career Tools
About This Role
Elastic wants a senior engineer at the Principal Software Developer level for its Elasticsearch Performance group. The position is full-time and marked on-site, and its purpose is to make the search engine faster and more predictable as it grows. Work happens on two levels, system architecture and the code itself. The engineer would drive significant speed-up projects from the design stage through to production, lead large technical changes, and build…
Job Description
Elastic wants a senior engineer at the Principal Software Developer level for its Elasticsearch Performance group. The position is full-time and marked on-site, and its purpose is to make the search engine faster and more predictable as it grows.
Work happens on two levels, system architecture and the code itself. The engineer would drive significant speed-up projects from the design stage through to production, lead large technical changes, and build models that describe performance in complicated distributed environments. Profiling targets include ES|QL, logging, metrics and vector search, while benchmarking and regression detection must cover both stateful clusters and serverless deployments.
Performance is also expected to shape new features from day one, so the engineer engages other teams early. Additional duties include building AI-assisted tooling that makes profiling, hypothesis testing and benchmarking quicker, and coaching colleagues toward habits that keep code efficient.
A strong fit has deep familiarity with Java internals and the way the JVM manages memory, a working grasp of concurrency, and experience improving large distributed systems. The listing presents Elastic as a search AI company whose products combine search, security and observability.
Pay is base salary alone, with no variable portion. The typical starting range is CAD 154,000 to 243,600, and the role carries eligibility for Elastic's stock program.
Responsibilities
- Drive major speed-up efforts from architecture planning through production delivery
- Plan and lead large structural and code-level performance changes
- Create performance models and methods for intricate distributed architectures
- Keep the engine fast, steady and scalable across different deployment types
- Locate slow spots in logging, metrics, vector retrieval and ES|QL
- Maintain benchmark suites and catch performance regressions early
- Involve teams early so performance shapes new features from the outset
- Engineer AI-assisted harnesses that accelerate profiling and experiments
- Coach engineers toward performance-aware development
Requirements
- Strong command of Java internals and how the JVM handles memory
- Working grasp of concurrency and the ability to write fast, thread-safe, lock-free code
- Past work inside very large open-source or enterprise code bases
- Proven record optimizing distributed systems with flamegraphs, JMH and Rally
- Understanding of distributed-system design topics such as partition tolerance, cluster state spread and scaling limits
- Practical use of AI or advanced tooling to speed up optimization and automate benchmarks
- Independent working style with clear asynchronous communication across time zones
Qualifications
- Experience connecting native code in C++, Rust or SIMD-style instructions to Java systems
- Knowledge of storage engine speed, index modes or vector search tuning
- Background setting performance service-level targets for distributed platforms
- Prior work on the inner workings of a large data store or search product
Core Skills
Benefits
- Pay set by the work performed rather than by prior salary
- Health coverage that reaches families in many regions
- Schedule and location flexibility across numerous roles
- Generous yearly vacation allowance
- Matching of donations and volunteer effort up to $2,000 (or local equivalent)
- Volunteer time of up to 40 hours a year for causes the employee chooses
- Parental leave of at least 16 weeks
- Participation in the stock program
- Employer-matched RRSP, dollar for dollar up to six percent of eligible earnings
Frequently Asked Questions
Answers are based only on the employer’s listing; where it doesn’t say, neither do we.
Which city or country is the job in?
The posting does not name a city or country. It is marked as on-site.
What is the pay?
The typical starting base salary is CAD 154,000 to 243,600. There is no variable pay element, and the role is eligible for Elastic's stock program.
What technical strengths are sought?
The listing asks for deep Java and JVM memory knowledge, concurrency skills, and experience profiling distributed systems with tools such as flamegraphs, JMH and Rally.
Is it a full-time role?
Yes. The listing is for a full-time position.
How should candidates apply?
The posting does not describe application steps. It only lists a contact for accommodation requests during recruiting.
Sample Interview Questions
AI-generated questions tailored to this specific role — a preview of the full practice set.