Construindo uma ferramenta em público
Olá pessoal, tudo bem?
Me chamo Thiago, tenho 31 anos e sou gestor de algumas áreas (aproximadamente 90 pessoas) em uma empresa de tecnologia. Estou aqui para compartilhar um pouco de uma jornada de aprendizado que venho trilhando. Eu não sou programador, não trabalho diretamente com tecnologia e não pretendo trabalhar (acredito que trabalhar diretamente com programação tiraria um pouco da 'paixão' que tenho pelo assunto hoje).
Tenho estudado desenvolvimento web e análise de dados para aplicar ao meu trabalho e facilitar minha vida há uns 3 anos, mais ou menos. Isso já me ajudou muito no trabalho, inclusive. Fiz várias integrações entre plataformas, automações, análises e mais. Com isso, recentemente resolvi juntar um pouco de tudo que estudei ao longo dos últimos tempos e construir uma ferramenta para alguns dos times que gerencio.
Então, sou apenas um entusiasta interessado por tecnologia e programação, que gosta de construir coisas e que talvez, no futuro, possa transformar isso em uma fonte de renda adicional - mas a ideia inicial não é necessariamente essa. Recentemente, comecei a construir uma ferramenta com dois intuitos:
- Tentar resolver uma dor latente minha e de 4 times meus;
- Tentar aprender o máximo na jornada sobre o que é desenvolver um software de verdade;
O que estou construindo?
Estou construindo um pequeno software que "monitora" pipelines do Hubspot. Basicamente ele faz algumas análises de tempo, dá as estatísticas principais em um dashboard e notifica (via notificações e/ou e-mails) o proprietário de negócios ou tickets parados há muito tempo (de acordo com o histórico dos últimos 12 meses desse pipeline).
Quais tecnologias estou usando?
Estou usando Django como framework de desenvolvimento web, por dois motivos principais:
- Meus conhecimentos em outras ferramentas era precário ou inexistente;
- Facilita o uso de bibliotecas do Python que já domino;
Além disso, como banco de dados estou usando o PostgreSQL. Porque? Porque sim. Não sei se foi a melhor opção, mas não tenho habilidade técnica para decidir. Só foi o tutorial mais fácil e interessante que encontrei por aí.
Em qual estágio está a construção?
Atualmente estou trabalhando nas análises. Essa parte está bastante adiantada porque eu já fiz a maioria dessas análises no trabalho do dia a dia. Além disso eu já deixei "pronto":
- A autenticação (login/logout/registro/mudança de senha/login social com Google)
- A conexão com o Hubspot e extração de dados
Quais os próximos passos (na minha visão)?
Eu gostaria de ter um MVP funcional até o final do ano, para colocar na mão dos meus times e aprender. Para isso, ainda preciso aprender muito sobre:
- Como fazer deploy de uma aplicação dessas em produção;
- Como fazer isso de forma barata e escalável;
- Como cuidar das tarefas assíncronas (estou começando a aprender sobre Celery e RabbitMQ)
Fora todo o resto que eu nem sei que ainda não sei.
Enfim, quis compartilhar um pouco dessa jornada aqui para criar um certo comprometimento comigo mesmo e com terceiros de terminar esse projeto e claro, receber conselhos e ajuda de profissionais que já são infinitamente mais experientes do que eu. Pensei até em criar algum tipo de canal para compartilhar essa jornada periodicamente, mas, ainda não sei se vou fazer. Pelo menos por enquanto, acho que vou compartilhando o andamento por aqui - se vocês acharem legal acompanhar.
E aí pessoal, alguma dica ou conselho para pessoas que, como eu, ainda nunca tiraram um projeto do papel e estão loucos de vontade de aprender?