We are looking for an experienced Lead Performance Engineer with strong expertise in application performance engineering, production troubleshooting, and performance optimization. The ideal candidate should have hands-on experience analyzing application and server-side performance issues using Linux, heap dumps, thread dumps, Garbage Collection (GC) analysis, database analysis, flame graphs, and application/server-side monitoring tools. The candidate will work closely with application development, DevOps, infrastructure, and database teams to identify performance bottlenecks, conduct root-cause analysis, and drive performance improvements across enterprise applications.
- 8+ years of overall IT experience, with significant experience in Performance Engineering / Application Performance Management.
- Proven experience troubleshooting complex performance issues in enterprise applications.
- Strong understanding of JVM internals, memory management, threading, GC, CPU and I/O behavior.
- Strong Linux troubleshooting skills.
- Ability to independently perform performance analysis and identify root causes rather than only execute predefined performance test scripts.
- Experience working with development, DevOps, infrastructure, and database teams.
- Lead end-to-end application performance engineering and troubleshooting activities.
- Analyze application and server performance issues across development, test, and production environments.
- Perform detailed Linux system-level performance analysis, including CPU, memory, disk I/O, network, processes, and system resource utilization.
- Analyze JVM heap dumps to identify memory leaks, excessive object creation, and memory-related bottlenecks.
- Analyze thread dumps to identify deadlocks, thread contention, blocked/waiting threads, thread pool issues, and CPU-consuming threads.
- Perform Garbage Collection (GC) analysis, including GC logs, pause times, heap utilization, allocation patterns, and JVM tuning opportunities.
- Conduct database performance analysis, including slow queries, execution plans, connection pools, locks, waits, indexing, and database resource utilization.
- Generate and analyze flame graphs for identifying CPU hotspots and application-level performance bottlenecks.
- Use application and server-side monitoring/observability tools to identify performance degradation and correlate application, infrastructure, and database metrics.
- Conduct root-cause analysis of performance incidents and provide actionable recommendations.
- Work with development teams to identify inefficient code paths, resource utilization issues, memory problems, and concurrency-related bottlenecks.
- Define performance baselines and monitor application performance against agreed SLAs/SLOs.
- Lead performance optimization initiatives and validate improvements through benchmarking and load testing.
- Prepare technical performance reports, bottleneck analysis, and optimization recommendations.
- Mentor junior performance engineers and provide technical leadership across performance engineering initiatives.

