Senior Performance Engineer Test
About the Role
The Senior Performance Engineer is responsible for defining, implementing, and evolving the performance engineering strategy for ICANN’s mission-critical applications and services. This role ensures that software systems meet performance, scalability, reliability, and resiliency objectives before production deployment. The ideal candidate combines strong software engineering skills with deep expertise in performance testing, workload modeling, capacity planning, observability, and cloud-native architectures.
Working closely with software engineers, DevOps, Site Reliability Engineering (SRE), Product Management, and QA teams, this individual will proactively identify performance bottlenecks, optimize system behavior, and establish performance engineering best practices throughout the Software Development Lifecycle (SDLC).
Responsibilities
- Performance Engineering Strategy
- Define and drive the organization’s performance engineering roadmap.
- Partner with engineering and product teams to establish non-functional requirements (NFRs), SLAs, SLOs, and performance acceptance criteria.
- Develop performance testing strategies for new products, platform enhancements, and production releases.
- Identify performance risks early and recommend mitigation strategies.
- Performance Test Design & Development
- Design, develop, and maintain reusable performance testing frameworks and automation.
- Build realistic workload models that simulate customer usage patterns.
- Develop load, stress, endurance, spike, scalability, and capacity tests.
- Create synthetic datasets and test environments that closely mirror production.
- Integrate performance tests into CI/CD pipelines.
- Performance Analysis & Optimization
- Execute performance tests and analyze throughput, latency, resource utilization, concurrency, and system stability.
- Identify bottlenecks across application, API, database, middleware, caching, messaging, and infrastructure layers.
- Profile applications using APM and profiling tools to isolate CPU, memory, thread, and I/O issues.
- Collaborate with engineering teams to optimize application performance.
- Validate performance improvements through repeatable benchmarking.
- Cloud Performance & Infrastructure Validation
- Evaluate application performance in Kubernetes and cloud-native environments.
- Validate autoscaling behavior, resilience, failover, and disaster recovery scenarios.
- Benchmark infrastructure scalability across compute, storage, databases, and networking.
- Partner with DevOps and SRE teams to ensure production-like performance environments.
- Support capacity planning and infrastructure sizing.
- Observability & Production Performance
- Develop dashboards for performance KPIs using Grafana, Prometheus, Datadog, New Relic, or similar platforms.
- Monitor application health and establish proactive alerting.
- Analyze production telemetry and recommend architectural improvements.
- Participate in production readiness reviews and post-incident performance analysis.
Requirements
- Bachelor’s degree in Computer Science, Software Engineering, or related discipline. Master’s degree preferred.
- Minimum eight (8) years of software testing or performance engineering experience.
- Minimum five (5) years designing and executing enterprise-scale performance testing.
- Minimum five (5) years of automation development using Java, Python, or similar languages.
- Minimum three (3) years working with Kubernetes and cloud-native applications.
- Minimum three (3) years integrating performance testing into CI/CD pipelines.
Skills
- Strong understanding of distributed systems, microservices, APIs, and cloud-native architectures.
- Expert knowledge of performance testing methodologies including:
- Load Testing
- Stress Testing
- Endurance (Soak) Testing
- Spike Testing
- Scalability Testing
- Capacity Planning
- Proficiency with performance testing tools such as:
- Apache JMeter
- Gatling
- k6
- Locust
- BlazeMeter
- Experience developing automated performance tests using Java, Python, or JavaScript.
- Strong understanding of HTTP/HTTPS, REST APIs, WebSockets, gRPC, and messaging platforms.
- Experience with Kubernetes, Docker, AWS, Azure, or Google Cloud Platform.
- Experience with observability platforms including Prometheus, Grafana, Datadog, Dynatrace, New Relic, or AppDynamics.
- Strong understanding of relational and NoSQL databases and performance tuning.
- Knowledge of caching technologies such as Redis and Memcached.
- Experience with Linux/Unix environments.
- Strong analytical and troubleshooting skills.
- Excellent verbal and written communication skills.
- Ability to communicate technical findings to both engineering and executive stakeholders.
- Experience with API performance testing.
- Experience tuning SQL queries and databases.
- Experience analyzing JVM or .NET runtime performance.
- Experience with distributed systems, messaging technologies (Kafka, RabbitMQ, etc.), and containerized applications.
- Experience with DNS, RDDS, RDAP, EPP, Registry-Registrar model, or Internet infrastructure is highly desirable.
- Fluency in English (written and spoken); additional languages are a plus.
Pay
Targeted base salary range: $100,000 – $140,000, plus 20% bonus and benefits. The salary range provided is a general estimation based on the primary location. Final compensation packages vary by geographic region, candidate’s location, work experience, knowledge, skills, and other compensable factors.