Description
The Software Performance Quality Engineer will lead QA performance activities and initiatives within a scrum team using the agile process.
Duties & Responsibilities
- Reviews and evaluates product and solution designs for potential quality issues; provides tangible feedback based on results and root-cause analysis and designs and implements solutions to improve product quality and mitigate risk of failures.
- Provides domain-specific expertise and overall leadership and perspective to cross-organization projects, programs, and activities
- Drives innovation and integration of new technologies and quality initiatives into projects and activities in the organization.
- Provides guidance and mentoring to less-experienced staff members
Core Skills
- Understand how to find and fix performance bottlenecks and stability issues (ie, intermittent problems) in a high volume environment (tracing a transaction through myriad log files spread across multiple machines...)
- Understand how to find (and/or create) tools in order to increase productivity when troubleshooting
- Understand how to performance tune code... written in at least one of the following programming languages (Java, JavaScript, C).
- Be familiar with standard programmer-level tuning concepts (profiling, caching, algorithm scalability, data structure trade-offs, etc.)
- Understand how networks, load balancers, and Routers work and how to troubleshoot them
- Deep understanding of how an OS works, how a web server works, and how to configure/troubleshoot/tune/administer them
- Ability to work independently, and assertively
Other skills:
- Excellent communication skills (verbal and written)
- Performance-Center and VuGen experience, with HTTP and Ajax Scripting protocols
- Experience troubleshooting, configuring, and tuning WebLogic, Tomcat, and Apache
- Skill in analysing Java garbage collection dumps, and tuning GC behaviour for performance and stability
- Experience in Java, JavaScript, C, Shell Scripting, Apache jMeter, Yslow, and all the other j* tools
- Understand how to design code to interact with a database (Oracle, SQL server, etc.) in a performing manner
- Experience with web services
- Experience with Eclipse, SVN, ALM