Good performance engineers need to know what’s “under the hood”
Recently, I was involved in a debate about whether it’s necessary for performance testers to understand the architecture of the system in order to become a specialist in performance/ performance testing/ performance engineering. At Abstracta, this is something we strongly believe in and stand for because the steps involved in performance testing require an in-depth knowledge of the system.
Here is a brief summary of the three main steps of performance testing:
- Test Definition
- Automation
- Execution and Monitoring
In defining the test, the main knowledge required of performance testers pertains to the business and knowing what the user behavior will be and expectations, among other things.
For the automation, the knowledge required is about the use of automation tools and communication protocols (HTTP, SIP, SOAP, ISO8583, etc.)
For executing and monitoring, performance testers must have an understanding of the fine details of the system’s components. The term “components” implies both internal components and the base software used: web server, database server, JVM, .NetFramework, etc. In order to add value at this stage, we must be quite experienced in testing and willing to understand how things work “at the low level”.
This variety of skills required is what makes this role an exciting challenge because there are always new technologies and solutions that are ever more complex.
At Abstracta, we often say that, testers, like doctors, diagnose exactly what is going on with the system and suggest remedies.
In short, we think that in order to be good performance testers, IT IS INDEED necessary and important to be knowledgeable about the architecture of systems and the details of their components. We believe its imperative for performance testers to understand the architecture of a system so it is our mission to help them with this understanding. Isn’t that what makes a good doctor?
Need a quick diagnosis? Contact us and let’s get started.
Recommended for You
[Infographic] Why Should I Become a Performance Tester?
Performance Testing in Production
Tags In
Sofia Palamarchuk
Related Posts
BlocklyJMX Review
Reviewing JMeter’s new online editor BlocklyJMX is a web-based alternative to JMeter for viewing and editing test plan files. If you aren’t familiar with JMeter, it’s an open source application designed to load test functional behavior and measure performance. Still in its early stages of…
Top Performance Testing Tools to Prepare Your Website for Black Friday
The e-commerce industry’s busiest day is just around the corner… Are you ready? Everyone knows that Black Friday and Cyber Monday are the most popular online shopping days of the year (besides Amazon’s Prime Day), but it’s also a day that is notorious for website…
I agree 101% for thoughts presented. At the end performance engineer is the soul owner of the of an application performance.
I would argue that the measure of how performance work adds value is how it increases understanding. Testing, in of itself, doesn’t add business value. Today, the state of the practice in performance testing is pretty dismal. A lot of performance testing produces results that are meaningless or misleading. It’s so, so easy to do a performance test that doesn’t measure anything of value. Without an understanding of the architecture of a system there is no guarantee that the performance test is measuring something real.
Very nice contribution! Also, I think that by increasing understanding, at the end, helps to increase the value 🙂
Hi,
I want to know that ,why a performance tester need to know about the architecture ?
Hello! I have an example from a project last week. We were testing a system and we couldn’t find out why we were observing bad response times in the JMeter report, while the logs in the Tomcat seem to be very small. The thing was that the customer forgot to tell us that there was another component in the middle (an Apache), so, as we didn’t have enough information about the architecture, it was very hard to analyze results and find an optimization.
[…] Is the System Actually Running Slow? How important is it for performance testers to understand the architecture of systems and the detail… […]