Software Diagnostics & Performance Test Engineer
Core
Investigate complex software failures and performance problems across application, system, network, and infrastructure layers to identify root causes and bottlenecks.
Role type
Senior IC software diagnostics and performance test engineer
Builds
Diagnostic scripts, instrumentation, performance test cases, and internal troubleshooting methodologies
Domain
Software engineering, performance engineering, systems engineering, reliability engineering
Required skills
Root-cause analysis, log and trace analysis, network traffic analysis, application profiling, performance test case design and execution, concurrency debugging, scalability analysis, hypothesis formulation, technical documentation, mentoring
Preferred skills
Programming in Java/C++/C#/Python, understanding distributed system architecture, correlating evidence across components
Technologies
Java, C++, C#, Python, TCP/IP, HTTP/HTTPS, DNS, operating systems (processes, threads, memory, CPU, file I/O, sockets, synchronization)
Responsibilities
Investigate complex software failures and performance problems; Perform deep root-cause analysis across application, system, network, database, and infrastructure layers; Analyze application logs, system logs, stack traces, thread dumps, heap dumps, metrics, traces, and profiling data; Analyze network traffic and protocols to identify latency, connectivity, retransmission, timeout, and communication issues; Investigate issues that occur only under specific workloads, concurrency levels, configurations, environments, or long-running conditions; Design experiments to isolate variables and prove or disprove hypotheses; Develop diagnostic scripts, instrumentation, and small tools when necessary to accelerate investigations; Perform exploratory testing and deliberately challenge system assumptions to discover weaknesses and failure modes; Investigate performance degradation, scalability limitations, resource exhaustion, latency spikes, and throughput bottlenecks; Create meaningful Performance Test Cases based on product architecture, customer workflows, expected load patterns, scalability goals, and known risk areas; Review Performance Test Cases created by other engineers to ensure coverage, clarity, workload relevance, data validity, and alignment with product behavior; Execute Performance Test Cases, analyze results, identify bottlenecks or regressions, and communicate findings with clear evidence and recommended actions; Correlate evidence across multiple components of distributed systems; Work with developers to identify the actual root cause rather than simply identifying the component where the symptom appeared; Clearly communicate technical findings, evidence, root cause, impact, and recommended corrective actions; Build and maintain diagnostic knowledge, troubleshooting methodologies, and internal technical documentation; Mentor other engineers in systematic debugging and root-cause analysis.
Seniority
Senior, hands-on IC
