April 5, 2020
Software engineering is hard, no doubt about it. Sometimes it seems that our profession is full of snake oil salesmen. New technologies are created and evangelized for monetary reasons without bringing progress to the field. I have been coding for over 20 years. Trust me, every six months, you need to be updating your skills, or else you will get outdated—nothing worst than the old guys that got stuck with the new Cobol: the monolith J2EE WebSphere.
...
July 7, 2019
Through my career developing software, I have noticed a behavior that can be perceived as a sign of commitment but is a tactic that has negative consequences for the whole organization. To be more specific, I will describe a moral hazard found in many teams: working additional hours at the office to create an illusion of dedication.
At the beginning of my professional career, as an intern working for a large financial organization in Brazil, I observed my colleagues staying past 6 pm at the office because that contributed favorably to the performance evaluation.
...
Enforcing Quality through Tests and DevOps Practices # Let’s talk about tests. # There are different types of tests for the whole software development life cycle.
Unit Tests are the smallest and fastest of the tests, validating code inside method and functions. They cover most of the codebase because they can validate the business logic in a granular way, including its negative cases that can produce errors. More advanced implementations of unit tests use Generative and Mutation techniques to check all code paths while reducing the boilerplate.
...