Experiência
-
Engenheiro de Software Sénior
Liderar a implementação de novos domínios dentro da equipa de Aquisições, juntamente com iniciativas transversais da plataforma.
Liderar a implementação de novos domínios dentro da equipa de Aquisições, juntamente com iniciativas transversais da plataforma.
- Liderou a construção inicial do Contexto Delimitado do Recetor — entidades fundamentais, estrutura de filtros, modelo de disponibilidade, primeiros endpoints de serviço para serviço e infraestrutura inicial de testes de integração/sistema — passando as iterações posteriores a outros responsáveis.
- Estruturamos e desenvolvemos um novo Contexto Delimitado de Promoções de raiz: raiz agregada, entidade de configurações de segmentação, ciclo de vida do cupão (entidades mais serviços de disponibilidade/utilização/criação), domínio de atribuição (entidades, eventos, contratos, processador) e um fornecedor de cupões com reconhecimento de rota.
- Desativamos progressivamente as APIs legadas de destinatários em favor de endpoints pertencentes ao contexto delimitado em fábricas, fluxos em lote e ferramentas internas.
- Desenvolvi e implementei uma biblioteca cliente HTTP em PHP para toda a empresa — composição baseada em fábricas, reutilização orientada a características, fábricas de pedidos com JWT integrado e autowiring do Symfony — e promovi a sua adoção em dois serviços.
- Liderou a implementação do AsyncAPI como padrão de documentação da equipa, priorizando o contrato: validação do esquema antes do commit, testes de contrato alinhando a serialização das entidades com os esquemas publicados e um processo de revisão por escrito para os consumidores subsequentes.
- Liderou a contribuição da equipa Acquire para um programa transversal de retenção de dados que abrangia três serviços.
- Introduzimos ferramentas de desenvolvimento assistidas por IA na equipa: ficheiros de contexto de agentes, fluxos de trabalho de comandos estruturados, separação de PRD/Plano e competências de análise de pré-planeamento.
- Trabalho recorrente de fiabilidade: bloqueio otimista, tratamento de restrições de integridade, correções de condições de corrida em inserções de verificação duplicada, remediação N+1, investigação de DLQ, comportamento de encerramento correto de processos.
- Continuação da gestão do recurso Indique um Amigo em paralelo: limpeza de padrões legados, atualização da versão do PHP, automatização de dependências, remoção sistemática de recursos de ativação/desativação.
-
Engenheiro de Software Sénior
Continuar a liderar o programa Indique um Amigo dentro da equipa de Aquisições, com um âmbito alargado para abranger plataformas e questões transversa…
Continuar a liderar o programa Indique um Amigo dentro da equipa de Aquisições, com um âmbito alargado para abranger plataformas e questões transversais aos serviços.
- O contexto delimitado da RAF e o seu modelo de dados foram reforçados a tal ponto que um esforço posterior de extração de serviços - executado por outro engenheiro - foi concluído em poucos dias, sem incidentes de produção.
- Implementámos refatorações de armazenamento de dados em larga escala, alinhadas com os novos limites de serviço, melhorando o desempenho das consultas e a capacidade de manutenção a longo prazo.
- Aumento da cobertura de observabilidade para a RAF com métricas dedicadas, alertas e painéis de controlo, reduzindo o tempo de deteção de problemas em produção.
- Contribuiu com uma biblioteca partilhada para toda a empresa, relacionada com o tratamento de exceções e o comportamento do cliente HTTP, posteriormente adotada em diversos serviços.
- Autora da RFC que define o modelo de domínio Receivers, moldando padrões de integração entre equipas para consumidores a jusante.
- Implementámos uma série de melhorias no produto e na plataforma: redireccionamentos de links RAF, atribuição de campanhas após eventos do fornecedor de identidade, verificações de perfis e amigos relacionados, adaptação da moeda do programa, correções no total de recompensas e refinamentos no recálculo de campanhas.
- Melhoria dos processos de integração e consentimento de marketing nas operações diárias, em colaboração com a equipa de Trust e Regulatory Affairs.
- Trabalho contínuo na experiência do programador: enums partilhados, ergonomia de filas e melhorias de integração em torno de corredores favoritos e dados de transações.
-
Web Developer Backend Remoto
Faz parte da equipa Acquire, liderando a reformulação da plataforma Indique um Amigo.
Faz parte da equipa Acquire, liderando a reformulação da plataforma Indique um Amigo.
- Desenhei e implementei um novo Contexto Delimitado para o domínio "Indique um Amigo", migrando a funcionalidade existente para uma arquitetura mais clara e reduzindo o acoplamento com a plataforma de Remessas adjacente.
- Responsável pelo ciclo de vida completo da gestão de utilizadores do programa Advocate/Friend no novo contexto, incluindo identidade, elegibilidade e transições de estado.
- Gestão própria de programas — programas, campanhas e estratégias promocionais — e implementação de suporte para múltiplas campanhas simultâneas por programa.
- Substituímos as verificações manuais de elegibilidade do utilizador por uma estrutura de verificação automatizada e extensível, permitindo a adição de novas regras sem alterar os fluxos principais.
- Formatos de resposta da API padronizados e tratamento de erros em todos os endpoints do RAF, produzindo contratos de entidade consistentes, independentemente da interface de chamada.
- Melhoria no registo estruturado e na gestão de filas; a integração de uma nova fila passou de um processo de vários dias para uma única manhã.
- Redução do tempo de entrega para correções de bugs e implementação de novas funcionalidades; diversas melhorias são agora lançadas em questão de horas, em vez de sprints.
- Estabeleci uma cadência de detalhe de Épicos/Histórias/Subtarefas para utilização pela equipa.
- Aumento da estabilidade da plataforma após a migração.
-
Web Developer Backend Remoto
Comecei na área da engenharia de conformidade, trabalhando com triagem de utilizadores e prevenção de fraude, e depois passei a trabalhar no núcleo da…
Comecei na área da engenharia de conformidade, trabalhando com triagem de utilizadores e prevenção de fraude, e depois passei a trabalhar no núcleo da plataforma à medida que partes do sistema migravam para uma arquitetura de microsserviços.
- Desenvolvi e mantive fluxos de triagem de utilizadores no domínio de Conformidade: integração KYC, verificação de identidade através de fornecedores de verificação de identidade de terceiros e consultas de detalhes de contas bancárias.
- Implementámos listas negras e regras de risco para utilizadores, cartões e países, equilibrando a prevenção de fraudes com falsos positivos que bloqueiam os clientes legítimos.
- Fornecedores externos integrados de verificação e triagem, que lidam com falhas parciais, novas tentativas e respostas inconsistentes sem bloquear o processo de integração.
- Passei a trabalhar na plataforma principal de remessas, ajudando na transição de partes do monólito para micro-serviços.
- Pilha LAMP (Laravel e Symfony), com uma clara separação entre as camadas de Aplicação, Domínio, Framework e Infraestrutura.
- Design orientado para o domínio e desenvolvimento orientado para testes, aplicando padrões e princípios de design estabelecidos.
-
Web Developer Backend Remoto
Desenvolvimento de um projeto de plataforma de negociação para transações de ativos financeiros.
Desenvolvimento de um projeto de plataforma de negociação para transações de ativos financeiros.
Design de microsserviços orientado a eventos, como parte de uma solução SaaS Fintech maior, envolvendo tokens blockchain e gestão de carteiras eletrónicas. Baseado em LAMP (Laravel).
- Desenvolvimento utilizando arquitetura de micro-serviços e orientada a eventos.
- Separação nítida entre as camadas de Aplicação e de Domínio.
- Design orientado para o domínio e desenvolvimento orientado para testes.
- Aplicar as melhores práticas da indústria (Design Standards/Design Principles).
-
Web Developer Backend Remoto
The Interaction Design Foundation
Auxiliar no desenvolvimento e na manutenção do produto SaaS da empresa.
-
Web Developer Fullstack Remoto / Líder de Equipa
redWEB ApS
Reescrever o principal produto da empresa, fornecendo-lhe uma arquitetura e um design mais fiáveis. Desenvolver as funcionalidades core tanto do backe…
Reescrever o principal produto da empresa, fornecendo-lhe uma arquitetura e um design mais fiáveis. Desenvolver as funcionalidades core tanto do backend como do frontend, com uma forte separação de responsabilidades, que irá suportar o desenvolvimento futuro da plataforma.
Migramos para um sistema de pacotes baseado em Composer, que é independente de plataforma (PHP). Isto permite que a plataforma seja instalada em diversas plataformas/frameworks de backend, bem como a alteração independente de templates/interfaces no frontend.
Desenvolvimento frontend utilizando ES6, HTML5 e CSS3 (LESS). Desenvolvimento backend utilizando arquiteturas SOA/N-Tier e DDD. Aplicação das melhores práticas da indústria (Design Patterns/Design Principles).
Separação nítida entre a camada de aplicação e o domínio.
Desenvolvimento orientado a testes (TDD) completo do projeto (domínio e frontend). Testes unitários e de integração completos no domínio. Testes unitários e de aceitação na camada de aplicação (incompletos).
-
Consultor de Software Independente / Fundador
Engenheiro backend sénior e freelancer. Mais de 20 anos de experiência a desenvolver sistemas de produção PHP para clientes internacionais nos setores…
Engenheiro backend sénior e freelancer. Mais de 20 anos de experiência a desenvolver sistemas de produção PHP para clientes internacionais nos setores fintech, pagamentos, SaaS, educação e cibersegurança. Especialista em Domain-Driven Design (DDD), Arquitetura Orientada a Eventos e micro-serviços.
Trabalho remoto, com sede na UE.
ARQUITETURA E MODELAÇÃO DE DOMÍNIO - Entregamos múltiplos contextos delimitados (Bounded Contexts) de raiz, do início ao fim - raízes agregadas, eventos de domínio, contratos, APIs REST de serviço para serviço - migrando funcionalidades legadas de sistemas monolíticos para domínios claramente definidos.
- Desenvolvi um sistema de pacotes baseado em Composer, independente de plataforma e implantável em várias estruturas PHP, com interfaces intercambiáveis.
PADRÕES DE PLATAFORMA E API - Bibliotecas partilhadas para toda a empresa - Cliente HTTP com composição de fábrica, fábricas de requisição com JWT integrado e autowiring do Symfony, além de tratamento de exceções partilhado - adotadas em diversos serviços.
- Liderou a adoção da abordagem "contract-first" da AsyncAPI: validação de esquemas pré-commit, testes de contrato que ligam a serialização a esquemas publicados e um processo de revisão subsequente documentado.
FIABILIDADE E OBSERVABILIDADE - Reforçámos um Contexto Delimitado e o seu modelo de dados para que uma posterior extração para um micro-serviço independente pudesse ser implementada em poucos dias, sem incidentes em produção.
- Eliminação de classes de falhas recorrentes: bloqueio otimista, condições de corrida, consultas N+1, filas de mensagens não entregues e encerramento controlado de processos.
- Métricas, alertas e painéis de controlo que reduzem o tempo de deteção.
ENTREGA E ENGENHARIA ASSISTIDA POR IA - O processo de integração de novos utilizadores na fila de espera foi reduzido de vários dias para uma única manhã; o tempo de correção de bugs foi reduzido de sprints para horas.
- Introduzimos fluxos de trabalho de desenvolvimento assistidos por IA – ficheiros de contexto de agentes, pipelines de comandos estruturados, separação de PRD/Plano, análise de pré-planeamento – em bases de código de produção.
- Liderou e orientou engenheiros; as cadências de Épico/História/Subtarefa ainda estão em uso após a transição.
-
CTO
Construções Europa Ar-lindo, S.A
Gestor de infraestrutura de TI. Supervisor de implementação de ERP. Integração e automatização de sistemas proprietários e de terceiros.
Gestor de infraestrutura de TI. Supervisor de implementação de ERP. Integração e automatização de sistemas proprietários e de terceiros.
Monitorização, auditoria e automatização de fluxos de trabalho internos. Desenvolvimento de aplicações para BI (Business Intelligence). Auditoria e geração de relatórios para DSS (Decision Support Systems).
Desenvolvimento web e para Windows. Gestão de telecomunicações.
-
Gestor de TI
Habitâmega-Construções, S.A.
Gestor de Infraestrutura de TI. Desenvolvimento e personalização de ERP. Validadores, Automações, Auditorias e Reporting em PHC Advanced e Enterprise.
Gestor de Infraestrutura de TI. Desenvolvimento e personalização de ERP. Validadores, Automações, Auditorias e Reporting em PHC Advanced e Enterprise.
Implementação e personalização de sistemas de domótica.
-
Web Developer
DaPitch
Desenvolvimento de uma aplicação de interface rica (RIA), com ampla utilização de JavaScript, imitando o comportamento das aplicações desktop. Conteúd…
Desenvolvimento de uma aplicação de interface rica (RIA), com ampla utilização de JavaScript, imitando o comportamento das aplicações desktop. Conteúdo gerado pelo utilizador (UGC) e conteúdo gerado pelo sistema. Autogestão completa do sistema.
Pilha LAMP.
-
Desktop Developer
QuintaSinfonia, S.A.
Desenvolvimento de aplicações desktop para uma das 3 maiores empresas de software de gestão escolar do país. Migração de VB6 para WinForms 2.0. Desenv…
Desenvolvimento de aplicações desktop para uma das 3 maiores empresas de software de gestão escolar do país. Migração de VB6 para WinForms 2.0. Desenvolvimento de sistema de atualização automática para a aplicação.
-
Programador de Software
Instituto Universitário da Maia
Desenvolvimento de formulários web em .NET 1.1. Design e desenvolvimento multimédia em ActionScript e Flash.