Recomendações para otimizar o tempo do pessoal
Aplica-se a esta recomendação de lista de verificação de otimização de custos do Azure Well-Architected Framework:
CO:13 | Otimize o tempo da equipe. Alinhe o tempo que a equipe gasta em tarefas com a prioridade da tarefa. A meta é reduzir o tempo gasto em tarefas sem degradar o resultado. Os esforços de otimização devem incluir minimizar ruídos, reduzir tempos de build, depuração de alta fidelidade e simulação de produção. |
---|
Este guia descreve as recomendações para otimizar o tempo do pessoal. Essa otimização é um processo estratégico de maximização da produtividade e eficiência dos funcionários que projetam, implementam e operam a carga de trabalho durante suas horas de trabalho. Envolve o alinhamento de suas habilidades cognitivas, pontos fortes e tarefas de forma a garantir que cada hora que passam no trabalho seja usada da maneira mais eficaz. O objetivo é eliminar o desperdício de potencial e capacidades de pessoal. A falha em otimizar o tempo do pessoal pode levar ao esgotamento dos funcionários, à redução da vantagem competitiva e à redução da produtividade.
Definições
Termo | Definição |
---|---|
Ruído | Informações irrelevantes ou enganosas que podem distrair de problemas ou tendências reais. |
Sinal | Informações significativas e relevantes que fornecem insights sobre o comportamento e o desempenho de um sistema ou aplicativo. |
Débito técnico | As ineficiências acumuladas, as escolhas de design abaixo do ideal ou os atalhos intencionalmente tomados durante o processo de desenvolvimento para entregar código mais rapidamente. |
Principais estratégias de design
O pessoal normalmente cria a despesa mais significativa em uma carga de trabalho. O custo e o valor do pessoal ressaltam a importância de uma gestão eficiente do tempo. Este guia trata de maximizar o potencial de cada hora trabalhada. Dado que os funcionários não podem trabalhar dia e noite, a ênfase está em garantir que cada pessoa seja mais eficaz dentro de suas horas designadas ou igualmente eficaz em um período de tempo reduzido. O objetivo é conseguir uma melhor utilização do seu tempo em benefício do indivíduo e da carga de trabalho.
Definir metas de otimização
Definir metas de otimização de tempo de pessoal é um processo de estabelecer metas claras e mensuráveis. Essas metas servem como diretrizes para melhorias desejadas em tarefas e funções. Você pode usar esses benchmarks para avaliar os resultados em relação às metas. Primeiro, defina as métricas para medir o sucesso dos esforços de otimização do tempo do pessoal. Determine os objetivos específicos que você deseja alcançar por meio da otimização. Objetivos de exemplo podem ser reduzir o tempo gasto em tarefas administrativas ou reduzir o tempo necessário para responder a consultas de clientes. Para definir metas para a otimização do tempo do pessoal, considere as seguintes estratégias:
Selecione métricas quantitativas: escolha métricas que se alinhem com seus objetivos e possam ser medidas com precisão. Considere métricas como economia de tempo, aumento de produtividade, melhorias de eficiência e tempo de conclusão de tarefas.
Reúna métricas qualitativas: além das métricas quantitativas, colete feedback do pessoal para medir sua satisfação com suas funções. Esse feedback pode fornecer insights valiosos sobre os efeitos dos esforços de otimização do tempo do pessoal no moral e no engajamento dos funcionários.
Definir metas: defina metas realistas e alcançáveis para cada métrica selecionada. Essas metas devem ser baseadas nos níveis de desempenho atuais e no nível de melhoria desejado.
Otimize o tempo de desenvolvimento
Otimizar o desenvolvimento envolve refinar os processos de desenvolvimento de software para alcançar maior eficiência. Como resultado, os desenvolvedores podem investir mais tempo no refinamento de recursos, inovando dentro das restrições de uma carga de trabalho específica e abordando quaisquer desafios exclusivos que a carga de trabalho apresente.
Mantenha os recursos enxutos
Ao projetar e personalizar recursos, mantenha-os enxutos e simples. Evite a complexidade desnecessária e as opções de configuração que podem aumentar o tempo necessário para desenvolver, testar e manter a carga de trabalho. Manter a carga de trabalho simples e focada leva a uma adaptabilidade e otimização mais fáceis ao longo do tempo.
Reduza os tempos de compilação
Reduzir os tempos de compilação é o processo de minimizar o tempo necessário para compilar e gerar uma implantação. Tempos de compilação mais curtos permitem que os desenvolvedores gastem menos tempo esperando a conclusão das compilações e permite que eles se concentrem em escrever código e entregar recursos. A redução dos tempos de compilação também ajuda a garantir que os desenvolvedores recebam feedback sobre suas alterações de código mais rapidamente. O feedback mais rápido permite que eles iterem e corrijam problemas mais rapidamente, o que suporta o modelo de desenvolvimento Agile. Tempos de compilação mais rápidos facilitam compilações mais frequentes, permitindo que as equipes adotem práticas de desenvolvimento ágil, como integração contínua e entrega contínua (CI/CD). Aqui estão algumas estratégias para reduzir os tempos de compilação:
Otimizar as configurações de compilação: revise as definições de configuração de compilação e elimine etapas ou processos desnecessários que adicionam sobrecarga ao processo de compilação. Verificar compilações e combinar compilações parciais com compilações pré-construídas pode ajudar a reduzir os tempos de compilação e melhorar a eficiência. Essa abordagem permite que você reutilize componentes criados anteriormente e construa apenas as peças necessárias, o que leva a tempos de construção mais rápidos e investimento de tempo reduzido.
Paralelizar tarefas de compilação: identifique as tarefas que podem ser executadas simultaneamente e configure o sistema de compilação para executá-las em paralelo. Aproveite os recursos de computação disponíveis.
Use cache: dependências de cache, artefatos de compilação intermediários e outros componentes reutilizáveis para evitar trabalho redundante durante compilações subsequentes.
Usar compilações incrementais: para evitar recompilações desnecessárias, implemente técnicas que permitam que o sistema de compilação reconstrua apenas as partes da implantação que foram alteradas desde a compilação anterior.
Distribuir o processo de compilação: Se aplicável, distribua o processo de compilação em várias máquinas ou agentes de compilação para usar paralelismo e reduzir o tempo geral de compilação.
Otimizar a infraestrutura: verifique se o ambiente de compilação tem recursos suficientes, como CPU, memória e E/S de disco, para lidar com a compilação.
Use simulações de produção
Ao simular componentes ou serviços, os desenvolvedores podem isolar seu código para testes focados simulando dependências. A simulação permite que os desenvolvedores criem cenários específicos e casos de borda que são difíceis ou impraticáveis de reproduzir em um ambiente de produção real. Ele pode acelerar os ciclos de teste, facilitar o trabalho paralelo e eliminar as dependências de solução de problemas. Aqui estão algumas abordagens para implementar o simulado de produção:
Estruturas de simulação: use estruturas ou bibliotecas especializadas de simulação que permitem criar objetos fictícios, stubs ou falsificações para substituir dependências.
Injeção de dependência: Projete seu aplicativo para usar injeção de dependência, que permite a substituição fácil de dependências reais por objetos fictícios durante o teste ou a depuração.
Virtualização de serviços: use ferramentas ou técnicas de virtualização de serviços para simular o comportamento de serviços externos ou APIs. Isso permite que os desenvolvedores testem integrações sem acessar os serviços reais.
Simulação orientada por configuração: implemente uma abordagem orientada por configuração na qual o comportamento do aplicativo pode ser modificado por meio de definições de configuração ou sinalizadores para habilitar a simulação conforme necessário.
Simulação dinâmica e condicional: projete o aplicativo para oferecer suporte à simulação dinâmica e condicional, que permite que os desenvolvedores alternem entre componentes reais e fictícios, dependendo de condições ou cenários específicos.
Otimizar o ambiente de desenvolvimento
O objetivo é que os desenvolvedores obtenham feedback rápido sobre as mudanças. Faça as alterações tecnológicas necessárias para melhorar a experiência de desenvolvimento.
Conteinerização: considere conteinerizar a carga de trabalho para ser executada localmente. Os contêineres ajudam os desenvolvedores a replicar o ambiente de produção localmente e testar suas alterações rapidamente. Eles permitem uma iteração e depuração mais rápidas, o que leva a um processo de desenvolvimento mais eficiente. Os contêineres também fornecem um ambiente consistente e isolado para executar o aplicativo. Finalmente, eles permitem o dimensionamento e a implantação fáceis do aplicativo.
Estações de trabalho do desenvolvedor: uma estação de trabalho de desenvolvedor ideal deve ter um ambiente de desenvolvimento integrado (IDE) adequado. Uma boa estação de trabalho do desenvolvedor aumenta a eficiência do desenvolvedor, reduzindo o tempo e os recursos necessários para várias tarefas. Um bom IDE fornece autocompletar código e realce de sintaxe adaptados à linguagem de programação. Ele também deve suportar controle de versão como o Git. Um IDE bem equipado permite que os desenvolvedores identifiquem e corrijam problemas rapidamente durante o desenvolvimento, o que reduz o tempo de depuração.
Ambientes de desenvolvedores: os ambientes dos desenvolvedores não devem ser muito restritos. Os desenvolvedores devem ter as permissões necessárias para concluir tarefas sem restrições indevidas para que possam trabalhar de forma eficiente e eficaz.
Otimize ambientes de pré-produção
Em geral, quanto mais próximos os ambientes de pré-produção estiverem dos ambientes de produção, mais tempo você economizará. Essa maior consistência também ajuda a minimizar os riscos. Quanto mais próximos os dois ambientes, melhor você poderá testar e validar a funcionalidade e o desempenho de suas versões antes de implantá-las no ambiente de produção. Essa semelhança nos ambientes ajuda a identificar e resolver quaisquer problemas ou gargalos logo no início, o que reduz o risco de ocorrência de problemas no ambiente de produção.
Compensação: Você precisa equilibrar o tempo de pessoal com os custos de recursos. Quanto mais próximo um ambiente estiver do ambiente de produção, mais ele custa.
Reutilizar componentes e bibliotecas
Componentes e bibliotecas reutilizáveis podem economizar tempo substancial aos desenvolvedores. Em vez de escrever, testar e depurar código, os desenvolvedores podem reutilizar componentes e bibliotecas validados e desenvolver ou corrigir recursos de aplicativos mais rapidamente. Certifique-se de fornecer documentação para cada componente ou biblioteca. Armazene o código e a documentação em um repositório central que tenha controle de versão como o GitHub.
Além disso, use software de código aberto ou bibliotecas de editores confiáveis que estão disponíveis em gerenciadores de pacotes, como NuGet ou Maven. Esses gerenciadores de pacotes fornecem uma fonte centralizada e confiável para acessar e gerenciar bibliotecas. O uso de bibliotecas confiáveis de gerenciadores de pacotes pode aumentar ainda mais a produtividade e reduzir o tempo gasto no desenvolvimento e manutenção de código.
Eliminar a dívida técnica
Remover a dívida técnica é essencial para manter uma base de código saudável e eficiente. Seguindo padrões específicos e implementando mecanismos como portões de qualidade, você pode efetivamente resolver a dívida técnica e melhorar a qualidade geral do seu código. Veja como você pode incorporar essa orientação à sua abordagem:
Aloque tempo para resolver dívidas técnicas: dedique uma parte do tempo da sua equipe de desenvolvimento para resolver dívidas técnicas. Um bom ponto de partida é destinar cerca de 20% do tempo da equipe especificamente para lidar com dívidas técnicas. O tempo dedicado permite que os desenvolvedores se concentrem na refatoração, na limpeza de código e na melhoria da qualidade geral da base de código.
Capacitar a equipe de desenvolvimento: Permitir que a equipe de desenvolvimento seja dona da priorização da resolução de dívidas técnicas. A equipe de desenvolvimento está na melhor posição para identificar áreas da base de código que exigem atenção e entender os efeitos da dívida técnica na funcionalidade da carga de trabalho. Incentive a comunicação aberta e a colaboração dentro da equipe para garantir que a dívida técnica seja tratada de forma eficaz.
Priorizar: priorize itens de dívida técnica com base em seus efeitos na funcionalidade da carga de trabalho. Concentre-se em resolver os problemas que têm o efeito mais significativo no desempenho, na capacidade de manutenção e na escalabilidade da carga de trabalho. Ao priorizar de forma eficaz, você pode maximizar os efeitos de seus esforços para remover a dívida técnica.
A eliminação da dívida técnica é um processo contínuo. Isso requer uma abordagem proativa e esforço contínuo da equipe de desenvolvimento. Ao definir e aderir a padrões específicos na base de código e implementar mecanismos como portas de qualidade, você pode efetivamente resolver a dívida técnica e criar uma base de código mais limpa e sustentável:
Definir padrões de codificação: estabeleça padrões de codificação claros e específicos que definam a estrutura, o estilo e as práticas recomendadas desejadas para sua base de código. Esses padrões devem abranger áreas como convenções de nomenclatura, formatação de código, documentação e tratamento de erros. Ao aderir a esses padrões, você garante consistência e legibilidade em toda a base de código.
Implemente portas de qualidade: portas de qualidade são mecanismos que impõem os padrões de codificação definidos e detectam possíveis problemas no início do processo de desenvolvimento. Eles podem incluir revisões automatizadas de código, ferramentas de análise de código estático e pipelines de integração contínua. Ao integrar portas de qualidade em seu fluxo de trabalho de desenvolvimento, você pode identificar e resolver problemas de qualidade de código antes que eles se tornem dívidas técnicas.
Otimize a colaboração do pessoal
Otimizar a colaboração de pessoal é um processo de melhorar a dinâmica da equipe, a comunicação e o compartilhamento de conhecimento. O objetivo é evitar mal-entendidos, esforços duplicados e perda de tempo. Envolve quebrar silos, revisar padrões desnecessários, criar repositórios de conhecimento compartilhados e investir em treinamento relevante. A colaboração eficaz reduz erros repetidos e maximiza a experiência coletiva de uma equipe. Para otimizar a colaboração do pessoal, considere as seguintes estratégias:
Elimine silos: os silos podem levar à falta de conhecimento compartilhado e à replicação desnecessária de tarefas. A colaboração interfuncional pode economizar tempo e melhorar os resultados. Quebrar barreiras entre departamentos ou equipes para promover a cooperação interdepartamental. Promover reuniões interdepartamentais, workshops e projetos conjuntos. Incentive canais de comunicação abertos entre as equipes.
Otimize padrões: padrões desnecessários podem levar ao desperdício de tempo e recursos sem contribuir para melhores resultados. Avalie, melhore ou elimine padrões ou protocolos que não agreguem valor, mas aumentam a carga de trabalho. Revisar periodicamente normas e protocolos. Obtenha feedback dos funcionários do nível básico. Se um padrão não agregar valor, considere eliminá-lo ou revisá-lo.
Crie um repositório de conhecimento compartilhado: uma base de conhecimento compartilhada evita erros repetidos, auxilia o treinamento e reduz o tempo gasto na busca de informações. Desenvolver um local centralizado onde todos os membros possam acessar e contribuir para o conhecimento coletivo. Empregar ferramentas de gerenciamento de conhecimento, atualizar regularmente o repositório e incentivar contribuições de membros da equipe.
Invista em treinamento: Faça um investimento substancial em treinamento para os processos, ferramentas e projeto. Isso garante que um requisito de linha de base seja atendido antes que as pessoas comecem a contribuir para o projeto. Garantir que as equipes sejam treinadas nos padrões e processos estabelecidos para que possam trabalhar de forma eficiente e eficaz dentro das diretrizes definidas. Os membros da equipe devem ser treinados sobre esses padrões e processos para que não desperdicem esforços para identificá-los por conta própria.
Otimize processos
A otimização de processos envolve a refinação de fluxos de trabalho para eliminar etapas desnecessárias, reduzir o esforço manual e simplificar as funções e o gerenciamento de alterações. Esse aprimoramento garante que as tarefas sejam mais eficientes. Processos simplificados reduzem o tempo e os recursos necessários para as tarefas. A redução de tempo leva à melhoria da produtividade e economiza dinheiro. Para otimizar processos, considere estas recomendações:
Refine a abordagem do ciclo de vida de desenvolvimento de software (SDLC): a adoção de um SDLC ideal pode ajudá-lo a alcançar alta qualidade com menos sobrecarga. Avalie seu método SDLC atual e considere alternativas mais eficientes. Explore e adote metodologias como Scrum, Kanban ou Waterfall. Reavaliar periodicamente as estruturas escolhidas para melhor eficiência, reconhecendo que o SDLC é inerentemente colaborativo.
Otimizar por função: funções definidas garantem responsabilidades e expectativas claras e maior eficiência. Entenda e defina os requisitos de cada função, incluindo, por exemplo, desenvolvedores e arquitetos de soluções. Quando você quiser expandir a equipe, você deve saber o que cada função precisa em termos de hardware, licenças e acesso.
Simplifique o gerenciamento de mudanças: a receptividade positiva às mudanças garante transições mais suaves e melhores resultados. Torne o processo de implementação da mudança suave e aceito. Cultive uma cultura de participação ativa e não de resistência. Promover a adoção de mudanças por meio de coaching e aprendizado contínuo. Adapte-se às mudanças de forma construtiva.
Otimizar tarefas operacionais
Otimizar tarefas operacionais de carga de trabalho é um processo de tornar as tarefas de trabalho mais rápidas e diretas. O objetivo é agilizar as atividades para aumentar a eficiência e garantir o uso mais eficaz dos recursos. Essa simplificação garante que as tarefas sejam concluídas com menos erros, distrações e atrasos. Ele conserva o tempo da equipe, o que leva a uma tomada de decisão mais rápida, durações de solução de problemas reduzidas e eficiência geral aprimorada e economia de custos. Para otimizar as tarefas operacionais, considere as seguintes estratégias.
Reduzir a relação ruído/sinal
Distinguir sinal de ruído é crucial para a observabilidade porque permite que as equipes se concentrem nos aspectos mais críticos de seus sistemas e aplicações. Filtrar o ruído pode ajudar as equipes a tomar decisões informadas, solucionar problemas e otimizar a carga de trabalho mais rapidamente. Identificar e resolver problemas de forma mais eficiente e rápida leva a uma redução nos custos com pessoal.
Para diferenciar sinal de ruído, você precisa definir objetivos e métricas claras. Identifique os indicadores-chave de desempenho (KPIs) e as métricas que são relevantes para sua carga de trabalho. Estabeleça limites ou intervalos para cada métrica para especificar o comportamento normal e o que deve ser sinalizado como uma anomalia. Use ferramentas de monitoramento para coletar dados e acompanhar as métricas definidas em tempo real e identificar padrões que indiquem possíveis problemas ou áreas de melhoria.
Priorize insights acionáveis. Concentre-se em insights que apontem para degradações na carga de trabalho e priorize-os para investigação ou ação adicionais. Revise e atualize regularmente sua estratégia de monitoramento com base no feedback.
Usar depuração de alta fidelidade
A depuração de alta fidelidade refere-se à capacidade de diagnosticar e corrigir problemas com precisão em aplicativos de software. Você obtém insights detalhados sobre o comportamento e o estado do aplicativo durante o tempo de execução. A depuração de alta fidelidade é crucial para o desenvolvimento eficaz de software e solução de problemas. Com a depuração de alta fidelidade, os desenvolvedores podem reproduzir e analisar problemas com maior precisão, o que reduz o tempo e o esforço necessários para corrigir bugs. Uma compreensão do comportamento do aplicativo permite que os desenvolvedores tomem decisões informadas mais rapidamente para melhorar a qualidade do código.
Use uma ferramenta de depuração: use um depurador rico em recursos que forneça informações abrangentes sobre o fluxo de execução, as variáveis e o estado da memória do aplicativo.
Habilite o registro e o rastreamento detalhados: código do instrumento com instruções de registro e rastreamento para capturar informações relevantes durante o tempo de execução. Isso ajuda a diagnosticar problemas.
Analise mensagens de erro e rastreamentos de pilha: examine cuidadosamente as mensagens de erro e os rastreamentos de pilha para entender o contexto e a sequência de eventos que levam a um problema.
Melhore o suporte técnico
Melhorar a eficiência e eficácia das operações de suporte técnico. Reduzir problemas recorrentes economiza tempo e melhora a satisfação do usuário. Identifique problemas recorrentes de suporte, integre equipes de engenharia e suporte por meio de sombreamento de suporte e adote processos de modelo de implantação clássico de TI para reduzir a carga geral de suporte.
Aprenda com os incidentes
A análise de incidentes pode evitar a recorrência e melhorar os tempos de reação. Use incidentes passados como oportunidades de aprendizado para melhorias futuras. Realize retrospectivas para analisar incidentes, identificar ações e protocolos de contato aprimorados e aprimorar a observabilidade do sistema por meio de logs e métricas abrangentes.
Implemente uma governança robusta
A padronização reduz erros e retrabalhos para garantir qualidade consistente e otimização de custos. Fortaleça a conformidade e a padronização dentro de sua organização. Automatize as verificações de conformidade e defenda soluções, arquiteturas e plantas padronizadas. Para agilizar a tomada de decisões, minimize as escolhas que não estão alinhadas com restrições organizacionais ou SLAs.
Otimize as habilidades do pessoal
Melhores habilidades levam a maior eficiência e menos erros. Invista no desenvolvimento e aprimoramento das habilidades da sua equipe. Para otimizar as habilidades do pessoal, aqui estão algumas recomendações a serem consideradas:
Upskilling: Garanta que os membros da equipe tenham habilidades essenciais de otimização e monitoramento de custos. Forneça ambientes de área restrita para aprendizado prático e desenvolvimento de habilidades. Incentive os membros da equipe a obter certificações e promova o acompanhamento com colegas experientes.
Ferramentas: A proficiência com ferramentas é uma habilidade fundamental para otimizar tarefas e obter insights valiosos para o gerenciamento de custos. Garantir que o pessoal seja proficiente com ferramentas essenciais e possa se adaptar a novas. Priorize a familiaridade com as principais ferramentas, especialmente as relacionadas ao monitoramento. Treine o pessoal para extrair insights significativos dos dados em várias camadas do sistema, enfatizando a ligação entre o monitoramento eficaz e o gerenciamento de custos.
Experiência alinhada: Combine os funcionários com as tarefas com base em suas habilidades e conhecimentos. Utilize seus pontos fortes e aloque tarefas de acordo para maximizar a eficiência.
Azure facilitation
Definindo metas de otimização: o Azure DevOps fornece um conjunto de ferramentas para definir objetivos, selecionar métricas e definir metas. Ele oferece recursos como rastreamento de itens de trabalho, painéis e recursos de relatórios. Ele também fornece gerenciamento de código-fonte, integração contínua, entrega contínua e recursos de gerenciamento de projetos. Usando o Azure DevOps, as equipes podem automatizar processos, colaborar de forma eficaz e reduzir o esforço manual.
Otimizando o tempo de desenvolvimento: o Azure fornece várias ferramentas e recursos para otimizar o tempo do desenvolvedor, incluindo:
Ambientes de desenvolvimento: o Azure oferece ambientes de desenvolvimento de várias formas, como o Microsoft Dev Box, que fornece VMs Windows e Linux nas quais as ferramentas de desenvolvedor estão instaladas. A Microsoft também fornece VMs do Docker para desenvolvimento em contêineres e o Registro de Contêiner do Azure, que habilita compilações do Docker.
Integração com o Azure DevOps: o Azure integra-se ao Azure DevOps para melhorar a produtividade e simplificar os processos de desenvolvimento.
Integração do IDE: o Azure fornece integração do IDE com ferramentas de desenvolvimento populares, como o Visual Studio e o Visual Studio Code. Essa integração permite que os desenvolvedores trabalhem perfeitamente com os serviços do Azure.
SDKs e bibliotecas padrão: o Azure fornece SDKs e bibliotecas padrão para todos os serviços do Azure. Esses SDKs e bibliotecas permitem que os desenvolvedores reutilizem o código e reduzam o tempo necessário para integrar e implementar os serviços do Azure.
Modelos e exemplos de início rápido: o Azure fornece modelos e exemplos de início rápido que podem acelerar o processo de desenvolvimento.
Gerenciadores de pacotes e bibliotecas padrão: o Azure dá suporte a gerenciadores de pacotes e fornece bibliotecas padrão, como o gerenciador de pacotes NuGet. Eles podem simplificar o desenvolvimento e ajudar os desenvolvedores a reduzir o tempo que gastam na implementação de funcionalidades comuns.
Suporte de código aberto: o Azure tem um ecossistema forte que oferece suporte a tecnologias de código aberto, para que os desenvolvedores possam usar ferramentas e estruturas de código aberto existentes para otimizar seu tempo.
Esses recursos e ferramentas fornecidos pelo Azure ajudam os desenvolvedores a economizar tempo e aumentar a produtividade em seus fluxos de trabalho de desenvolvimento.
Otimizando tarefas operacionais: o Azure oferece suporte a recursos de infraestrutura como código (IaC), que permitem definir e gerenciar sua infraestrutura usando código. Isso ajuda a reduzir a complexidade e melhora a adaptabilidade de seus sistemas.
O Azure Monitor é um serviço de monitoramento abrangente que fornece visibilidade sobre o desempenho e a integridade de aplicativos e infraestrutura no Azure. Você pode usá-lo para coletar telemetria, configurar alertas e obter insights em tempo real. Usando o Azure Monitor, você pode identificar e resolver problemas de forma proativa. Ele permite que você reduza o tempo gasto na solução de problemas.
A Automação do Azure fornece uma maneira de automatizar tarefas manuais e repetitivas no Azure. Você pode usá-lo para criar e gerenciar runbooks, que são conjuntos de instruções para executar tarefas específicas. Ao automatizar tarefas de rotina, você pode economizar tempo e liberar pessoal para se concentrar em atividades mais críticas.
Otimizando as habilidades do pessoal: a Microsoft fornece um conjunto abrangente de materiais e atividades de treinamento . O treinamento está disponível para desenvolvedores, arquitetos e partes interessadas do negócio.
Links relacionados
Link da comunidade
Lista de verificação de otimização de custos
Consulte o conjunto completo de recomendações.