CodeGym /Cursos /Python SELF PT /Criação de Produtos

Criação de Produtos

Python SELF PT
Nível 64 , Lição 0
Disponível

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

Então, já que você ainda está aqui, vamos continuar. «E eu vou te mostrar o quão profunda é a toca do coelho» ©

Deixa eu te contar como é o processo de desenvolvimento de produto — vamos passar pelos passos do nível global mais alto até o nível mais baixo — a escrita de código. Acho que você vai descobrir algumas coisas interessantes...

Produtos de TI modernos 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é usam serviços de internet 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 executados por serviços em nuvem em data centers. O mundo já não é mais o mesmo.

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

1.2 Mudanças constantes

Você vai chegar no trabalho e se juntar a uma equipe de 20 pessoas, que já está trabalhando no produto há 5 anos. Agora os usuários têm acesso à 7ª versão. E sua tarefa será fazer alterações nesse produto. Pequenas, para não assustar os usuários ativos atuais.

E isso não será fácil, porque o produto já está funcionando. Ele tem clientes, e eles pagam dinheiro. Portanto, não se pode quebrar nada. Fazer alterações em um produto já em funcionamento é várias vezes mais difícil do que em um novo. Para isso, existem padrões especiais, protocolos de migração e utilitários. Isso me lembra uma piada:

Dois velhos amigos se encontram: um se tornou mecânico, o outro cirurgião... Cada um com sua vida, preocupações, alegrias... Eles contam tudo um ao outro, e então começam a falar sobre salários. O mecânico diz: "Bem, eu ganho 30 mil por mês e estou muito satisfeito com isso, e você?". O cardiocirurgião diz: "Bem, eu ganho cerca de 100 mil por operação...". Aí o mecânico se interessa: "Estranho, por que a diferença é tão grande? Parece que fazemos a mesma coisa - trocamos peças". E o cirurgião diz para ele: "Bem, vamos até o carro, ligue-o...". O mecânico liga o carro, o cirurgião abre o capô e diz ao mecânico: "Tá vendo, o motor tá funcionando? Troque! :)"

Mesmo que um milagre aconteça e sua equipe passe um ano inteiro escrevendo um produto do zero, e só depois disso o lance, sabe o que vai acontecer em seguida?

Se seu produto se tornar um sucesso, o dono do produto vai querer desenvolvê-lo. Lançar uma nova versão, adicionar alguma funcionalidade. Ou pelo menos fazer alguns experimentos. E sabe o que vai seguir isso? Mudanças.

1.3 Valor do produto

Do ponto de vista do desenvolvimento moderno, só tem valor o código que já foi lançado, e as funcionalidades que os usuários usam. Se você escreveu o código, ele está armazenado em algum lugar, funcionando, mas ninguém usa, seu valor é próximo de zero. Portanto, todo o código deve chegar o mais cedo possível ao production.

Seu código deve passar por essas etapas:

  • Você o escreveu e se certificou de que funciona.
  • Seu TeamLead revisou e adicionou à branch principal no Git.
  • Os testes durante a build mostraram que você não quebrou nada importante.
  • Testes de integração mostraram que o produto funciona como deveria.
  • O testador verificou esse código e deu o ok para o release.
  • Depois, é necessário compilar uma nova versão do produto e lançá-la no servidor.
  • A nova versão do produto precisa ser empacotada em Docker Images e lançada.
  • Pode ser necessário executar scripts de migração e fazer alterações no banco de dados e/ou outras soluções de terceiros.
  • Em seguida, é necessário reunir logs no servidor para garantir que tudo está funcionando como deveria.
  • Em caso de emergência, se você quebrou algo, é necessário 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 tarefas já estão resolvidas: novos processos foram estruturados, pessoas especiais foram contratadas, protocolos de segurança e padrões de controle de qualidade foram introduzidos.

Quanto maior a empresa, menos tempo passa desde a escrita do código até ele chegar ao production e se transformar em valor — começar a trazer benefícios às pessoas.

Na maioria das empresas, o código passa por esse caminho em duas semanas. No entanto, há empresas que fazem releases toda semana ou até todo dia. Algumas exceções fazem várias vezes por dia.

Código escrito não vale nada. Valor traz apenas o código que está funcionando no production.

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