The Source Plataforma e infraestrutura
Artigo

FinOps: o equilíbrio entre responsabilidade financeira e inovação

Confira como o FinOps harmoniza a responsabilidade financeira com os objetivos de negócios, promovendo a inovação econômica em empresas modernas.

November 26, 2024 5 min de leitura
Lee Faus
Lee Faus Global Field CTO

Quando os gastos com a nuvem crescem junto com suas equipes de engenharia, muitas vezes surge uma troca dolorosa: pressionar os desenvolvedores a acelerarem a entrega ou controlar o aumento dos gastos. Mas imagine aumentar a produtividade dos desenvolvedores em 30% e reduzir os custos dos projetos em 25%. Pode parecer impossível, mas é uma meta realista para as empresas que adotam o FinOps (Operações Financeiras): uma abordagem orientada por dados que aplica princípios e práticas de DevOps para otimizar os custos associados a pessoas, processos e tecnologia em todo o ciclo de vida do desenvolvimento de software.

Testemunhei em primeira mão como o FinOps pode transformar as empresas ao levar clareza financeira a todos os aspectos do desenvolvimento de software. Recentemente, me reuni com a equipe de DevOps de uma seguradora que está iniciando o processo de implementação do FinOps. As primeiras discussões incluíram a definição de medidas básicas, como gastos com a nuvem, e a identificação de outras métricas de redução de custos e geração de receita por meio da gestão de fluxo de valor. Essas conversas são fundamentais para que os profissionais de FinOps avaliem como as equipes e os recursos são organizados e alocados e quais processos e ferramentas podem ser implementados para impulsionar mudanças.

De estruturas de equipe a processos de desenvolvimento e escolhas de tecnologia, essa visibilidade ajuda os líderes a otimizar investimentos em toda a operação. Ao reunir equipes de finanças, produtos e engenharia, o FinOps permite que CFOs, CPOs e CTOs tomem decisões informadas, melhorando a eficiência em toda a empresa.

Melhorar a eficiência e otimizar custos não é apenas um desafio técnico, mas também uma prioridade estratégica para os negócios, especialmente à medida que as empresas investem mais na nuvem. O FinOps estabelece a responsabilidade financeira essencial para o modelo de custos variáveis da nuvem. Vamos analisar os benefícios do FinOps e como você pode começar a incorporar suas metodologias aos fluxos de trabalho operacionais.

O que é FinOps?

O FinOps, abreviação de Operações Financeiras, transforma a maneira como as equipes de finanças, engenharia, tecnologia e negócios operam. Por meio de dados e análises em tempo real, as equipes obtém visibilidade imediata dos gastos com a nuvem e podem agir antes que os custos aumentem. Essa abordagem proativa de responsabilidade financeira permite que decisões rápidas e informadas sobre a alocação de recursos sejam tomadas, gerando uma economia de custos mensurável.

Em sua essência, o FinOps é uma prática cultural que torna essa transformação sustentável. Ao estabelecer processos claros e métricas compartilhadas, as equipes garantem que suas decisões tecnológicas diárias estejam alinhadas com os objetivos mais amplos da empresa.

Conforme muitas empresas se concentram na IA generativa e na produtividade do desenvolvedor, elas precisam de verificadores de integridade, como fluxos de trabalho automatizados e modelos reutilizáveis, no lado da entrega para garantir que caminhos otimizados sejam adotados. Isso é essencial para empresas que estão modernizando seus aplicativos e expandindo arquiteturas de nuvem em produção.

O desafio fica mais complexo quando é necessário gerenciar os custos de não produção, como os gastos com integração contínua (CI). As empresas que adotam uma abordagem orientada por dados podem ter acesso a uma visibilidade detalhada de seus custos com CI. Elas podem saber exatamente como a expansão da CI afeta horizontal ou verticalmente os ciclos de feedback e os custos em diferentes arquiteturas de processador. Ao implementar padrões como ambientes de teste efêmeros, eles garantem a segurança e a qualidade de código e, ao mesmo tempo, otimizam os gastos.

Os proprietários dos produtos, que normalmente gerenciam o orçamento de uma linha de produtos, também podem colaborar com equipes de TI e líderes de engenharia para criar métricas de transparência. Essa colaboração permite que líderes realizem projeções orçamentárias em vários serviços e garantam que os recursos de infraestrutura sejam aproveitados em sua capacidade ideal. O resultado: as equipes de finanças finalmente podem saber quais aplicações geram mais retorno de investimento.

Conexão dos domínios técnico e financeiro

Criar um modelo de FinOps pode envolver uma abordagem de incentivo e cobrança. A abordagem de incentivo promove um ambiente mais colaborativo e transparente. Por outro lado, a abordagem de cobrança, como repreender as equipes de desenvolvimento por gastos excessivos, geralmente resulta em falhas nos processos. O objetivo do FinOps é considerar o que os desenvolvedores precisam para realizar seu trabalho e como isso impacta os resultados da empresa, e não apenas monitorar o uso de recursos na nuvem.

Recentemente, me reuni com uma grande companhia aérea que gastava cerca de US$ 5 milhões por ano em frotas de runners de CI. As análises de segurança, de dependência e de tokens são executadas dentro dessas frotas de runners. Eles poderiam ter pulado a etapa de segurança para reduzir os gastos, mas o potencial de problemas de segurança era uma preocupação muito maior do que gastar o dinheiro nas frotas de runners. Em vez de pular a etapa de segurança, a empresa precisava identificar como tornar as frotas de runners mais eficientes para reduzir seus gastos e ao mesmo tempo incentivar os desenvolvedores a inovar e fazer experimentos.

Um programa de FinOps bem-sucedido não requer uma equipe dedicada de profissionais de FinOps em tempo integral. O FinOps atua como um elo estratégico entre equipes multifuncionais, como finanças, produtos e engenharia. Um programa típico de FinOps inclui várias funções de trabalho, como um CTO ou VP de Engenharia, um líder financeiro e um ou mais líderes de engenharia que colaboram regularmente para avaliar problemas, identificar novas oportunidades de eficiência e criar planos de remediação.

O alinhamento das operações técnicas com os objetivos financeiros ajuda a garantir que os investimentos em infraestrutura de nuvem e desenvolvimento de software produzam o maior retorno possível. Isso pode demonstrar às equipes de DevSecOps como seu trabalho contribui diretamente para aumentar a receita, como elas podem reduzir custos ou ambos.

Controle financeiro inteligente dos fluxos de trabalho dos desenvolvedores

O FinOps monitora o consumo de recursos do ponto de vista operacional e do usuário para ajudar a otimizar os fluxos de trabalho dos desenvolvedores. Uma maneira de conseguir isso é analisar os jobs de CI e identificar quais custam mais do que seu valor justifica. Todo pipeline de desenvolvimento de software contém vários jobs, e cada um exige um recurso de execução como uma máquina virtual (MV) ou um contêiner. Quanto mais tempo cada job levar para ser executado, maior o custo. O FinOps ajuda os desenvolvedores a entender quais jobs têm um baixo rendimento para refatorar seu código.

Isso cria um modelo de autoatendimento que permite que as equipes de DevSecOps trabalhem com diretrizes claras. Por exemplo, uma política pode proibir alguém de provisionar recursos no valor de US$ 100.000 na AWS, mas pode permitir a criação de uma imagem do EC2 para realizar testes. No entanto, se conseguirem justificar por que precisam provisionar recursos no valor de US$ 100.000, podem enviar uma solicitação explicando como o projeto pode potencialmente gerar receita para a empresa. Se a solicitação for aprovada, o trabalho pode começar.

No entanto, quero tranquilizar os profissionais de DevSecOps de que o FinOps não tem como objetivo restringir a inovação por meio do monitoramento. Em vez disso, a prática oferece visibilidade total sobre o uso e os gastos com a nuvem da empresa, ajudando as equipes a identificar oportunidades para melhorar a produtividade da nuvem. Além de promover a colaboração entre as equipes de finanças, tecnologia e negócios, o FinOps analisa os padrões de uso e prevê a demanda para antecipar se os recursos precisam ser ampliados ou reduzidos para atender às necessidades futuras antes que gastos excessivos ocorram.

Colaboração mais fluída

Há um conflito de interesses constante entre as equipes de engenharia e de operações. A missão da equipe de engenharia é impulsionar a inovação que gera novos fluxos de receita e, ao mesmo tempo, criar ótimas experiências para o cliente. A equipe de operações se concentra em maximizar a produtividade e, ao mesmo tempo, economizar dinheiro. O FinOps diminui a tensão entre esses grupos, aumentando a produtividade dos desenvolvedores e reduzindo os gastos com a nuvem. Ou seja, a prática alinha a eficiência técnica à prudência financeira.

O FinOps ajuda as equipes de DevSecOps a considerar números concretos, não custos subjetivos. É fundamental abordar o desenvolvimento de software com uma compreensão clara de seu impacto financeiro na empresa para tomar decisões informadas sobre a continuidade do projeto com base em dois critérios principais: o projeto aumentará a receita ou reduzirá os custos?

Em sua essência, o FinOps não se trata apenas de cortar gastos, mas também de otimizar todo o ciclo de vida do desenvolvimento de software. O objetivo é ajudar os engenheiros e as operações a considerar a eficácia financeira, juntamente com a inovação técnica, para que entendam como seu trabalho contribui para impulsionar os resultados da empresa.

Leia mais sobre FinOps no site da FinOps Foundation.

Transforme o desenvolvimento de software

Leia o estudo Impacto Econômico Total™ encomendado pela Forrester Consulting em 2024 para entender como o GitLab Ultimate minimizou os custos, maximizou o desempenho e contribuiu com os objetivos de crescimento das empresas.

Baixe o estudo completo agora mesmo

Principais conclusões
  • O FinOps promove a colaboração entre as equipes de finanças, engenharia e negócios, alinhando os investimentos em nuvem aos objetivos estratégicos da empresa para garantir eficiência e retorno máximo.
  • Ao aumentar a transparência financeira, o FinOps capacita as empresas a tomar decisões rápidas orientadas por dados que otimizam os gastos com a nuvem.
  • A implementação do FinOps cria um equilíbrio entre inovação e controle de gastos, aliviando a tensão entre as equipes de desenvolvimento de produtos e de operações.