June 10, 2022 byAndrew Spencer

Como uma abordagem API-first está a moldar o futuro da Zonos

Já se perguntou o que significa ser uma empresa API-first? Leia a perspetiva de Andrew Spencer, vice-presidente de engenharia da Zonos, sobre como uma abordagem API-first está a moldar o futuro da Zonos.

A Zonos é uma empresa API-first. Há muita informação condensada nesta curta afirmação. Então, o que significa realmente? Este blog vai explicar o conceito de empresa API-first, tal como é demonstrado pela Zonos.

Se afirmamos que a Zonos é uma empresa API-first, daí decorre que as nossas APIs são a principal estratégia através da qual cumprimos a nossa missão de criar confiança no comércio global. Em termos táticos, isto significa que temos de adotar uma abordagem API-first transversal a toda a empresa em tudo o que fazemos. Ao considerarmos as necessidades de um cliente, perguntamos primeiro: “Como podem as nossas APIs satisfazer as necessidades do cliente?”

Para compreender melhor o que significa ser uma empresa API-first, este blog vai abordar os seguintes temas:

  • O que é uma abordagem API-first?
  • Quais são os benefícios de uma abordagem API-first?
  • Porque é que trabalhar de trás para a frente é eficaz?
  • Qual é a responsabilidade da engenharia?

O que é uma abordagem API-first? 

A abordagem API-first contrasta fortemente com a abordagem code-first, na qual uma equipa começa por conceber a funcionalidade da aplicação, escreve o código e só no final do processo acrescenta as APIs.

Na Zonos, desenvolver software com uma abordagem API-first significa conceber soluções em torno de uma API, em vez de programar uma aplicação e acrescentar uma API mais tarde. Isto significa que as nossas APIs são primordiais e constituem produtos por direito próprio; concebemo-las com um foco intenso nas necessidades do cliente, e documentamo-las e definimos a sua arquitetura de forma clara antes de escrever qualquer código.

Os benefícios de uma abordagem API-first 

A abordagem API-first ajuda a estabelecer a seguinte mentalidade:

  • Compreendemos que as nossas APIs são a principal interface para os nossos clientes e, por isso, encaramo-las como os nossos produtos entregáveis públicos.
  • Documentar antes de escrever código dá-nos a oportunidade de ponderar, discutir, aperfeiçoar e comunicar os nossos objetivos às nossas equipas e partes interessadas, de modo a criar um produto final melhor.
  • Ao centrarmo-nos nas necessidades dos nossos clientes, compreendemos a melhor forma de conceber APIs que respondam a essas necessidades.

Esta mentalidade coloca as nossas APIs e os nossos clientes em primeiro lugar e é fundamental para estabelecer uma base em que todos na Zonos são responsáveis pelo sucesso do cliente.

As equipas de desenvolvimento podem trabalhar em paralelo

A abordagem API-first implica estabelecer um contrato. Criar um contrato entre serviços que é seguido por equipas de toda a organização permite que essas equipas trabalhem em várias APIs ao mesmo tempo. Os programadores não têm de esperar que as atualizações de uma API sejam lançadas para passarem à API seguinte. As equipas podem, em simultâneo, testar com simulações (mocks) as APIs e as dependências entre APIs com base em definições de API previamente estabelecidas.

Reduz o custo de desenvolvimento

As APIs e o código podem ser reutilizados em muitos projetos diferentes. Com a abordagem API-first, se uma equipa de desenvolvimento quiser criar uma nova aplicação, não tem de começar do zero, o que poupa tempo e dinheiro. O design API-first também permite resolver a maioria dos problemas antes sequer de se escrever qualquer código, o que ajuda a evitar problemas quando chega a altura de integrar as APIs com as aplicações.

Aumenta a rapidez de chegada ao mercado

Grande parte do processo de criação de APIs pode ser automatizada com ferramentas que importam ficheiros de definição de API. Começamos por gerar os tipos, as definições e os esquemas principais; a partir desses ficheiros, é possível gerar automaticamente ferramentas de API como documentação de API, kits de desenvolvimento de software (SDKs) e APIs simuladas. A automação acelera significativamente o desenvolvimento de APIs e aplicações.

A abordagem API-first também permite acrescentar novos serviços e tecnologias às aplicações sem ter de redefinir a arquitetura de todo o sistema. A Zonos tem de colocar funcionalidades em produção rapidamente para se manter competitiva no mercado SaaS transfronteiriço, em constante mudança. É mais fácil eliminar dívida técnica no código subjacente do que migrar clientes de uma API mal concebida.

Garante boas experiências para os programadores

Os consumidores de APIs são, na maioria das vezes, programadores, e a experiência do programador (DX) pode ditar o sucesso ou o fracasso de uma API. A abordagem API-first garante que a experiência do programador é positiva, porque uma API bem concebida, bem documentada e coerente é mais fácil de aprender e reutilizar. Isto também aumenta a rapidez de implementação. Todos estes benefícios estão interligados!

Aumenta o sucesso a longo prazo

Uma abordagem API-first permite prototipagem e iteração rápidas, o que significa que aprendemos mais depressa o que funciona e o que não funciona. Tal como as 1000 tentativas falhadas de Edison antes de criar a lâmpada, API-first significa falhar depressa e avançar com uma melhor compreensão de como alcançar o sucesso. A abordagem API-first aumenta o nosso sucesso a longo prazo ao garantir que as APIs são fiáveis, coerentes e fáceis de utilizar pelos programadores.

Porque é que trabalhar de trás para a frente é eficaz? 

Em 2015, tive a oportunidade de redesenhar o site de comércio eletrónico de uma marca de consumo popular. Avaliei vários indicadores-chave de desempenho (KPIs) relacionados com o sistema existente, e era evidente onde se podiam fazer as maiores melhorias:

  • A taxa de conversão em computador estava abaixo do padrão.
  • A taxa de conversão em dispositivos móveis era péssima.
  • A percentagem de tráfego móvel estava a aumentar rapidamente e ultrapassaria 50% do tráfego total nos 12 meses seguintes. Devido à péssima taxa de conversão em dispositivos móveis, o facto de a maior parte do tráfego ser móvel não era o ideal.

Perante estes dados, o que criaria mais valor para os utilizadores? Era óbvio: corrigir os problemas da experiência de utilizador do site em dispositivos móveis. Por isso, adotei uma abordagem mobile-first para redesenhar o site. Isto significou que todos os designs, a arquitetura, as APIs, etc. consideravam em primeiro lugar a experiência móvel. Era o inverso da abordagem tradicional da altura, que se centrava primeiro na experiência em computador, deixando muitas vezes a experiência móvel como um acrescento desajeitado e tardio, com taxas de conversão fracas. A abordagem mobile-first também exigiu mais esforço à partida — não foi o caminho fácil. Foi necessária uma nova arquitetura, tiveram de ser escritas novas APIs e foram necessários vários designs para cada breakpoint.

A abordagem mobile-first resultou num aumento significativo da taxa de conversão em dispositivos móveis. A nova arquitetura também gerou ganhos impressionantes na taxa de conversão em computador. A abordagem teve êxito porque identificou como criar o máximo valor para o utilizador e centrou toda a estratégia na entrega desse valor. Criou a mentalidade certa desde o início. Do mesmo modo — embora possa parecer trabalhar de trás para a frente — uma abordagem API-first cria oportunidades para identificar problemas de fundo e, depois, construir uma base para os corrigir.

Qual é a responsabilidade da engenharia? 

A mentalidade API-first conduziu e continuará a conduzir a Zonos ao sucesso, e a engenharia desempenha um papel essencial. É nossa responsabilidade manter sempre a mentalidade API-first. Isto significa que estamos constantemente a fazer perguntas que mantêm o foco nas nossas APIs, como: “Como podem as nossas APIs satisfazer as necessidades do cliente” Significa também que respondemos sempre a perguntas sobre funcionalidades com uma ligação para a nossa documentação de API. Se a documentação não existir, criamo-la — trabalhando em conjunto em equipas multifuncionais para garantir que a Zonos tem uma documentação de API de excelência.

Author
Andrew Spencer
Published: June 10, 2022
Share