ITJobsInCanada – IT Jobs in Canada
Sign In

Principal Software Engineer

Elastic

Toronto
Full Time
Apply Now

Job Description

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.
  • Drive 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:

  • You have deep knowledge of Java internals and JVM memory management. You understand how concurrency models work. You can write code that is high-performance, thread-safe, and lock-free. This experience includes working with large open-source and enterprise codebases.
  • You have proven experience in profiling and optimizing distributed systems. This includes deep experience with benchmarking tools (e.g., flamegraphs, JMH, Rally), identifying performance regressions, and implementing algorithmic or hardware-aware optimizations.
  • You have a solid comprehension of distributed systems architecture, including partition tolerance, cluster state propagation, and scaling challenges in large-scale data stores.
  • You have a proven track record of using AI or advanced tooling to accelerate optimization, debug complex performance issues, and automate benchmarking workflows.
  • You possess the ability to collaborate across functions and teams, acting as a force multiplier for performance engineering across the organization.
  • 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 result in a distributed team by 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.
  • Experience working on the internals of a data store or search engine.

Elastic


Full Time

Toronto

Software Engineer

Apply Now

Job Overview

  • Posted: 29 days ago
  • Experience: 2 Years
  • Total Positions: 1