Heitor Gouvêa
menu

O desafio de desenvolver um produto digital de alcance global em 15 dias

June 29, 2018

Em Agosto do ano de 2017, escrevi uma publicação intitulidada “Há quase dois anos longe de casa”, aonde eu conto um pouco da experiência de sair da casa dos meus pais no interior de MG, e me mudar para SP para trabalhar como Desenvolvedor. Me recordo que quando finalizei a mesma, passou pela minha cabeça o seguinte pensamento: “Cara, que experiência de vida foda!”.

Eu mal poderia saber que logo adiante, em Dezembro ainda do mesmo ano, outra experiência ainda mais incrível e assustadora bateria na minha porta: o desafio de desenvolver em apenas 15 dias um produto digital — uma plataforma de gestão de vendas — cujo o mesmo tinha potêncial para adquirir um alcance internacional.

Hoje eu não atuo mais na área de desenvolvimento de software, mas já fiquei dois anos trabalhando diretamente nessa área, aonde passei por projetos de empresas privadas, públicas, desde pequenas startups à empresas multinacionais e em nenhum momento um desafio tão grande como este foi me imposto.

No primeiro instante, todo mundo achou aquilo uma loucura, uma missão impossível. Mas logo nos primeiros dias, este pensamento sumiu. Nos foi apresentado a estratégia e o plano de ação para concluirmos com êxito tal missão. Para esse desafio foi utilizado muito Javascript, de ponta a ponta. O Front-end foi feito com ReactJS e ReduxJS, o Back-end com NodeJS usando o framework HapiJS, nosso banco de dados foi totalmente em MongoDB, e nossa infraestrutura estava hospedada na AWS em contêineres do Docker, utilizamos o Kubernetes para orquestrar os mesmos. Podemos dizer que o projeto seguia a arquitetura baseada em micro serviços e totalmente distribuído.

Nosso time foi constituido ao todo por colaboradores de 3 empresas. Ao todo o time de tecnologia tinha 16 pessoas fixas codificando durante esses 15 dias, e em certos momentos tinhamos “reforços” de cerca de outras 4 pessoas, contabilizando um total de 20 participantes na parte de codificações do projeto — não vou entrar em detalhes sobre a parte de negócios, pois não estive presente em nenhuma das etapas da mesma.

Como 4 dessas pessoas não estavam fixas em nosso time, vou “desconsidera-las” da nossa formação, sendo assim, nosso time estava na seguinte estrutura: tinhamos 6 pessoas cuidando da parte de Front-end, 3 na parte de Infraestrutura, 1 Designer/UX, 1 Product Owner e 5 desenvolvedores Back-end.

A principal Stack de desenvolvimento foi o JavaScript, os colaboradores de duas das empresas presentes no projeto tinham um excelente domínio da mesma, porém, o time da terceira emrepsa ainda não estavam familiarizado com tal tecnologia, e isso não foi um problema, o Erick Wendel, nosso CTO na época, conseguiu pensar rapidamente em uma solução: um bootcamp de Imersão em Desenvolvimento de APis com Node.js de duração de 16 horas, o suficiente para colocar todos os colaboradores do projeto na mesma página.

Depois de termos todos os colaboradores do projeto nivelados no quesito de tecnologia, era hora de entender a raiz do problema. Ficamos imersos durante 1 dia na área de vendas de uma empresa a qual consideramos como stakeholder acompanhando de perto todo o processo, para sentirmos na pele as dificuldades, e assim poder visualizar as melhores formas de resolver tais dores.

Image

A partir daí, dedicamos cerca de 2 a 3 dias para desenharmos — em papéis mesmo — todas as telas do sistema que viria a ser desenvolvido. Antes de tudo isso, todo o escopo do projeto já tinha sido feito pelo time de negócios, o time de tecnologia só fez alguns ajustes mínimos.

Logo após essa etapa, começamos a codificar toda a plataforma, a dinâmica era a de “entregas continuas”, porém, em um período bem menor do que o normal. Fazíamos as entregas a cada 2 dias no início, e posteriormente passamos a fazer 2 entregas por dia, sendo uma no meio do dia, e outra no final. Em muitos destes dias foi necessário fazermos algumas horas extras para darmos conta do recado.

Todas as tasks foram categorizadas por prioridade, e divida para cada um dos membros da equipe através do Trello, e como o nosso tempo de produção do produto era pequeno, faziamos duas “daily meetings”, sendo uma as 9hrs da manhã e outra no final do expediente.

Através das experiências e do dia-a-dia deste projeto, pude evoluir meu lado de relacionamento interpessoal, compartilhar um pouco da minha experiência e conhecimento, muitas vezes até debatíamos uns com os outros sobre qual era a melhor forma de fazer X coisa, afinal isso também é necessário.

Mas posso garantir para vocês que foi uma experência extremamente agregadora, desafiadora e que deu certo no final. O produto ja substituiu a versão anterior do cliente e agora está preparado para ser lançado para o mundo!


Heitor Gouvêa: com mais de 3 anos de experiência no campo da segurança da informação ofensiva, hoje atua de forma independente como Pesquisador de Segurança da Informação, além de ser o principal desenvolvedor do projeto Nipe, ferramenta responsável por garantir o anonimato a seus usuários, presente em várias distribuições Linux como: Black Arch, Weak Net e LionSec Linux.

Se tu acha que o escritor desse texto tem algum potencial, dá uma olhada nas outras coisas que eu crio. Tenho uma newsletter semanal sobre coisas possivelmente interessantes e até penso em criar um canal no youtube futuramente. Mas falando sério, assina a newsletter que é bem legal e esse é o jeito que a gente pode continuar trocando ideia.