Introdução
Apesar dos esforços contínuos voltados para aumentar a produtividade dos desenvolvedores, a construção de soluções digitais de maneira ideal está ficando cada vez mais complexa. Um dos fatores importantes que afetam essa complexidade é a dependência da plataforma na qual os desenvolvedores operam, incluindo a infraestrutura, ferramentas, serviços e processos subjacentes que impulsionam os esforços de desenvolvimento. Otimizar essa plataforma torna-se ainda mais desafiador considerando a pressão que as organizações colocam para reduzir o time-to-value, enquanto, ao mesmo tempo, esperam os mais altos níveis de qualidade de software e estabilidade operacional.
A engenharia de plataforma destina-se a enfrentar esses desafios. É a prática de projetar e construir plataformas integradas que melhoram a experiência do desenvolvedor e aceleram o tempo de valorização. Ao combinar tecnologias como gerenciamento de infraestrutura, automação, recursos de autoatendimento e observabilidade, a engenharia de plataforma permite que os desenvolvedores se concentrem na entrega de valor sem serem sobrecarregados pelas complexidades dos sistemas subjacentes. Em sua essência, a engenharia de plataforma alinha as equipes de desenvolvimento e operações, permitindo a entrega perfeita de aplicativos e serviços e, ao mesmo tempo, atende às metas operacionais e de negócios.
Com a crescente adoção de arquiteturas nativas da nuvem e práticas de DevOps, a engenharia de plataforma tornou-se uma disciplina crítica para qualquer organização que aspira obter o máximo valor de seus esforços internos de desenvolvimento. Uma plataforma bem projetada fornece aos desenvolvedores as ferramentas e os processos de que precisam para inovar mais rapidamente, mantendo a excelência operacional. Ao incorporar princípios como escalabilidade e resiliência, segurança e conformidade, automação e autosserviço, bem como observabilidade e melhoria contínua no desenvolvimento de plataformas, os engenheiros de plataforma criam ambientes que não são apenas amigáveis para desenvolvedores, mas também robustos e adaptáveis às necessidades de negócios em constante mudança.
"A Engenharia de Plataforma agiliza o desenvolvimento criando ferramentas que aumentam a resiliência dos sistemas e melhoram a eficiência para acelerar a entrega de valor." - Segundo Luiz Macedo
Os caminhos de aprendizagem de Engenharia de Plataforma são projetados para guiá-lo e apoiá-lo durante toda a sua jornada de aprendizado de Engenharia de Plataforma. O conteúdo do módulo inclui gráficos, links de referência, perguntas de revisão do módulo e laboratórios práticos opcionais.
Objetivos de aprendizagem
Após a conclusão desta série, estudantes e profissionais podem:
- Compreenda a importância da engenharia de plataforma para melhorar a produtividade do desenvolvedor e acelerar o time-to-value.
- Saiba como projetar e criar plataformas integradas que otimizam a experiência do desenvolvedor e otimizam os esforços de desenvolvimento.
- Explore o papel da engenharia de plataforma na condução da transformação digital dentro de uma empresa.
- Reconhecer o valor estratégico da engenharia de plataforma como a base para o sucesso técnico e o alinhamento com objetivos de negócios mais amplos.
- Identificar as principais partes interessadas na engenharia da plataforma e entender suas expectativas e requisitos distintos
- Obtenha informações sobre como projetar arquiteturas de plataforma que sejam seguras, escaláveis e compatíveis com as normas regulamentares.
- Explore o papel da automação na manutenção da consistência, na redução de erros manuais e na aceleração de implantações.
- Compreender a importância do planejamento e estimativa de capacidade para prever necessidades futuras de recursos.
- Aprenda estratégias de otimização de custos para gerenciar recursos de forma eficiente e evitar o provisionamento excessivo.
- Descubra como implementar soluções escaláveis que podem lidar com a crescente demanda e fluxos de trabalho complexos.
- Saiba como permitir que os desenvolvedores gerenciem de forma independente seus recursos e fluxos de trabalho, promovendo agilidade e inovação.
- Compreenda a importância de combinar flexibilidade com governança robusta para garantir segurança, conformidade e consistência operacional.
- Explore os benefícios do autosserviço do desenvolvedor para acelerar os ciclos de desenvolvimento e reduzir gargalos.
- Reconhecer o papel das plataformas de autoatendimento para aumentar a satisfação e a produtividade dos desenvolvedores.
- Identifique as práticas recomendadas para implementar e gerenciar recursos de autoatendimento em uma organização.
- Descubra a importância da observabilidade no fornecimento de informações em tempo real sobre o desempenho do sistema e na identificação de ineficiências.
- Entenda como a melhoria contínua cria um ciclo de feedback que impulsiona os aprimoramentos da plataforma e otimiza os recursos.
- Saiba mais sobre benchmarking e monitoramento de desempenho para acompanhar o sucesso da plataforma e identificar áreas para melhoria.
- Explore estratégias para se adaptar às tendências do mercado e antecipar mudanças nas necessidades dos usuários ou cenários tecnológicos.
- Promova uma cultura de inovação dentro das equipes de engenharia de plataforma para propor e testar continuamente novas ideias.
- Saiba como alinhar iniciativas de engenharia de plataforma com objetivos organizacionais de longo prazo e tendências de mercado.
- Explore os princípios-chave do roteiro estratégico da plataforma, incluindo a preparação para avanços tecnológicos e a promoção da inovação.
- Compreender a importância de definir uma visão clara da plataforma que esteja alinhada com objetivos organizacionais mais amplos.
- Descubra como criar um roteiro de plataforma com marcos acionáveis e entregas específicas.
- Aprenda técnicas de implementação e priorização em fases para garantir que a plataforma evolua de forma a suportar os objetivos de negócios.
Pré-requisitos
Os alunos bem-sucedidos terão conhecimento prévio e compreensão do seguinte:
- Os conceitos de computação em nuvem incluem a compreensão das implementações de PaaS, SaaS e IaaS.
- Administração do Azure e desenvolvimento do Azure com experiência comprovada em pelo menos uma dessas áreas.
- Conceitos de DevOps intermediários a avançados, incluindo controle de versão, desenvolvimento ágil de software e princípios fundamentais de desenvolvimento de software. Seria útil ter experiência em uma organização que fornece software.
Se você é novo em práticas de desenvolvimento e DevOps, considere fazer o seguinte:
- Online grátis: fundamentos de DevOps: os princípios e práticas fundamentais.
- Curso ministrado por instrutor: AZ-2008: Fundamentos de DevOps: Os princípios e práticas fundamentais.
- Online grátis:
- AZ-400: Desenvolvimento para DevOps empresarial.
- AZ-400: Implemente CI com Pipelines do Azure e Ações do GitHub.
- AZ-400: Projete e implemente uma estratégia de lançamento.
- AZ-400: Implemente uma implantação contínua segura usando o Azure Pipelines.
- AZ-400: Gerencie a infraestrutura como código usando o Azure e o DSC.
- AZ-400: Conceber e implementar uma estratégia de gestão de dependências.
- AZ-400: Implementar feedback de forma contínua.
- AZ-400: Implementar segurança e validar bases de código para conformidade.
- Curso ministrado por instrutor: AZ-400: Projetar e implementar soluções Microsoft DevOps.
Se você é novo no Azure e na computação em nuvem, considere um dos seguintes recursos:
- Online grátis: Fundamentos do Azure.
- Curso ministrado por instrutor: AZ-900: Azure Fundamentals.
Se você é novo na Administração do Azure, considere fazer o:
- Gratuito online: Pré-requisitos para Administradores do Azure.
- Cursos ministrados por instrutor: AZ-104: Administrador do Microsoft Azure.
Se és novo no Azure Developer, considera frequentar este curso orientado por um instrutor: AZ-204: Desenvolvimento de Soluções para Microsoft Azure.