Descarregar PDFContacto

Tiago Fonseca

Engenheiro backend a construir sistemas de pagamentos que não caem

Engenheiro backend sénior com onze anos a construir sistemas transacionais para plataformas de fintech e marketplaces. Liderou a migração de um núcleo monolítico de pagamentos para serviços orientados a eventos que processam 40M de transações por mês, e orienta engenheiros a desenhar para a falha em vez de à volta dela.

Engenheiro de Software Sénior, Plataforma de Pagamentos

de fevereiro de 2021 até ao presente

Responsável pelos serviços de ledger e liquidação de uma plataforma de pagamentos que processa 40M de transações por mês em 9 mercados europeus.

  • Liderou a decomposição do monólito de pagamentos em 14 serviços orientados a eventos sobre Kafka, reduzindo o tempo de deploy de 45 minutos para menos de 8.
  • Desenhou um pipeline de liquidação idempotente que reduziu os incidentes de pagamentos duplicados de cerca de 30 por mês para zero ao longo de 18 meses.
  • Baixou a latência p99 de autorização de 850ms para 210ms com réplicas de leitura e uma camada de rate limiting suportada em Redis.
  • Orienta quatro engenheiros; dois foram promovidos a sénior graças aos sistemas que desenharam sob esta orientação.
GoKafkaPostgreSQLSistemas distribuídosPagamentos

Engenheiro Backend

de junho de 2017 a janeiro de 2021

Construiu APIs de gestão de encomendas e logística para um marketplace de artigos em segunda mão com 2,5M de utilizadores ativos mensais.

  • Reescreveu a máquina de estados das encomendas, eliminando uma classe de erros de encomendas bloqueadas que gerava mais de 400 pedidos de suporte por trimestre.
  • Introduziu testes de contrato em 20 serviços internos, reduzindo em 70% as regressões de integração encontradas em produção.
  • Escalou o pipeline de indexação de pesquisa para suportar um aumento de 6x no volume de anúncios durante o confinamento de 2020 sem hardware adicional.
Node.jsTypeScriptRabbitMQElasticsearch

Programador de Software

de setembro de 2014 a maio de 2017

Entregou sistemas backend para clientes da banca e dos seguros, integrado numa equipa de consultoria de 12 pessoas.

  • Construiu um motor de reconciliação em batch para um banco regional que encurtou o fecho noturno de 6 horas para 90 minutos.
  • Automatizou o pipeline de deployment de três projetos de clientes, substituindo releases manuais por FTP por builds de CI versionadas.
  • Classificado como melhor colaborador no ciclo de avaliação interna de 2016, entre 40 programadores.
JavaSpringOracleConsultoria

ledgerline

de março de 2023 até ao presente

Uma biblioteca em Go para contabilidade de dupla entrada incorporável, com verificações estritas de invariantes, usada em três sistemas fintech em produção.

  • Fez crescer o projeto até 1.900 estrelas no GitHub e 12 contribuidores externos.
  • Suite de testes baseados em propriedades verifica os invariantes de saldo em 10.000 sequências de transações geradas por cada execução de CI.
GoOpen sourceContabilidade

Meetup Backend Lisboa

de janeiro de 2022 até ao presente

Meetup trimestral sobre sistemas distribuídos e engenharia de plataformas, com uma média de 120 participantes por sessão.

  • Curou 16 palestras em três anos, incluindo quatro oradores estreantes acompanhados do esboço ao palco.
  • A palestra "Exactly-once é uma mentira que se conta duas vezes" registou 8.000 visualizações.
ComunidadePalestras

Licenciatura em Engenharia Informática

de setembro de 2009 a junho de 2014

Foco em sistemas operativos, bases de dados e programação concorrente. Projeto final: um message broker tolerante a falhas em C.

ConcorrênciaBases de dadosSistemas operativos

Ferramentas essenciais para desenhar, lançar e operar sistemas backend de alto débito.

GoTypeScriptPostgreSQLKafkaKubernetesgRPCTerraformObservabilidade (Grafana, OpenTelemetry)Arquitetura orientada a eventosResposta a incidentes

Trabalha diariamente em equipas anglófonas; à vontade a apresentar desenhos técnicos em ambas as línguas.

Português (nativo)Inglês (C1)Espanhol (B1)