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
Black Friday 2020: Avoid E-Commerce Site Crashes and Slowness
Everything you need to know to technically prepare your website for Black Friday and Cyber Monday While it’s coming down to the wire for retailers to get their websites fully prepared for a successful holiday season, it’s not too late to optimize them in order…
Designing Performance Tests With a Little Bit of Futurology
Futurology: noun, systematically forecasting the future, especially from present trends in society I’m not going to lie, I can’t predict the future. I don’t even know what I am going to eat for dinner most days, but in testing, sometimes we have to put our…
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… […]