# Experiências por projeto e contribuição.

Trabalho profissional em diferentes empresas e clientes: do desenvolvimento mobile à integração de serviços, automação, dados e infraestrutura.

## Lyzer: Da investigação de bugs à proposta de correção

Cliente via Latitudde / Conkord

Construí um fluxo que conecta logs, tarefas e código, com revisão humana, e atuei no backend e no backoffice da operação logística.

### Contribuição

- Conectei Claude Code aos MCPs de Sentry, Jira e Azure para investigar tendências de bugs, abrir cards e propor pull requests para correções simples, com aprovação obrigatória de um desenvolvedor.
- Criei skills de geração de código dentro dos padrões do projeto e documentos de spec-driven development, além de construir e manter o pipeline.
- Atuei em um BFF .NET que consulta microserviços via GraphQL e HTTP e compõe as respostas para o app; no backoffice, trabalhei em componentes reutilizáveis, interfaces responsivas e refatoração.

**Stack:** Claude Code · MCP · Sentry · Jira · Azure DevOps · .NET · GraphQL · Next.js

## Visagio: Alocação escolar com Python e otimização linear

Dados e otimização

Desenvolvi um sistema para alocação em escolas públicas, conectando regras de negócio, dados e fluxos de uso.

### Contribuição

- Trabalhei no desenvolvimento full stack com Python, Django e React para o sistema de alocação escolar.
- Configurei instâncias AWS EC2 para executar rotinas de otimização linear em Python com OR-Tools.
- Automatizei processos em Google Sheets com Apps Script e comuniquei o andamento técnico em relatórios semanais aos stakeholders.

**Stack:** Python · Django · React · OR-Tools · AWS EC2 · Google Apps Script

## Human Robotics: Detecção de faces e máscaras no Robios

Visão computacional e IoT

Integrei captura de câmera, inferência e comunicação entre dispositivos no contexto de um produto de robótica.

### Contribuição

- Desenvolvi recursos Android em Java para detecção de faces e classificação do uso de máscaras, integrados a um modelo TensorFlow.
- Utilizei Camera2 para capturar as imagens consumidas pelo fluxo de visão computacional.
- Trabalhei com comunicação MQTT em tempo real entre dispositivos e backend, em um contexto com sensores LiDAR, ultrassônicos e mini PCs NUC.

**Stack:** Android · Java · Camera2 · TensorFlow · MQTT

## Iberdrola: Experiência mobile e offline na venda de energia

Cliente via Latitudde / Conkord

Atuei em um sistema de vendas de energia renovável, com recursos PWA, integração antifraude e regras de formulários.

### Contribuição

- Desenvolvi recursos de Progressive Web App para a experiência mobile e o uso offline.
- Integrei a API da IPQualityScore para apoiar a proteção contra fraude.
- Implementei validações de formulários no cliente e filtros de busca com Laravel Query Builder.

**Stack:** PHP · Laravel · Vue.js · PWA · IPQualityScore API

## Ernst & Young: Formulários dinâmicos para gestão de advogados

Cliente via Latitudde / Conkord

Modernizei uma aplicação Flutter e trabalhei nos fluxos de cadastro, documentos e publicação Android/iOS.

### Contribuição

- Tratei mudanças de API e compatibilidade com atualizações do Flutter em uma aplicação existente.
- Desenvolvi formulários dinâmicos para clientes, oportunidades e potenciais conflitos, com regras complexas e estado gerenciado por BLoC.
- Implementei captura e envio de imagens e documentos e liderei a publicação nas lojas.

**Stack:** Flutter · Dart · BLoC · Android · iOS · Firebase

## CTT — Correios de Portugal: Android para acompanhamento de entregas

Cliente via Latitudde / Conkord

Trabalhei na unificação de variantes, notificações e continuidade offline de um sistema de courier.

### Contribuição

- Unifiquei aplicativos de idioma único usando dimensões de flavors do Gradle.
- Implementei notificações FCM que acionavam eventos dentro do app e melhorei a investigação de problemas com Crashlytics.
- Viabilizei uso offline por entregadores com persistência local de dados.

**Stack:** Android · Kotlin · Gradle · FCM · Crashlytics

## Águas de Monchique: Frontend, backend e banco em containers

Cliente via Latitudde / Conkord

Estruturei um ambiente Docker e mantive o projeto; o conjunto de entregas ao cliente também inclui um dashboard Flutter Web.

### Contribuição

- Criei do zero a estrutura Docker para frontend, backend e banco de dados, padronizando a execução do sistema.
- Atuei na manutenção e em pequenas evoluções do projeto após a estruturação inicial.
- Realizei entregas Flutter para Android e de um dashboard web ao cliente.

**Stack:** Docker · Flutter Web

## Fullsix: Análise de uma API de OCR e apoio à equipe .NET

Cliente via Latitudde / Conkord

Analisei uma API Python de OCR e ajudei desenvolvedores .NET a trabalhar com Python.

### Contribuição

- Analisei e expliquei o funcionamento da API de OCR no contexto do projeto.
- Orientei desenvolvedores .NET em Python, dos fundamentos às estruturas de dados.

**Stack:** Python · OCR API

## Ascendi / SustIMS: Entrega mobile e reprodução de problemas

Cliente via Latitudde / Conkord

Atuei em entregas React Native para Android/iOS e reutilizei fluxos de agentes na manutenção do SustIMS.

### Contribuição

- Realizei uma entrega Android e uma iOS.
- Transformei eventos do Sentry em mocks para reproduzir erros e apoiar a investigação.
- Preparei demonstrações com dados recentes não sensíveis usando os fluxos de manutenção.

**Stack:** React Native · Android · iOS · Sentry · AI agents

## Águas de Portugal: Necessidades de negócio traduzidas em escopo

Requisitos e produto

Conduzi levantamento de requisitos, refinamento de escopo e mapeamento de regras de negócio.

### Contribuição

- Conduzi sessões para compreender as necessidades do cliente e alinhar o escopo do sistema.
- Desenhei fluxogramas detalhados e mapeei regras de negócio para orientar a implementação.

**Stack:** Requirements · Business rules · Flowcharts

## Code 495 / LineLinker Pro: LineLinker Pro: trabalho offline e mapas fluidos

Cliente via Latitudde / Conkord

Coordenei uma equipe de quatro pessoas entre backend e mobile e trabalhei no código de uma aplicação Flutter para operações em campo.

### Contribuição

- Coordenei uma equipe de quatro pessoas entre backend e mobile e alinhei semanalmente o projeto com stakeholders, mantendo atuação direta no código.
- Implementei uso offline com sincronização automática em segundo plano ao recuperar a conexão e resolução de conflitos entre versões com assistência ao usuário.
- Reduzi o carregamento de mapas de cerca de dois minutos para menos de um segundo e aumentei a renderização de cerca de 5 para 60 FPS ao mover o mapa, usando clusterização de pontos.

**Stack:** Flutter · Dart · Android · iOS

## Conkord: Liderança da área mobile

Liderança mobile

Lidero a área mobile da Conkord. Todos os projetos mobile passam por mim, seja na definição de arquitetura, na orientação da equipe ou na manutenção de aplicativos já em produção.

### Projetos

- [Van Cranenbroek: Aplicativo de varejo](https://leonedaher.com/pt/apps/van-cranenbroek)
- [Lyzer: Collect · preparação de pedidos](https://leonedaher.com/pt/apps/lyzer-collect)
- [Lyzer: Deliver · operação em campo](https://leonedaher.com/pt/apps/lyzer-deliver)
- [Lyzer: IA, backend e backoffice](https://leonedaher.com/pt/experiencias#lyzer)
- [CTT: Acompanhamento de entregas Android](https://leonedaher.com/pt/experiencias#ctt)
- [EY: Formulários para gestão de advogados](https://leonedaher.com/pt/experiencias#ey)
- [Iberdrola: Vendas de energia e PWA](https://leonedaher.com/pt/experiencias#iberdrola)
- [Água Monchique: Sistema web e Android](https://leonedaher.com/pt/experiencias#monchique)
- [Fullsix: Análise de API de OCR](https://leonedaher.com/pt/experiencias#fullsix)
- [Code 495: LineLinker Pro](https://leonedaher.com/pt/experiencias#code-495)
- [Ascendi: SustIMS](https://leonedaher.com/pt/experiencias#ascendi)

## Radix: Estágio em engenharia

Agosto de 2015 a agosto de 2016.
