Dia 1 dos nossos 90 dias de aventura para aprender um bom entendimento básico de DevOps e ferramentas que ajudam com uma mentalidade de DevOps.
Essa jornada de aprendizado começou para mim há alguns anos, mas meu foco era em plataformas de virtualização e tecnologias baseadas em nuvem, eu estava olhando principalmente para infraestrutura como código e gerenciamento de configuração de aplicações com Terraform e Chef.
Avançando para março de 2021, tive uma oportunidade incrível de concentrar meus esforços na estratégia _Cloud Native_ na Kasten da Veeam. O que seria um foco maciço no Kubernetes e DevOps além de todo ecossistema em torno dessas tecnologias. Comecei minha jornada de aprendizado e rapidamente percebi que havia um mundo muito amplo além de apenas aprender os fundamentos do Kubernetes e da Containerização, e foi então que comecei a falar com a comunidade e aprender cada vez mais sobre a cultura, ferramentas e processos de DevOps. Então eu comecei a documentar publicamente algumas das áreas que eu queria aprender.
Se você ler o blog acima, verá que este é um conteúdo de alto nível para minha jornada de aprendizado e direi que neste momento não sou nem de longe um especialista em nenhuma dessas seções, mas o que eu queria fazer era compartilhar alguns recursos tanto GRÁTIS quanto pagos, mas uma opção para ambos, pois todos temos circunstâncias diferentes.
Nos próximos 90 dias, quero documentar esses recursos e cobrir essas áreas fundamentais. Eu adoraria que a comunidade também se envolvesse. Compartilhe sua jornada e recursos para que possamos aprender em público e ajudar uns aos outros.
Você verá no _README_ de abertura no repositório do projeto, que dividi as coisas em seções e são 12 semanas mais 6 dias. Nos primeiros 6 dias, exploraremos os fundamentos do DevOps em geral antes de mergulhar em algumas das áreas específicas. De forma alguma esta lista é exaustiva e, novamente, eu adoraria que a comunidade ajudasse a tornar este um recurso útil.
Outro recurso que compartilharei neste momento e que acho que todos deveriam dar uma boa olhada, talvez criar seu próprio mapa mental com assuntos de seu interesse é o seguinte:
[Roteiro do DevOps](https://roadmap.sh/devops)
Achei isso um ótimo recurso quando estava criando minha lista inicial e as postagens no blog sobre esse tópico. Você também pode ver outras áreas em detalhes além dos 12 tópicos que listei aqui neste repositório.
## Primeiros Passos - O que é DevOps?
Há tantos artigos de blog e vídeos do YouTube para listar aqui, mas quando começamos o desafio de 90 dias e nos concentramos em passar cerca de uma hora por dia aprendendo algo novo ou sobre DevOps, achei que seria bom obter alguns de altos níve sobre "o que é DevOps" para começar.
Em primeiro lugar, DevOps não é uma ferramenta. Você não pode comprá-lo, não é um SKU de software ou um repositório GitHub de código aberto que você pode baixar. Também não é uma linguagem de programação, também não é uma arte de magia negra.
DevOps é uma maneira de fazer coisas mais inteligentes no desenvolvimento de software. - Espera... Mas se você não é um desenvolvedor de software deveria se afastar agora e não mergulhar nesse projeto??? Não. De jeito nenhum. Fique... Porque o DevOps reúne uma combinação de desenvolvimento de software e operações. Mencionei anteriormente que eu estava mais no lado da VM e isso geralmente se enquadraria no lado de operações da casa, mas dentro da comunidade, existem pessoas com diferentes origens onde o DevOps é 100% benéfico para o indivíduo, para desenvolvedores e para operações. Engenheiros de QA podem aprender igualmente essas práticas recomendadas tendo uma melhor compreensão do DevOps.
DevOps é um conjunto de práticas que ajudam a atingir o objetivo desse movimento: reduzir o tempo entre a fase de ideação de um produto e seu lançamento em produção para o usuário final ou qualquer que seja uma equipe interna ou ainda, o cliente.
Outra área em que vamos mergulhar nesta primeira semana é em torno da **Metodologia Ágil**. DevOps e Agile são amplamente adotados juntos para obter entrega contínua de suas **Aplicações**.
A conclusão de alto nível é que uma mentalidade ou cultura DevOps serve para reduzir o longo e prolongado processo de lançamento de software de potencialmente anos, para poder lançar versões menores com mais frequência. O outro ponto fundamental a ser entendido aqui é a responsabilidade de um engenheiro de DevOps em dividir os silos entre as equipes que mencionei anteriormente: Desenvolvedores, Operações e QA.
Do ponto de vista do DevOps, **Desenvolvimento, Teste e Implantação** chegam à equipe de DevOps.
O ponto final que farei é que para tornar isso o mais eficaz e eficiente possível, devemos aproveitar a **Automação**.
## Recursos
Estou sempre aberto a adicionar recursos adicionais a esses arquivos README, pois estão aqui como uma ferramenta de aprendizado.
Meu conselho é assistir a todos os itens abaixo e espero que você também tenha captado algo do texto e das explicações acima.
- [DevOps em 5 minutos](https://www.youtube.com/watch?v=Xrgk023l4lI)
- [O que é DevOps? Maneira Fácil](https://www.youtube.com/watch?v=_Gpe1Zn-1fE&t=43s)
- [Roteiro de DevOps 2022 | Roteiro de sucesso 2022](https://www.youtube.com/watch?v=7l_n97Mt0ko)
Se você chegou até aqui, saberá se é aqui que você quer estar ou não. Vejo você no [Dia 2](day02.md).