Description
Key Skills: C++, Python, Linux, Performance Profiling, System Design, Hardware Counters, Microarchitecture, Cross-platform Development, OS Internals, Data Structures
Good to Have Skills: Experience with AMD uProf, perf, VTune, rocProfiler, knowledge of container environments, system-level debugging, distributed/HPC workloads (MPI, OpenMP), trace analysis, call stacks, sampling-based profiling models, AI/ML-assisted performance insights, GUI development frameworks.
Roles & Responsibilities:
- Design and develop system-level profiling tools spanning CPU, memory, IO, and power analysis for AMD platforms.
- Build and optimize data collection frameworks leveraging hardware counters, IBS, and OS tracing mechanisms.
- Develop low-overhead profiling infrastructure for large-scale and long-running workloads to ensure minimal performance impact.
- Enhance performance analysis pipelines including data processing, correlation, and visualization components for better insights.
- Enable cross-platform profiling support across Linux, Windows, and emerging OS ecosystems like FreeBSD.
- Work on advanced analysis techniques such as top-down microarchitecture analysis, pipeline utilization, and bottleneck detection.
- Contribute to CLI and GUI-based tools for performance debugging and visualization to improve user experience.
- Integrate support for runtime and framework-level tracing including OpenMP, MPI, Java, and Python environments.
- Collaborate with CPU, GPU, kernel, and compiler teams to enable new hardware features in profiling tools.
- Drive automation and intelligent analysis, including AI/ML-assisted performance insights for better optimization recommendations.
- Participate in architecture discussions, design reviews, and roadmap planning as a senior team member.
- Take initiative in mentoring junior team members to achieve the team's goal of on-time delivery.
Experience Required: Senior level experience in software systems design with expertise in performance profiling tools, microarchitecture concepts, hardware performance counters, and OS internals. Experience with distributed/HPC workloads and cross-platform development is highly preferred.
Education: Bachelor's or Master's degree in Electrical or Computer Engineering. Master's degree preferred