Content produced by our dev team manager Luiz Henrique Felix.
At the start of the pandemic, we didn’t know what to expect. When we heard the news that we would have to work from home, it was a little scary. I had been in the position for just over a month and knew that a major challenge lay ahead.
The first weeks in home office were the most challenging, because we needed to somehow maintain the same dynamic that we had in person, only now, at a distance, and how could we do that?
That’s when I began my studies on agile methodologies, which I will describe in the following paragraphs.
Right when I started studying agile methodologies, the first thing I came across was “The Agile Manifesto,” which is a statement of the principles that underpin agile software development. It is based on twelve principles, with the central idea being customer satisfaction through rapid deliveries and continuous improvement. To achieve this, our main tool is dialogue among teams, along with involving other teams—such as sales and support—more closely in the development process, so that, with feedback gathered from everyone, we can continually improve the software and meet customer needs.
One of the things I’ve learned along the way is the true meaning of the term“MVP— Minimum Viable Product.” An MVP is simply the delivery of software that the customer can already use, even if not all the features planned in the roadmap have been implemented yet. This allows us to speed up delivery and continue improving the software, because once the customer is using it, we can make improvements based on the feedback we collect, in other words, everyone wins.
To make the deliveries happen in the timeframe defined in the roadmap, we use some methods that help us in these deliveries, along with the Scrum framework. This framework is not a linear process, instead it is a set of concepts and techniques within which you can employ various other processes or techniques. Analyzing the relative effectiveness of management and development practices, so that you can improve them. He gives us several techniques that can be used for management, and one of them is daily meetings and sprint meetings. The daily meetings are meetings of 15 minutes maximum, that we do to align what will be the activities to be performed on the day and what will be the team’s direction, I as a manager of these teams ask three basic questions: what they did yesterday, what they will do today, and if there is anything that could prevent the activity that would be performed today, from not being performed. With these three questions we get a comprehensive view and know if we might have any possible problems, and also address impediments. Sprint meetings are meetings that usually take place every week and last up to an hour. The teams and I meet with the management, and we present the progress of the activities that were done in the period, collect their feedback, and adjust the activities based on this feedback, so we have a direction for the next sprint.
Along with Scrum, we use ITIL,the Information Technology Infrastructure Library. It is a set of detailed best practices for IT service management that focuses on aligning IT services with business needs and seeks to promote management geared toward the efficient delivery of services to customers. In practice, ITIL serves as a guide; rather than defining processes, we follow best practices, which in a way makes team management and process workflows much more dynamic, since we aren’t tied to specific processes X or Y. We also use a process workflow technique called Kanban, a Japanese term meaning “card.” The system was named by the company that developed it, Toyota. It is nothing more than an agile, visual system for production control or task management, where we use a virtual board with columns labeled as follows: ‘backlog, in progress, waiting for something/someone, approval, and done’ and cards that “move” between these columns as activities are completed. Kanban greatly facilitates the progress of project development, as it allows us to clearly and visually see which stage of the process we’re in, with status updates always recorded on the cards for each activity, so we can use this information during sprint and review meetings.
Among all these methods, frameworks and tools, the most important will always be the one that best fits the needs of your team: don’t get stuck on framework or methodology x or y, because this can instead of helping, end up hindering and limiting your team, instead use the best of each based on your reality, always keeping in mind the ultimate goal, which is the agile software development and good team managementI’m always revising to have time to change the direction of the teams if necessary, making the development process much more dynamic.
