[ ABOUT ]
I spent three years in clinical practice — paediatric emergency and primary care — and moved into AI engineering without giving up the clinical side. One question runs through everything I do: when is a model reliable enough to support a decision?
Accuracy does not answer that. A model can be right on average and lie about its own confidence; a saliency map can be beautiful and bear no relation to the decision the model actually made. So I measure calibration, test outside the training distribution, check whether the explanation matches what the model really used — and I report the negative results, which is the part that usually disappears from write-ups.
I currently work as an AI Engineer at LetzGrow and am taking a Professional Master's in Software Engineering at CESAR School.
[ NOW ]
First student ever selected with two simultaneous projects in CESAR School's School Innovation programme (2026.2 cohort). It is the school's pre-incubation track: teams go through competitive selection, leave the regular Project course behind and are supervised by faculty advisors, assessed on delivered artefacts through the semester. Eight teams were selected in the cohort; two of them are mine.
LetzGrow
AI Engineer·Grow Group·2026 – present
An AI-assisted career development platform. A conversational agent drives the journey, interprets open-ended answers and generates a development plan by decomposing the goal into adaptive micro-tasks, with RAG grounding the recommendations in the person's own profile rather than in generic text. I own the backend, the AI pipeline and the sensitive-data layer (conditional access, audit trail, Brazil's LGPD — the local equivalent of the GDPR).
NestJS · Prisma · PostgreSQL · Groq (Llama 3.3 70B) · Ollama · BullMQ/Redis · React · AWS CDK
MAPEN
Technical lead: data and computer vision·2026 – present
Detecting electricity-grid losses from the divergence between distributed and consumed energy. I built the data layer — hourly load series from Brazil's national grid operator from 2000 to 2026, consumption per state and IBGE geographic boundaries — and the automatic meter-reading subproject, which replaces manual display reading with OCR using TrOCR fine-tuned on the UFPR-AMR dataset.
Python · PyTorch · Transformers · PaddleOCR · DuckDB · MLflow
[ RESEARCH ]
Master's dissertation (CESAR School, 2026): two connected papers on the reliability of medical imaging models.
Training reuse for triage in multi-domain medical imaging
Controlled comparison of four backbone origins across five MedMNIST domains, evaluating AUC, calibration and occlusion-based explanation faithfulness. Forensic intermediate fine-tuning won consistently, and the calibration gap was larger than the gap in discriminative power: the choice of pretraining affects the reliability of declared confidence more than it affects raw accuracy.
Negative result reported: Grad-CAM produced concentrated, convincing maps with zero faithfulness to the model's actual decision under occlusion testing. A plausible explanation is not an explanation.
Manipulated-image detection with lightweight convolutional networks
Empirical and adversarial evaluation of in-house detectors against ViT, Swin and ensembles, across three distributions. No single detector generalises across manipulation types, and in-distribution performance does not predict out-of-distribution performance. "Lightweight in parameters" does not imply lightweight in practice either — the cost metric that matters is measured latency.
Code and experimental infrastructure — MLflow with per-epoch metrics, inference logging deduplicated by content hash, and statistical aggregation over multiple seeds.