Job Responsibilities:
- Develop, execute, and maintain performance test strategies and plans, ensuring that they align with project objectives and timelines.
- Design and create performance test scripts using JMeter, Java programming, and Fiddler, ensuring that the scripts are efficient, maintainable, and scalable.
- Leverage tools such as Dynatrace, Datadog, and Splunk to monitor, analyze, and optimize application performance, identifying bottlenecks and potential areas of improvement.
- Perform analysis, heap and thread analysis, and other diagnostic activities to troubleshoot performance issues and provide actionable insights for resolving them.
- Collaborate with development and operations teams to drive performance tuning efforts, recommending, and implementing optimizations to improve application performance, stability, and resource utilization.
- Provide architecture knowledge and guidance to ensure that the application design and implementation are optimized for performance, scalability, and reliability.
- Establish and enforce performance engineering best practices, processes, and guidelines, ensuring that they are consistently followed by the team.
- Train and mentor junior performance engineers, helping them develop their skills and advance in their careers.
- Continuously research and stay up to date on the latest performance engineering tools, techniques, and industry trends, and incorporate them into the company's practices as appropriate.
Skills and Experience Required:
Requirements:
- 2-5 years of experience in performance engineering, with a focus on performance testing, tuning, and troubleshooting. Strong programming skills in Java, with experience in JMeter scripting and Fiddler.
- Expertise in using performance engineering tools such as JMeter, Dynatrace, Datadog, and Splunk.
- In-depth knowledge of application architecture, including the ability to analyze and optimize performance at the system, database, and application levels.
- Experience with analysis, heap and thread analysis, and other diagnostic techniques for troubleshooting performance issues.
- Continuous Integration and Continuous Deployment (CI/CD): Familiarity with CI/CD tools like Jenkins and GitLab CI is essential for automating performance testing in the software development lifecycle.
- Containerization and orchestration: Knowledge of containerization technologies like Docker and orchestration platforms like Kubernetes is essential for optimizing application performance in containerized environments.
- Database performance tuning: Knowledge of SQL and NoSQL databases, along with their performance optimization techniques, is essential for a performance engineer.
- Cloud platforms: Experience with cloud platforms like Microsoft Azure is essential for performance engineers working on cloud-based applications.
- Load balancing and content delivery: Knowledge of load balancing techniques and content delivery networks (CDNs) is essential for optimizing application performance in distributed environments.
Education:
- Bachelor's degree in computer science, engineering, or a related field; or relevant experience.
Performance Engineer-GX