Currently I'm on a project where my objective is to obtain the best code quality.
We have unit, integration & e2e testing. The e2e tests are written by the Business team in cucumber and these tests are the final condition to achieve the end of a user story. Also, all features must have the metrics that we want to change. I added mutation tests also, and we have near 100% of the mutants killed (so, we also have 100% of coverage).
We established the most restrictive rules in Sonar, and all our code has A grade. We also have stress tests and we are confortable with the results.
I'm really proud of this project, and yes, having this level of quality really helps to have security of our product, and now we develop faster than ever.
Currently we are a 4 dev team plus me as a dev/team leader. We do code reviews with 1 approve from a team member and another approve from a developer of other team to get a new perspective & check if our business code is understandable.
For hotfixes we don't expect approves because... it is a hotfix and sometimes the delivery time is critical. We didn't have this kind of issue in the last 2 months, when we established this policy of quality first, not only in code but also in the feature definition step.
We came from a feature-first environment and after these changes the business/product team can see the increment of costumer approvals because we reduced the bugs to almost-zero.
So... what is the next step to achieve uber-quality?
