Why developers can't test (or can they?)

andagon Team · 08.07.2022 · 4 min. reading time

This article is primarily aimed at business leaders/managers of startups who need to decide whether to allocate a separate budget for the tester position or pay extra for the developer's hours.

A tester creates a combination of a wide range of user scenarios and tries the software on different devices to ensure they work as expected.


Disclaimer:

  • To avoid the long-term risks of a program not functioning properly, hiring a specialist to provide an outside perspective is always recommended. This not only saves time and money, but it also helps build relationships with prospective clients who are more willing to work with you further down the line.*

Here are just some of the reasons why you should hire an external tester:

"Having the ability to develop" does not necessarily mean "having the ability to test".

Testing is a skill that everyone should learn and get down. No, not everyone knows how to do it because they need the experience of actually doing it. In theory we all know what to do but just don't put the time or effort in.

Soft vs Hard

A good understanding of soft skills is important, especially if you are a tester. Developers are often not skilled in writing, so testers should be allowed to write detailed reports. The reason is that developers don't want to devote too much time and energy reporting on bugs they fix which can lead to deviations between the product's code and what was done in production.

It's easy to overlook mistakes when they're yours, but when you see them in someone else, it's difficult

When you think "this is mine, I can't make a mistake" and the desire to skip testing comes up - it's because there are so many parts of a project that you remember. It's worth weighing this against the risk that it may not work!

I like the conceptual side of development, but I'm not a huge fan of the testing aspect..

Most programmers have a desire to develop also known as write code, build the architecture, or keep track of complex code relationships. However, given the time-sensitive nature of most development projects these days - there is a sense of urgency to complete tasks quickly and without fail.

Typically, the testing process is fundamentally different than that of coding and can be compared to asking a chef from a restaurant to switch from cooking meals to baking cakes. They may be able to cook cakes, but they are not used for this type of work and usually do it poorly or not at all

Professional deformation

Programmers often take a deep dive into the code they write by getting inside the software they created and seeing it with a new set of eyes. Most users, on the other hand, only see things through their own set of eyes and will not be as critical. Furthermore, only the tester can see the product with a fresh customer lens because they don't have the company's biases. The tester is more likely to uncover all potential customer scenarios.

Money

Testing often takes less time than designing or coding because testers are cheaper to hire. It doesn't make sense for you to assign them a developer's job!

For most startups, testing is the only aspect of the development process that can be outsourced. Testing often takes less time than designing or coding because testers are cheaper to hire. It doesn't make sense for you to assign them a developer's job!

Risk of losing developers

Developers have a lot of knowledge and know how important it is. They often dedicate time to self-development, which in the future can lead to getting a promotion. What's the point of promoting an employee who spends a lot of time on (financially and organizationally) activity that can be performed by a less qualified colleague? If a developer is asked to spend too much time testing new software, he's likely to look for another job.

We can think of only 2 reasons not to hire a tester:

As the creator of the product, understanding it through and through is best. The developer can pinpoint its most sensitive or weakest points.

When you do good work, it is a great feeling to know that you will be appreciated and rewarded. It also feels great when your work is appreciated by colleagues too!

Programming is a skill that can be learned with time and dedication. There are many tutorials online, some of which offer certification in programming. If you are interested in programming and would like to learn more about it, you should visit these tutorials and see if they are for you!

Conclusions

We need a tester for every project and that person should work closely with the manager and the developer.

Testers are the gatekeepers of quality. They are the ones that make sure that every project is up to code and any bugs will be documented, tracked, and eliminated. Testers can also help with design decision-making by providing feedback on usability and layout.

No matter how cool the code may be, it is important that a user doesn't get hurt while using the final product. Only testers can track whether any harmful effects occur while using it.

More articles