Employer listing
Principal Software Engineer - Performance Tuning - Elasticsearch
Elastic
remote · full time · Principal
$159,800 - $303,500
What is The Role
Elasticsearch powers search, observability, and AI retrieval (RAG) for the world's largest organizations. We are seeking a Principal Software Engineer to join the Elasticsearch Performance team. In this role, you will lead architectural and code-level performance engineering initiatives. Your goal is to drive the continuous optimization and predictability of Elasticsearch performance, partnering with area-specific teams to unlock the full potential of our software.
What You Will Be Doing
- Owning core performance engineering initiatives from architecture to production, focusing on the delivery of high-impact optimizations. Leading the technical design, plan, and execution for major architectural and code-level performance improvements.
- Developing foundational performance models and methodologies for complex, distributed systems.
- Driving optimization strategies to ensure Elasticsearch remains performant, predictable, and scalable in diverse environments.
- Profiling and analyzing system behavior to identify bottlenecks in logging, metrics, vector search, and ES|QL.
- Ensuring robust performance benchmarks and regression detection for both stateful and stateless (Serverless) architectures.
- Collaborating across the company to embed performance-first thinking into new features from the outset.
- Driving automation efforts by designing and building AI-assisted optimization harnesses that streamline profiling, hypothesis testing, and benchmarking.
- Mentoring and coaching other engineers, fostering a culture of technical excellence and performance-aware development.
What You Bring
- Deep knowledge of Java internals and JVM memory management; deep understanding of concurrency models and the ability to write high-performance, thread-safe, and lock-free code within large codebases.
- Proven experience in profiling and optimizing distributed systems, including benchmarking tools (e.g., flamegraphs, JMH, Rally), identifying regressions, and implementing algorithmic or hardware-aware optimizations.
- Solid comprehension of distributed systems architecture, including partition tolerance, cluster state propagation, and scaling challenges in large-scale data stores.
- Proven track record of using AI or advanced tooling to accelerate optimization, debug complex performance issues, and automate benchmarking workflows.
- Ability to collaborate cross-functionally and act as a force multiplier for performance engineering.
- Ability to transition seamlessly between different projects, codebases, or teams based on business priorities.
- Ability to work autonomously and drive decisions in a distributed team leveraging asynchronous, direct, and transparent communication.
Bonus Points
- Experience integrating high-performance native libraries (e.g., C++, Rust, SIMD-accelerated code) into Java applications.
- Deep knowledge of modern storage engine performance, index modes, or vector search optimizations.
- Experience defining and managing Performance SLAs and success criteria for distributed systems.
- Experience working on the internals of a large-scale data store or search engine.
Benefits
Health coverage, company-matched 401(k) up to 6%, stock program eligibility, generous vacation, minimum 16 weeks parental leave, flexible schedules, and donation matching up to $2,000.