Why can’t a developer be a tester (or can?)

I have a heading – #obvious things… The bottom line is to describe briefly and convincingly those things that are clear to any developer with relatively little experience, but are completely not obvious to beginners and people of other professions.

This article is mainly for company managers / startup executives who need to decide – Should I allocate a separate budget for the “tester” position or pay extra for developer hours?

A tester is

a professional who checks if the application behaves adequately in different user scenarios on different devices and OS versions


Yes, a developer can be a tester. He can even test the result of his work. It may even convince you that a tester is not needed.

But in my opinion there is weighty reasons why it is worth hiring a separate specialist.

Good reasons to hire a dedicated professional

These are empirical conclusions, but obtained from the analysis of their experience in commercial development.

“Knows how to develop” is not equal to “knows how to test”

You must learn to test separately. Not every developer knows how to competently write various types of tests, cover all user cases, and automate the process.

Yes, we all know how to do this in theory, but in practice, not everyone has experience, because it is the other profession.

Soft vs Hard

For a tester, soft skills are extremely important. For the reason that a tester must be able to write good reports, structure the semi-empirical results obtained, and describe in detail the prerequisites and consequences.

Not every developer will want and be able to write a good longread output of the work done. He is more likely to come up with a neural network that will write this for him.

Finding mistakes in your own work is always more difficult than in someone else’s.

The subconscious “this is mine, I could not be mistaken” and the more terrible “I am sure that it will work, because I remember all the lines of the code, there are definitely all the necessary checks” will constantly make you want to skip some part of the testing.

Likes to develop, not test

Most programmers are eager to “develop” – to write code, build an architecture, keep in mind the complex connections of pasta code, review the code …

The testing process is different – yes, the code is also written there, but the approach is different. It’s like offering a restaurant chef to bake only pies – he can, but most likely does not want to and will do it poorly.

Professional deformation

The programmer sees through and through the product created by his own hands and uses it, having this vision.

And an ordinary user will see the application with different eyes. And only a non-product tester can look with almost the same eyes as a user → a tester is more likely to cover all real user cases.



I could be wrong here, but usually an hour of a tester costs less than an hour of a developer (how much is correct – a question on a thread of 300kk comments). Accordingly, it is simply not profitable for you for the developer to spend time on tests.

Good reasons not to hire a tester

I could only think of two:

  • no one knows a product better than the person who developed it. it is the developer who knows the weakest or most sensitive points;

  • a programmer can do good tests (if he spends time on training), but only if he is sure that his work will be appreciated, paid and will not be scolded for the number of bugs found (made by him and his colleagues).


I am sure that any project should have a full-time tester. And he must be in close communication with both the manager and the developer.

Because the code was not cool, the main thing is that the user should not be painful to use the final product. And only a tester can keep track of this. IMHO)

More #obvious things and about mobile development in the tg channel – t.me/dolgo_polo_dev

Similar Posts

Leave a Reply