Foi há 11 meses que comecei a trabalhar no projecto Sky Store. Quando entrei no projecto já este tinha iniciado o desenvolvimento da 2ª fase e apesar da adaptação não ter sido tão rápida como gostaria, olhando agora para trás tenho de compreender que a dimensão do projecto torna difícil uma adaptação mais rápida.
Estamos a falar de um projecto de múltiplas equipas, em diversos fusos horários, com requisitos que nos obrigam a pensar tudo ao detalhe pois temos de servir milhões de utilizadores, nada pode ser deixado ao acaso. Foi a primeira vez, em já 10 anos que levo de trabalho nesta área, que senti que a qualidade final era o mais importante, que não havia cá prazos loucos impossíveis a cumprir, que não havia necessidade de fazer noitadas e fins-de-semana, porque tudo é planeado com rigor e com tempo para fazer as coisas bem.
Apesar de todas as equipas seguirem a mesma metodologia de desenvolvimento, com pequenas nuances entre elas, vou falar um bocadinho mais em concreto da minha equipa, a equipa do Core. A equipa do Core, e traduzindo é a equipa responsável pela parte mais nuclear da aplicação, somos a equipa com menos visibilidade para o utilizador final e ao mesmo tempo somos a equipa mais crítica porque somos o início de tudo e se nós falhamos vamos comprometer o trabalho de todas as outras equipas. O nosso foco principal é desempenho, segurança e estrutura da aplicação, estamos ainda algo longe dos frontends com os utilizadores finais.
As equipas utilização Scrum como metodologia de desenvolvimento, dailys, retrospectives, demos, planeamentos, desenvolvimento iterativo, etc. Isto facilita muito a integração de uma pessoa nova, a comunicação constante, o envolvimento com tudo o que se está a passar, ajuda imenso a começar a perceber rapidamente as várias características do projecto. Foi a primeira vez que trabalhei efectivamente com uma metodologia ágil de desenvolvimento e se tinha alguns pontos de interrogação iniciais porque na teoria parecia-me que as premissas era algo fortes, depois com o decorrer dos tempos percebi que realmente funcionava porque as regras acabam por ser mais flexíveis e adaptadas ao perfil da equipa.
Por falar em equipa, apesar de algumas alterações na estrutura ao longo destes 11 meses a equipa é composta por 1 scrum master, responsável por ser a cola entre os elementos da equipa e entre a nossa equipa e as restantes, 2 testers que essencialmente garantem a qualidade de tudo o que é feito e 6 developers que desenvolvem o código. Nada disto é estanque, nada disto é muito rígido, todos nós podemos desempenhar ou ajudar no papel de outra pessoa, há liberdade e flexibilidade para que isso aconteça, o que é óptimo na perspectiva que o conhecimento está disseminado pelos diversos elementos da equipa não tornando ninguém indispensável, e mesmo estando alguém de férias ou não podendo vir trabalhar por um outro motivo o trabalho dessa pessoa pode ser feito por outro elemento. Claro que isto só é possível não pela metodologia mas pela qualidade dos elementos da equipa que devo dizer são excepcionais. Já tive alguns colegas de trabalho que acho que são muito bons mas foi a primeira vez que numa equipa tão grande consigo dizer que o poder de decisão, a autonomia e a qualidade do resultado final de todos os elementos da equipa é elevadíssima.
Ao início foi mesmo intimidativo, o receio de errar, de não estar ao nível das expectativas, de não conseguir acompanhar esta equipa, costumo dizer que deixei de ser o tubarão do lago para ser um peixinho no oceano, foi mesmo a sensação que tive nos primeiros tempos. Mas todos eles me ajudaram imenso, sempre disponíveis, sempre a ajudar com agrado, por isso acabei por me conseguir adaptar, sentido-me hoje como mais um elemento válida desta equipa.
E o resultado deste trabalho foi para o ar no dia 15 deste mês, a 2ª fase deste projecto foi lançada para os utilizadores do Reino Unido e da República da Irlanda, e foi a passagem a produção mais tranquila que alguma vez tive ainda para mais dada a dimensão do projecto, e isto só foi possível pela qualidade do trabalho final que por sua vez foi possível pelo bom planeamento e prazos realistas de desenvolvimento. Este projecto podia ser um case study para 99% dos projectos desenvolvidos em Portugal, como fazer as coisas bem feitas em prazos realistas traz muito menos dores de cabeça a nível de suporte e a nível da satisfação do cliente final. Neste momento já estamos numa fase avançada do desenvolvimento da fase 3 que trará algumas novidades interessantes à plataforma, mas quanto a isso ainda não posso falar, só espero que o resultado final a nível de qualidade se mantenha.