Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Implementação de Cultura DevOps - Ciclo Formativo PretaLab 2021

Marylly
April 20, 2021

Implementação de Cultura DevOps - Ciclo Formativo PretaLab 2021

Aula sobre cultura DevOps feito para o ciclo formativo do PretaLab do primeiro semestre de 2021.

Marylly

April 20, 2021
Tweet

More Decks by Marylly

Other Decks in Technology

Transcript

  1. Atua com software desde 2005, formada em Sistemas de Informação

    (UMESP, 13), pós-graduada em Gestão Pública (FESPSP, 2015), Facilitadora/instrutora do #MinasProgramam e das comunidades #WWGSP e #DevsJavaGirl, Engenheira de software na ThoughtWorks. Menina e mulher de família simples de cor da região periférica de SP Deixem me apresentar 2
  2. O que NÃO Devops? 4 Silos tradicionais Qualidade só atua

    na entrega em Produção Ambiente automatizado e/ou na Cloud DevOps Job Description Processo, Produto e/ou Software Algo que possa ser comprado ou dado Ter um pipeline
  3. O que é DevOps? 5 Desenvolvimento e Operação são o

    mesmo time Alinhamento com plano de negócio Qualidade e Segurança atuam desde do início Trabalho colaborativo e transparente
  4. 6 2009 - 1º DevOps Day Bélgica 1980 - Movimento

    Lean 2011 - Movimento Lean StartUp 2001 - Manifesto Ágil 2006 - Movimento Entrega Contínua 2007 - Velocity Conference: 10 Deploy per day: Dev & Ops at Flickr 2008 - Agile Conference História 2013 - 1º State of Devops Survey 2017 - Blue Matador Monitoring 2021 - Aqui estamos nós 2014 - 4 Métricas Fundamentais
  5. Valores e Diretrizes 8 • Conceito de Pronto muito bem

    definido • Transparência • Blameless Culture • Accountability e Ownership • Experimentação • Confiança • Melhoria Contínua • Self Development • Cultivo e Apoio Mútuo
  6. O que define que algo está pronto? 9 Quantas Vezes

    você já ouviu um desenvolvedor dizer que uma história ou funcionalidade está "pronta"?
  7. Processo confiável e repetível de entrega Automatize quase tudo Qualidade

    e Segurança desde do princípio Todos são responsáveis pelo processo de entrega Princípios de entrega de software 1 10 Faça controle de versão de tudo Faça coisas difíceis com frequência e sofra menos Pronto é versão entregue em produção Melhoria Contínua
  8. O que é Continuous Integration? 11 (Ou integração contínua) Prática

    de juntar com frequência alterações de código no repositório central/principal, testes são executados para obter feedback rápido sobre a qualidade de uma implementação, originando um processo cultural por um time, num processo automatizado manifestado por um Pipeline.
  9. Pipeline 12 É uma esteira com etapas de empacotamento, testes

    e avaliação de qualidade de uma implementação integrada ao um repositório central/principal. E idealmente é interessante considerar as seguintes elementares etapas: • Build (Construção do pacote de entrega) • Lint (Análise estática, sintaxe e qualidade de código) • Testes de Unidade (ou Unitários) • Testes de Integração (ou Funcionais) • Testes E2E (Jornada do Usuário ou Fim-a-Fim) • Deployment (Entrega em Produção)
  10. O que é Continuous Delivery? 13 (Ou Entrega Contínua) •

    É a prática de ter pacotes entregáveis funcionais em pequenos ciclos de desenvolvimento para disponibilização em qualquer ambiente/servidor (development, staging, production)
  11. O que é Continuous Deployment? 14 (Ou Entrega Contínua) •

    É uma abordagem na qual os times de desenvolvimento e operação lançam produtos e serviços de forma frequente, previsível e automatizada. Em vez de fazer grandes entregas de uma vez, fazem várias pequenas e rápidas, reduzindo as chances de erros.
  12. Principais desafios? 15 • Repensar colaboração • Revisar a cultura

    da empresa • Revisar todos os processos desde de negócio até a entrega ao cliente • Burocracia • Processos de Governança e Compliance • Obrigações Legais
  13. Principais benefícios? 16 • Entrega de valor muito rápida para

    o cliente • Responsividade com o mercado • Feedbacks mais cedo e rápido da experiência do cliente • Ajuste de estratégia para o melhor caminho para o produto • Desenvolvimento muito mais rápido do time • Times se tornam mais eficientes
  14. Ações Diretas 18 • Tenha conversas regulares com cada pessoa

    do time • Esteja sempre disponível para aprender e ensinar • Dê e peça feedbacks para as pessoas do seu time • Foque no objetivo das atividades, não nas ferramentas e o que elas fazem • Esteja aberta a aprender novos métodos, processos e tecnologias • Discuta sempre com o time o que poderia ser feito para melhorar
  15. Ações Indiretas 19 • Não veja seus pares como inimigos,

    sinta-se e demonstre que é uma aliada • Entenda o valor das suas entregas no negócio • Esteja presente ou ciente quando algo fica disponível para o cliente • Procure entender o papel das pessoas do seu time e converse para saber o que pode ser feito por você e a outra pessoa para melhorar o processo de entrega • Entendam os porquês da escolha de ferramentas e processos
  16. Sou Infra | Operacional 20 • Procure conversar com o

    time desenvolvimento, tente diminuir os riscos de um deploy em produção • Procure trazer os problemas e preocupações que enfrentados quando algo é colocado em produção e alinhe estratégias para evitar e diminuir instabilidades • Nunca culpe outros times por algo que não foi feito com êxito, todos devem focar no problema e aprender com isso • Entenda que sem a infra, a entrega da deva não entrega valor para o cliente e vice versa
  17. Sou Deva 21 • Procure falar com operações e/ou infraestrutura

    para alinhar quais são as necessidades das sua entrega quando estiver disponível em produção, • Se possível crie uma configuração necessária e defina uma estratégia deploy em conjunto com operações • Tente definir como “pronto” quando está disponível entregando valor para o cliente
  18. Sou Negócio | PM | PO 22 • Alinhe sempre

    o valor de negócio com as outras pessoas do time, riscos, ganho e valor para cada pequena entrega feita • Se aproxime das pessoas que estão na linha de frente da entrega quando possível • Acompanhe o deploy em produção e deixe transparente o sucesso das entregas do time, seja de quem for, deva, infra, etc • Proporcione momentos de retrospectiva para comemorar pequenas vitórias e identificar pontos de melhoria pelo time
  19. Como eu começo? Quero aplicar ou atuar na área 23

    • Entenda a cultura, tente identificar quais valores que fazem sentido para você e no papel que desempenha • Foque nas pessoas e tente entender o valor delas no contexto • Estude agilidade • Incorpore uma postura de auto-desenvolvimento e melhoria contínuos • Ajude as pessoas a se desenvolverem e entrar num estado constante de colaboração • Leia sobre cases de sucesso e entenda como e porque foram bem sucedidas
  20. Como eu começo? Quero aplicar ou atuar na área 24

    • Entenda os objetivos e o resultado de atividades, não as ferramentas • Procure estudar ferramentas que atinjam o objetivo do Devops de forma simples, por exemplo, o que é necessário para fazer CI e CD • Use seu background como fortaleza, se já conhece alguma tecnologia, linguagem de programação, banco de dados, identifique como isso pode ser feito da melhor forma com DevOps
  21. 25

  22. 26

  23. Referências Template da apresentação: https://freeppt7.com/article/679.html Banco de Imagens: https://www.flickr.com/photos/wocintechchat O

    que significa integração Contínua: https://aws.amazon.com/pt/devops/continuous-integration/ A Short History Lesson in DevOps - And Where It’s Going: https://dzone.com/articles/a-short-history-lesson-in-devops-and-where-its-goi-1 Manifesto Ágil: https://www.manifestoagil.com.br/ Entrega Contínua: O que é e como aplicar: https://www.opus-software.com.br/o-que-e-entrega-continua/ Quatro métricas fundamentais - Tech Radar Vol. 23: https://www.thoughtworks.com/pt/radar/techniques/four-key-metrics#:~:text=Os%20pesquisadores%20dete rminaram%20que%20apenas,porcentagem%20de%20falha%20de%20altera%C3%A7%C3%A3o. Periodic Table of DevOps Tool: https://digital.ai/periodic-table-of-devops-tools 28