Conforme os custos da cloud continuam a subir, mais developers terão que aprender a abraçar a otimização dos custos da cloud.
Anteriormente sob a alçada de centros dedicados de excelência, ou mesmo exclusivamente de equipas de compras e finanças, a gestão de custos na cloud está a tornar-se rapidamente uma competência necessária para quem consome recursos na cloud no dia-a-dia - e isso inclui developers de software.
A abordagem emergente para as organizações que priorizam a cloud é ter uma equipa central que possa gerir amplas questões de consumo, como a utilização da infraestrutura mais barata possível para o trabalho, e negociar descontos para uso comprometido com os fornecedores, enquanto a responsabilidade pelo custo dos serviços individuais é eliminada para as equipas de engenharia que são encorajadas a operar o mais economicamente possível, sem sacrificar o valor do negócio.
"É preciso este conhecimento central, mas também os engenheiros para perceber o que estão a gastar na cloud. . Queremos que se sintam habilitados a fazer algo sobre os seus gastos e como comparam com o valor que estão a gerar", disse Eugene Khvostov, vice-presidente de Produto e Engenharia do especialista em otimização de custos Apptio. "Cada organização é diferente e tem diferentes níveis de maturidade e estilos, mas alguns dos casos mais bem-sucedidos que vimos trazem esta informação ao limite e envolvem engenheiros neste desafio em vez de emitir um mandato de cima."
No entanto, esta pode ser uma mudança difícil de fazer, especialmente para as organizações habituadas a longos ciclos de aquisição e para aqueles que procuram isolar os seus developers de software de se preocuparem com o custo total dos seus próprios serviços, num impulso para uma maior unidade digital. Mas agora, com o aumento dos custos da cloud na sequência da pandemia COVID-19, a maré pode estar a mudar.
Otimizar os custos, não apenas o código: apresentar finops
No seu livro de 2020, o editor de media E a cloud de O'Reilly FinOps, J.R. Storment e Mike Fuller explicam que no velho mundo da aquisição de hardware empresarial, engenheiros e equipas de operações teriam de pensar no custo da infraestrutura com muita antecedência. "Agora, na cloud, podem atirar dólares da empresa para o problema sempre que há necessidade de capacidade extra", escreveram.
Embora isso tenha permitido ciclos de desenvolvimento mais rápidos e eficazes, introduziu também um novo conjunto de considerações em torno do custo e do impacto das empresas nestas opções de infraestruturas. "No início, isto parece estranho e em desacordo com o foco principal das características de envio. Por isso, rapidamente percebem que o custo é apenas mais uma métrica de eficiência que podem ajustar para impactar positivamente o negócio", escreveram.
Janisa Anandamohan, Senior Product Manager da Cost Engineering no gigante de streaming Spotify, escreveu numa recente publicação de blogue: "Sabemos que os engenheiros são otimizadores naturais quando se trata de fiabilidade, segurança, desempenho, etc. E agora estamos a dizer-lhes: 'Ei, adicione custos à mistura'."
Embora esta peça de otimização faça parte do puzzle, a mudança mais significativa é como reunir grupos previamente desligados em engenharia, finanças e muito mais. Esta abordagem para gerir proativamente os custos da cloud é vulgarmente conhecida como finops. Como definido por Storment e Fuller, "finops traz responsabilidade financeira para o modelo de gastos variáveis da cloud. Mas esta descrição só indica o resultado. A mudança cultural de operar na cloud transfere a propriedade da tecnologia e a tomada de decisões financeiras para os limites da organização."
Uma mudança cultural desta magnitude equivale naturalmente a desafios de escala empresarial. Encontrar uma forma de fazer com que os engenheiros atuem foi o desafio financeiro mais citado pelos inquiridos no relatório "State of Finops" da Fundação FinOps, liderado pela Fundação Linux, com 39% a admitirem ter dificuldades em obter um amplo apoio dos seus engenheiros. "Um desafio financeiro conhecido não é apenas iniciar a prática, mas também incentivar e incentivar os utilizadores da cloud (como developers e engenheiros) a participarem na gestão de custos na cloud", refere o relatório.
Veja como cinco empresas reinseriram as suas equipas e encorajarão os engenheiros a cuidar melhor dos seus custos de cloud.
Airbnb acompanha aumento dos custos de hospedagem em cloud
Há alguns anos, o popular site de reservas de alojamento de viagens, o Airbnb, percebeu que tinha um grande problema: as suas contas mensais de cloud Dazon Web Services (AWS) estavam a crescer mais rapidamente do que as receitas da empresa.
"Tínhamos um problema, mas faltava-nos uma compreensão profunda de como as equipas usam os recursos da AWS e como as mudanças planeadas de arquitetura e infraestruturas iriam afetar os nossos custos futuros da AWS", escreveram Jen Rice e Anna Matlin, engenheiros da Airbnb, num blogue da empresa.
No entanto, dada a filosofia de engenharia da Airbnb " quem constrói, gere", Rice e Matlin rapidamente perceberam que "adicionar atrito significativo aos nossos engenheiros teria uma grande resistência". Assim, os engenheiros da Airbnb começaram a construir os dados de alocação de custos necessários para começar a mostrar à sua comunidade de developers baseada em dados o grande problema que enfrentavam para ganhar alguns finops.
No caso da Airbnb, a "abordagem de atribuição de consumidores" foi dar às equipas a informação de que necessitam para fazerem as compensações certas entre os custos e outros condutores empresariais para manterem as suas despesas dentro de um determinado limite de crescimento. Com a visibilidade dos geradores de custos, encorajamos os engenheiros a identificar alterações de design arquitetónico para reduzir custos e também identificar potenciais ventos de custos", escreveu Rice e Matlin.
Esta mudança trouxe consigo uma equipa centralizada de eficiência de custos, armada com "uma visão panorâmica de todo o ecossistema Airbnb", escreveram, e incumbiu-se de encontrar oportunidades significativas de poupança de custos. Por exemplo, a Airbnb depende agora fortemente das opções do Plano de Poupança da AWS, completadas com "um conjunto de respostas preparadas que movem certas cargas de trabalho dentro e fora do Plano De Economia para manter a utilização saudável", escreveram. Esta equipa é agora apoiada por um conjunto de campeões de custos da AWS, que se sentam em todas as organizações de desenvolvimento de produtos para apoiar a nível local.
O resultado de todo este esforço foi uma grande mudança em toda a organização. Como Rice e Matlin escreveram:
"Para além dos vários esforços técnicos e organizacionais para gerir os custos da AWS, assistimos a uma profunda mudança cultural na consciencialização e gestão de custos. Esta mudança foi de cima para baixo. Os líderes mencionaram o objetivo de custos para toda a empresa durante as assembleias gerais. A equipa financeira criou um prémio de disciplina financeira empresa-empresa, apresentado pelo CFO, que reconheceu colaboradores que conduziram importantes iniciativas de redução de custos. No estilo do Airbnb fragmentado, a organização de infraestruturas conduziu um hackathon de corte de custos que gerou uma série de projetos de eficiência impactante. Os engenheiros aprendem as melhores práticas, uns dos outros, e discutem novas oportunidades de poupança num canal Slack. Após o lançamento, o Painel de Atribuição AWS tornou-se o dashboard mais visto no Airbnb e desde então permaneceu no topo da lista. Vendo esta mudança cultural, estamos otimistas de que as recentes reduções de custos que a Airbnb alcançou não são pontuais, mas um novo músculo que só vamos fortalecer com o tempo."
Como resultado, a Airbnb teve uma redução anual de 63,5 milhões de dólares nos custos de hospedagem, o que contribuiu para uma queda de 26% no custo das receitas da Airbnb nos nove meses que terminaram setembro de 2020.
A engenharia de realinhamentos de Sainsbury em torno da contabilidade de custos
Tal como muitas empresas de hoje, o investimento em cloud na retalhista britânica Sainsbury's tem-se focado na construção de novas capacidades e capacidades digitais para os clientes, o que levou a uma rápida escalada no consumo de serviços na cloud. "Em algum momento da linha, a equipa de operações estava a tentar conter os gastos", disse Phil Jordan, CIO do grupo.
Agora, depois de uma mudança intensiva de quatro meses e de um programa de formação durante a pandemia COVID-19, os developers, as operações e o pessoal de produtos fazem parte daquilo a que o retalhista chama "famílias de engenharia", que têm responsabilidade total no ciclo de vida do negócio. Este novo modelo operativo empurra a responsabilidade de ponta a ponta por um produto ou serviço para as equipas de engenharia, incluindo gestão de custos, gestão de vulnerabilidades, gestão de riscos e gestão de parceiros, tudo sem ser esquecido pela já extinta equipa de Operações de Serviço.
Estas equipas são agora encorajadas diretamente de acordo com um novo conjunto de métricas de pesquisa e avaliação de devops - frequência de implantação, tempo médio de mudança, tempo médio de recuperação e taxa de variação de falha - mais desempenho do serviço, custo total de propriedade e cadência de desenvolvimento. As ferramentas de gestão de custos do fornecedor Apptio foram trazidas para dar à engenharia uma visão mais transparente da sua base de custos específica, uma ferramenta que a Jordan disse que a empresa está a apostar "muito em dar a estas novas equipas total transparência de custos".
Sainsbury pilotou esta nova forma de trabalhar com a equipa de engenharia de dados ao longo de 2020 e "foi inequívoco que demonstrámos que isso gerou eficiência, velocidade de entrega e melhorou o sentimento dos colegas", disse Jordan.
Claro que nem todos concordaram com a mudança. "Alguns chefes de engenharia não fizeram a viagem connosco; eles [só] queriam desenvolver-se", admitiu Jordan. No entanto, a junção de dev, ops e produto "ajudou-nos a reunir experiência para fazer a engenharia pensar de forma mais holisticamente", disse.
A responsabilidade pelas equipas de engenharia foi uma mudança significativa para a Sainsbury's, mas a Jordan disse que isso poderia representar até 20% nas poupanças de custos de TI a longo prazo.
Spotify usa insights de custos para alinhar custos de infraestrutura com crescimento do cliente
À semelhança do Airbnb, a empresa de streaming de música Spotify tem trabalhado arduamente nos últimos anos para construir a otimização de custos no processo de engenharia em toda a empresa, depois de os seus custos de infraestrutura terem começado a superar a aquisição dos utilizadores.
Como empresa liderada pela engenharia, o Spotify decidiu criar a sua própria ferramenta de gestão de custos, chamada Cost Insights, que está integrada na sua plataforma interna de desenvolvimento chamada Backstage e desde então tem sido fonte aberta. Como o Spotify funciona principalmente no Google Cloud, o Cost Insights está atualmente focado nas funcionalidades do Google Cloud.
Como James Governor, analista da RedMonk, detalhado numa publicação de blogue, a ideia por trás da ferramenta é "que engenheiros e equipas de engenharia são encorajados a assumir mais responsabilidade pelos custos associados aos produtos que estão a construir. A modelação de custos passa a fazer parte do processo de engenharia, em vez de ser um processo separado para as equipas financeiras gerirem."
Uma cultura de partilha de custos foi encorajada através do próprio portal Cost Insights e através de um wiki interno chamado Our Cookbook. Isto encorajou a competição entre equipas a reduzir os seus custos e a partilhar vitórias importantes com o resto da organização.
No entanto, a otimização de custos não está totalmente descentralizada no Spotify. Uma organização de gestão de custos tem a tarefa de intervir se vir uma equipa ou serviço a aumentar rapidamente os custos, envolvendo-se com esse grupo para descobrir o porquê e o que pode ser feito para que as coisas voltem ao controlo.
"O Spotify descobriu que a melhor maneira de ganhar o compromisso era incentivar os engenheiros a usar em cadência o Cost Insights, juntamente com o planeamento trimestral existente. Se houvesse problemas que a equipa de custos sentisse que precisavam de atenção, alertariam a equipa antes destes encontros. Dito isto, se os custos estão rapidamente a aumentar fora de controlo para um serviço específico, isso é algo que deve gerar um alerta, então a deteção de anomalias está no roteiro do produto Cost Insights", escreveu Governor sobre os esforços do Spotify.
No Spotify, estes custos são comparados com os recursos de engenharia, por isso, se uma equipa quiser otimizar um serviço, deve ter em conta o valor desse trabalho em termos de empregados a tempo inteiro que possam ser contratados através da poupança. "As primeiras experiências com a Cost Insights permitiram ao Spotify financiar o equivalente a 25 equipas em toda a empresa", escreveu Governor.
Bancos como parte da transformação da cloud
A empresa de serviços financeiros Nationwide alertou que decidiu implementar considerações de custos em conjunto com o seu programa mais amplo de transformação de cloud, que está neste momento nos seus terceiros quatro anos - o que significa que os princípios financeiros foram incorporados desde o primeiro dia.
No entanto, este início precoce não significa que não tenha havido resistência à engenharia. "O principal motivador de valor da cloud é a velocidade de desenvolvimento, por isso passamos de um modelo de aquisição centralizado tradicional para um mundo onde todos os developers de aplicações também estão em aquisições, por isso transformas-te no Oeste Selvagem sem ninguém, ou uma equipa, olhando para as implicações financeiras disso", disse Joseph Daly. , Diretor de Serviços de Otimização de Cloud em Todo o País. "Onde quer que eu vá, há uma resistência inicial, uma vez que é visto como uma burocracia adicional que os atrasa."
Licenciado em contabilidade pela Universidade de Miami, não é tão surpreendente que Daly tenha resumido a abordagem da empresa para otimizar os custos da cloud numa fórmula. "A sua conta na cloud é igual ao uso multiplicado pela taxa", disse. "Centralizamos a gestão de taxas para coisas como planos de poupança e instâncias reservadas de alto nível para a empresa. Assim, para uso, descentralizamos para que as equipas de candidatura sejam responsáveis por si mesmas. Ser informado requer uma estratégia e estrutura de marcação, por isso, quando os developers fornecem, marcam algo de forma significativa."
Ultrapassar esta barreira resume-se à educação do Daly e da sua equipa. "Qualquer pessoa sem princípios financeiros não será capaz de gerir o seu ambiente. Mas uma boa estratégia de rotulagem e vigilância como a que temos aqui em todo o país vão engenheiros para participar na otimização, como podem ver o impacto financeiro direto."
Indo um passo mais além, a Nationalwide também tem um modelo de chargeback, no qual cada equipa de aplicação é responsável pelo seu uso exato através de uma fatura mensal. "Cria responsabilidade", disse Daly. "Se conseguirem ver as acusações, podem ver se são grandes ou desligam as coisas à noite ou usam serviços geridos pela cloud onde pudermos."
Daly adverte para não gamificar demasiado estes incentivos, no entanto. "Pela minha experiência, se transformares isto num jogo, será jogado como um jogo", disse.
Insights de custos para developers com fome de dados
A empresa europeia de entrega de alimentos Just Eat Take Away, resultado de uma fusão entre empresas britânicas e holandesas em 2020, opera predominantemente na AWS, com aplicações divididas em microserviços. Para equipas sediadas no Reino Unido, Irlanda, Itália, Espanha, Austrália e Canadá, uma equipa financeira central tem a tarefa de dar aos engenheiros uma melhor visibilidade nos custos em cloud, com o objetivo de eventualmente os reduzir.
"A nossa equipa [financeira] está focada na engenharia e criámos ferramentas para ajudar a melhorar a visibilidade dos custos da cloud ou reduzi-los", disse David Andrews, Head of Platform Engineering da Just Eat.
Isto manifesta-se numa abordagem de hub-and-spoke, com uma equipa central encarregada de tomar decisões de compra eficientes para toda a organização e com engenheiros armados com ferramentas como o Microsoft Azure Cost Explorer, o Guardião da Cloud de código aberto, e a Cloudability, detida pela Apptio, para acompanhar os seus gastos em cloud.
Ganhar adesão foi um desafio nos primeiros dias em que o processo de rastreio de gastos em cloud era em grande parte manual. Andrews disse que automatizar estas tarefas pode ajudar a remover o atrito para os engenheiros, incluindo a definição de alertas para as equipas que começam a gastar o orçamento.
"Um dos nossos desafios anteriores foi que costumávamos realizar uma parte da nossa atividade manualmente, como reporte e revisão de custos. À medida que continuamos a crescer e a subir, tornou-se menos sustentável", disse Andrews. A simplificação de relatórios e investimentos em workshops de formação tem ajudado a ganhar apoio ao programador, bem como a falar abertamente sobre o tema dos custos da cloud nas reuniões técnicas gerais.
Como muitas empresas focadas no crescimento, a Just Eat Take Away não quer reduzir os custos em cloud em detrimento do crescimento. "Enquanto acompanhamos os nossos custos de cloud de forma eficaz e regular, fazemos isto ao lado de monitorizar o crescimento do nosso negócio para não vermos os custos da cloud num vácuo", disse Andrews.
Espalhando o evangelho dos finops
Agora, à medida que a computação em cloud se torna mais popular entre as empresas por nascer na cloud, a necessidade de um conjunto comum de princípios e ferramentas financeiras facilmente implementados tornar-se-á parte integrante dos resultados financeiros de muitas empresas.
Isto pode começar com uma única pessoa ou uma pequena equipa com a tarefa de estabelecer uma hierarquia corporativa de contas, rótulos e etiquetas. Uma vez que todos trabalham com os mesmos dados, o trabalho árduo da educação e da mudança cultural pode começar.
É importante não ser desencorajado desde o início, já que não há um caminho dourado para uma melhor gestão dos custos em cloud. Por conseguinte, é importante começar cedo, aprender e iterar à medida que avança para alcançar estes importantes ganhos marginais. Uma forte bancada de cima para baixo será crítica.
A verdade é que, como a cloud representa uma parte crescente das contas tecnológicas de uma organização, é apenas uma questão de tempo até que estas práticas financeiras se tornem predominantes, e cada engenheiro terá de saber como lidar com uma conta na cloud.
Scott Carey