Bye business logic, welcome Quality Assurance

Woah! Long time since last time I’ve written a blog post, may be worth to write down an update. What happened since my last post? I’ve lost a lot of time in failing ideas 😅 and many things changed in my personal life too.

I’m considering to restore this blog, it’s something I liked to use and with this design, really feels like a personal notebook.

Let’s switch to something more interesting… why Quality Assurance? Because since 5-6 years I’ve changed role and now I consider myself a QA developer.

Even if I’ve never found a single definition of what a QA developer should do related to web, let’s say that it’s a role mainly focused on everything that’s related to the quality of something related to the web, so:

  • the quality of the user experience
  • the quality of the user interface
  • the quality of the software
  • the quality of the process to release that software
  • etc…

This is often translated to write a requirement plan before the release of a software and the maintenance of the related tests, but I’ve accepted this role because I think there’s more in this role.

I must admin I’m still closer to developers than to the final user, because I strongly believe that a better software could drive everything else.

This is nothing new and, coming from the PHP world, there are a lot of “phases” a software has to traverse before reaching the final user, if all these phases are optimized/improved than also the final result will be better, because filtered by many tools and practices.

The first example that comes in my mind is linting. I often imagine a software improved through linting, where the quality bar is raised a small rule at time.

Another example is testing, for example this is something I do daily.

Testing can be done on a lot of levels:

  • unit testing
  • integration testing
  • API testing
  • End to End (aka. E2E) testing
  • performance testing
  • visual testing
  • etc…

For sure I’ll write a more detailed post about it.

Another aspect of the QA that’s often understimated is the monitoring: imagine to have a really complex domain that you obtained already in an advanced state and you have to maintain it and add features since time zero. What can you do to make sure you are not introducing bugs during the process? You can be as defensive as possible but you can’t be 100% sure you didn’t introduce bugs during your work.

Here is where monitoring, through logging or tools like Sentry, can help you.

Because even if you miss something you’ll be able to detect it as soon as possible and fix it immediately.

These are few examples of how the Quality Assurance can help to improve everything during the software lifecycle, I’ll try to write them more in details on this blog in the coming months. ✌️