CodeGym /Curso Java /Frontend SELF PT /Criação de Produtos

Criação de Produtos

Frontend SELF PT
Nível 48 , Lição 0
Disponível

10.1 «As pessoas não nascem mais, elas são cultivadas»

Beleza, já que você ainda tá por aqui, vamos continuar. «E eu vou te mostrar quão profunda é a toca do coelho» (c)

Vou te contar como rola o processo de desenvolvimento de um produto. Vamos passar pelos passos desde o nível mais alto, global, até o mais baixo — a escrita do código. Acho que você vai ter algumas descobertas interessantes…

Produtos de TI modernos já não são mais escritos: eles são criados. Eles são montados a partir de bibliotecas, frameworks, programas e produtos de terceiros, ou até mesmo usam serviços online pagos ou gratuitos.

Um produto moderno é um verdadeiro zoológico de tecnologias, serviços, soluções e processos. Parte do trabalho é feita por pessoas, parte é automatizada, e os outros 90% são realizados por serviços em nuvem em data centers. O mundo já não é o mesmo.

Mas a primeira coisa que você vai notar são as mudanças constantes. Você não escreve mais programas: você faz alterações neles.

10.2 Mudanças Constantes

Você vai começar a trabalhar e se juntar a um time de 20 pessoas que já estão há 5 anos trabalhando no produto. Agora os usuários têm acesso à sétima versão dele. E a sua missão será implementar mudanças nesse produto. Pequenas, para não espantar os usuários ativos de agora.

E isso não vai ser fácil, porque o produto já funciona. Ele tem clientes, e eles pagam. Então, não pode quebrar nada. Fazer mudanças em um produto que já está funcionando é várias vezes mais difícil do que em um novo. Para isso existem padrões especiais, protocolos, migrações e utilitários. Me vem à mente uma piada:

Dois velhos amigos se encontram: um virou mecânico, o outro cirurgião... cada um tem sua vida, preocupações, alegrias... Contam tudo um para o outro e aí o papo chega nos salários. O mecânico diz "Eu ganho 30 mil por mês e tô bem satisfeito, e você?", o cirurgião diz: "Eu ganho uns 100 mil por operação"... O mecânico fica interessado: "Estranho, por que essa diferença toda, parece que fazemos a mesma coisa — trocamos peças", e o cirurgião diz: "Vamos até o carro, liga ele aí"... o mecânico liga o carro, o cirurgião abre o capô e diz pro mecânico: "Tá vendo o motor funcionando? Tenta trocar! :)"

Mesmo se acontecer um milagre e seu time escrever um produto do zero durante um ano inteiro e só então lançá-lo, sabe o que vai acontecer depois?

Se o seu produto for um sucesso, o dono vai querer desenvolvê-lo mais. Lançar uma nova versão, adicionar algumas funcionalidades. Ou pelo menos fazer alguns experimentos. E sabe o que vem depois disso? Mudanças.

10.3 Valor do Produto

Do ponto de vista do desenvolvimento moderno de produtos, só tem valor o código que já foi lançado, e aquela funcionalidade que os usuários realmente usam. Se você escreveu um código, ele está guardado em algum lugar, funciona, mas ninguém usa, o valor dele é praticamente zero. Por isso todo o código deve ir para produção o mais cedo possível.

Seu código deve passar pelas seguintes etapas:

  • Você escreveu e garantiu que ele funciona
  • Seu TeamLead revisou e adicionou na branch principal no Git
  • Os testes durante a build mostraram que você não quebrou nada importante
  • Os testes de integração mostraram que o produto funciona como deveria
  • O tester verificou esse código e deu ok para o release
  • Depois é preciso compilar a nova versão do produto e lançá-la no servidor
  • A nova versão do produto deve ser colocada em Docker Images e lançada
  • Talvez precise rodar scripts de migração e fazer alterações no banco de dados e/ou outras soluções de terceiros
  • Depois é necessário coletar logs no servidor para garantir que tudo está funcionando como deveria
  • Em caso de situação emergencial, se você quebrou algo, é preciso reverter a build, restaurar o estado anterior do banco de dados e não perder as ações que os usuários fizeram enquanto trabalhavam com a versão instável do produto

Na maioria das empresas, essas questões já estão resolvidas: novos processos foram definidos, pessoas especiais foram contratadas, protocolos de segurança especiais introduzidos e padrões de controle de qualidade estabelecidos.

Quanto maior a empresa, menos tempo leva desde a escrita do código até o momento em que ele vai para produção e se torna valioso — começa a realmente ajudar as pessoas.

Na maioria das empresas, o código passa por esse caminho em duas semanas, mas há empresas que fazem releases toda semana, ou até todo dia. Os mais especiais fazem isso várias vezes por dia.

Código escrito não vale nada. Só tem valor o código que está rodando em produção.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION