Pular para o conteúdo principal
BlogSua estratégia de desenvolvimento na nuvem está errada?

Sua estratégia de desenvolvimento na nuvem está errada?

Sua estratégia de desenvolvimento na nuvem está errada? Imagem em destaque no cabeçalho da postagem do blog.

Comecei minha carreira há 20 anos como engenheiro de software. Muitos de nós - e sei que não sou o único - testemunhamos o crescimento sem precedentes da nuvem pública e continuamos a fazê-lo até hoje.

Há provedores de nuvem que têm uma visão opinativa sobre como você deve construir com eles. Chamamos essa abordagem de plataforma nativa. Eles querem que você crie de uma forma que use os serviços e as ferramentas deles , tudo dentro do ecossistema deles. Mas os provedores de nuvem não devem ditar como você deve criar e implementar. Em vez disso, suas cargas de trabalho devem ser portáteis, usando ferramentas abertas e baseadas em padrões que permitam que você as implemente e mova para onde fizer sentido para encontrar a melhor localização geográfica, preço ou desempenho para sua carga de trabalho.

Jornada de compra do desenvolvedor atual

Já cometi erros ao selecionar o provedor de nuvem certo. Muitos de nós cometemos. Mas essas experiências - boas e ruins - me permitiram ver padrões no processo de seleção. E descobri cinco estágios na jornada de compra da nuvem de um desenvolvedor.

1. Descubra. Se você souber de algo novo em um evento, enquanto lê o Stack Overflow ou um tópico do Reddit, assiste ao YouTube ou qualquer outro lugar, um serviço de nuvem despertará seu interesse porque você nunca ouviu falar dele antes. E, de repente, você pensa: O que é isso? Como isso se aplica a mim? Como isso pode me ajudar?

Há muitas outras perguntas a serem feitas durante a descoberta. Sua meta deve ser obter respostas sobre o que torna uma oferta de nuvem única, o que a diferencia de algo perceptivelmente semelhante e a proposta de valor específica que ela apresenta para você. Seja um compromisso com o serviço ou qualquer outra coisa, é aqui que você pergunta: "Por quê?"

2. Avaliação. Nesta etapa, já passamos da fase de dúvida e temos certeza de que há algo aqui. Agora é hora de nos comprometermos e avaliarmos o que descobrimos. Não planeje um grande compromisso de tempo. Normalmente, são necessários apenas 15 a 20 minutos para mergulhar na documentação. Mas você precisará se aprofundar para entender o serviço ou a ferramenta e avaliar as diferenças em relação ao que você já conhece.

Embora isso ajude a entender exatamente quais serviços você está avaliando, não se preocupe se o seu conhecimento sobre outros provedores de nuvem for um pouco limitado. Por exemplo, veja nossa oferta de Kubernetes gerenciado. Se você estiver familiarizado com as ofertas da concorrência, poderá fazer algumas comparações entre elas e o Linode Kubernetes Engine.

Aqui está um trecho de um caso de uso de avaliação de Elliot Graebert, diretor de engenharia do fabricante de drones Skydio.

"As interfaces parecem bastante idênticas, o que torna impossível declarar uma delas como melhor. Seu design é nítido e limpo, sem o excesso de recursos predominante no AWS e no Azure. Na minha opinião, essa simplicidade ajuda muito a entrar, implantar seu aplicativo e voltar a escrever código." Ele acrescenta: "A incrível velocidade da Linode para inicializar novos clusters k8s atrairá alguns públicos, e o tempo geral de implantação do nó foi sólido."

3. Aprenda. Agora estamos prontos para passar para a etapa mais importante. E o motivo é que, durante o estágio de avaliação, você investirá algum tempo, mas é aqui que você investirá a maior parte do seu tempo. Como desenvolvedores, temos um milhão de projetos passando por nossas cabeças. Agora, estamos passando por uma espécie de exercício de adaptação para ver se essa oferta de nuvem vale a pena. Prepare-se para investir horas em aprendizado. A maior pergunta a ser respondida é: Esse provedor de nuvem e sua solução funcionarão em meu próximo projeto?

4. Construção. Que engenheiro não gosta de colocar as mãos em um teclado? Mas é nessa etapa que as coisas geralmente dão errado. Nós nos condicionamos a criar MVPs (produtos mínimos viáveis) quando na verdade precisamos criar MLPs, "produtos mínimos adoráveis".

Os MVPs são o mínimo necessário, e você não vai necessariamente gostar deles. De todos os MVPs que criei ao longo de minha carreira, não consigo citar nenhum que fosse adequado para produção. Hoje, em minha função, adoro mostrar aos desenvolvedores como criar um MLP. O resultado é algo que eles podem avaliar honestamente se o esforço que fizeram para criá-lo valeu ou não a pena.

5. Escala. Há muitas perguntas que você fará nesta etapa. Ao entender o dimensionamento, você vai querer saber como tirar proveito de várias regiões, seja para replicar dados de um ponto a outro para recuperação de desastres ou simplesmente para existir em mais de uma região. Pense no dimensionamento não apenas sob a perspectiva do processo, mas também sob a perspectiva do pessoal. Se você precisar injetar mais pessoas nesse processo, como será isso? 

Você também vai querer entender o processo de integração. Seja através de um CLI ou API, descubra o que está disponível que pode ajudá-lo a automatizar. Estamos nessa onda de automação com a Infraestrutura como código (IAC) liderando o caminho. Estamos fazendo mais com menos porque sabemos que os processos escalam e as pessoas não. Avalie o esforço necessário para manter a infraestrutura e a escala.

Plataforma nativa versus nuvem nativa

A escolha da nuvem continuará a ser uma jornada evolutiva. Precisamos começar a olhar para ela de forma mais objetiva. Quando me aventurei pela primeira vez na nuvem, criei exclusivamente com essas plataformas e ferramentas. Toda a literatura técnica disponível naquela época era sobre uma plataforma específica. Mas, à medida que cresci como engenheiro, comecei a construir de forma nativa na nuvem, onde eu poderia pegar minha carga de trabalho e movê-la para qualquer lugar, dando-me mais controle sobre as coisas que eu construía. E fiz isso com a ajuda de ferramentas de código aberto, o que me permitiu adotar padrões unificados, como CI/CD, IaC e conteinerização

Se tudo isso estiver de acordo com a sua maneira de pensar e você quiser desenvolver essa maneira nativa da nuvem, adoraríamos conversar com você. Entre em contato comigo ou com qualquer membro da equipe para discutir sua jornada de compra na nuvem.


Comentários

Deixe uma resposta

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados com *