Quando falamos sobre evolução de software, não tem como não lembrar do caso da Patreon em 2025. Eles enfrentaram um desafio clássico: como entregar novas funcionalidades para mais de 10 milhões de membros pagantes enquanto reconstruíam a infraestrutura por trás disso? O time de engenharia da Patreon documentou suas experiências em um Year in Review, e as lições que eles compartilharam são ricas em insights para nós, arquitetos de software.

O Cenário e os Desafios

A primeira coisa que salta aos olhos na análise da Patreon é a realidade econômica do desenvolvimento de software. Um relatório de maio de 2025, da Idea Link, colocou em evidência que a maior parte dos custos de um software não está na sua construção inicial, mas sim na manutenção contínua. Isso se reflete perfeitamente no trabalho da Patreon, que tinha mais de 300.000 criadores de conteúdo ativos e milhões de assinantes. Em vez de focar em novos desenvolvimentos, a narrativa de 2025 foi sobre manutenção perfeita e evolução de um ambiente já existente.

Estratégias de Migração Resilientes

Um dos projetos mais impactantes foi a migração de 50TB de dados de um MySQL autogerenciado em EC2 para o Amazon Aurora. A equipe da Patreon não poderia se dar ao luxo de ter um downtime significativo, então eles optaram por uma estratégia de migração defensiva. Eles estabeleceram um fluxo de replicação para o novo cluster Aurora enquanto o cluster EC2 legado permanecia ativo como um fail-safe. Essa redundância se mostrou crítica quando uma configuração obscura no general.log do Aurora causou picos de latência. Graças a isso, eles conseguiram retornar instantaneamente ao caminho legado do EC2, preservando a disponibilidade do sistma.

O Padrão Gatekeeper

Outro exemplo interessante foi a remoção de um React Router legado, que estava envolto em anos de dívidas técnicas. Sem o conhecimeto institucional do código antigo, os engenheiros construíram primeiro uma infraestrutura de observabilidade e feature-flagging. Isso permitiu que eles roteassem o tráfego de forma incremental para a nova arquiteturra Next.js, verificando a paridade antes de descomissionar o antigo roteador.

Refatoração do Modelo de Dados

Um dos grandes desafios enfrentados pela equipe foi quebrar relações de dados rígidas que limitavam o crescimento do produto. O projeto Multiple Podcasts exigiu uma refatoração do modelo de identidade central, que assumia um feed RSS por criador há mais de uma década. A equipe teve que desacoplar a entidade de feed da entidade de usuário no esquema de backend antes de qualquer trabalho no frontend. Além disso, a introdução de subscription gifting quebrou a suposição de estado binário do motor de cobrança, forçando os arquitetos a redesenhar a máquina de estado de cobrança para suportar estados de assinatura simultâneos, como um usuário tendo uma assinatura pessoal paga e uma assinatura presenteada.

Escolhas Deliberadas de Consistência

Um tema final e fundamental que se destacou na revisão foi a escolha deliberada de trade-offs de consistência em sistemas distribuídos. A equipe fez referência explícita ao teorema CAP, detalhando situações em que priorizaram a consistência em vez do throughput. No motor de marketing Autopilot, o risco de divergência de dados foi considerado inaceitável. Portanto, eles mudaram de processamento em lote de alto throughput para um modelo de transação atômica por destinatário, aceitando uma latência maior por registro para garantir que as ações de gravação no banco de dados e o envio de e-mails permanecessem consistentes.

Dicas e Considerações Finais

Com base nas lições aprendidas da experiência da Patreon, aqui vão algumas dicas que podem ser úteis para engenheiros e arquitetos de software:

Refletindo sobre tudo isso, fica claro que a arquitetura de software não é apenas sobre construir algo novo, mas sobre como evoluímos e mantemos o que já temos. A experiência da Patreon nos lembra que, no mundo do desenvolvimento, é preciso sempre estar preparado para o inesperado e fazer escolhas que garantam a resiliência e a efetividade de nossas soluções.

Conclusão

Ao final do dia, o que aprendemos com a jornada da Patreon é que a verdadeira inovação muitas vezes está em como gerenciamos e adaptamos nossa infraestrutura existente. Como arquitetos, devemos ter a mente aberta para aprender com os desafios dos outros e aplicá-los em nossos próprios projetos.