• Building Conversational UI Using AI Agents From Scratch

    I’m excited to share with you the launch of our brand new course: “Building Conversational UI using AI Agents from Scratch: No Frameworks”. This course is designed for those who wish to delve deeply into the world of AI development, learning how to construct sophisticated AI agents without relying on...

  • Q&A with Alexsandro Souza

    What kinds of software projects have you worked on before? Which operating systems, development environments, languages, databases? In my 13 years working with software developement, I have worked on variated projects and industries. I started my career as a web developer at a marketing agency developing big companies’ websites using...

  • Tech leadership playbook

    Follow me on Linkedin if you like provoking posts about software development. Let’s socialize! It is often very challenging to think for yourself, and it is easier to maintain the status quo. I have a unique view of the software development world, and after researching and reflecting on different topics,...

  • How to test software effectively

    Many engineers believe that for every public method of every class, they must create a corresponding “unit test.” That wasn’t what many meant by “unit” when the term “unit testing” was first used. The problem with that definition of unit testing is that you’re no longer focused on testing behaviour...

  • How to structure your code effectively

    It is time to stop structuring your code as beginners framework tutorials once taught you. By now, you should be capturing the domain knowledge in working code and protecting that knowledge in your context from contamination and overreaching from other contexts. What do ProductRepository and BasketRepository have in common? Nothing....

  • Agile estimation and planning

    Why estimating? If our estimates are always wrong, and most of the time they are, why should we even attempt estimating in the first place? I can easily identify at least four reasons why we still do estimations: Arrive at a shared understanding of the user story Split user stories...

  • Practical ways to improve team communication

    Communication is understood to be a critical success factor for software projects. Still, online articles are devoted primarily to formal information flows rather than practical ways of improving communication. In this article, I will provoke you to see the importance of popular tools and processes to help improve communication within...

  • Recommended Software development life cycle

    This is my SDLC framework for teams to manage the complexity of software development and ensure that products are delivered successfully. We want to constantly release to production based on team communication, QA engineers’ review, QA roles and responsibilities and automated tests. By integrating CI/CD into the SDLC process, development...