Clinical reasoning
Translate pharmacovigilance, longitudinal observation and safety requirements into concrete data and interface decisions.
Physician, Clinical Pharmacology Resident and eHealth Developer in Madrid. I turn healthcare questions into inspectable prototypes, document their limits and improve them through real deployment feedback.
My work starts with a clinical or operational problem, narrows it to a testable software boundary, and keeps uncertainty visible. The result is not a claim of medical validation: it is evidence of product thinking, engineering iteration and responsible scope.
PUBLIC PORTFOLIO // CODE + DECISIONS + LIMITS
Translate pharmacovigilance, longitudinal observation and safety requirements into concrete data and interface decisions.
Build across frontend, backend, database and deployment layers, then use production discrepancies to drive the next version.
Separate prototypes from validated products, distinguish signals from causality and document what a system cannot safely do.
Three projects show an evolution from learning exercises to systems with explicit deployment, security and domain constraints.
STATUS LABELS DESCRIBE THE CURRENT PUBLIC VERSION
A research POC for clinician-supervised longitudinal modelling using synthetic data, coordinated agent contracts, inspectable uncertainty and a safety layer. It is not a medical device, diagnostic service or crisis tool.
A Flask webmail interface that progressed from a Python object model to real IMAP/SMTP integration and a self-hosting architecture. The public Render deployment now uses a synthetic showcase mode, so visitors can evaluate the interaction without exposing mail credentials.
A browser workbench separating restricted European pharmacovigilance access from lawful public aggregate analysis. It supports local CSV exploration, public openFDA queries and exploratory ROR/PRR calculations without presenting signals as incidence or causality.
The portfolio is intentionally explicit about trade-offs. For healthcare software, a polished interface is useful only when the data path, operational state and clinical boundary can also be inspected.
Milestones are tied to repository history. Retrospectives preserve the date of the original milestone while clearly stating when the retrospective itself was published.
Reframed the site as an employer-facing clinical engineering portfolio, consolidated documentation and hardened public endpoints.
Rebuilt the project around clinician supervision, population modelling, synthetic demonstration data, safety controls and reproducible research assets.
Replaced N+1 IMAP fetches with batching and documented the transition from classroom model to operational mail architecture.
Added the self-hosted mail appliance design, TLS/DNS operations and a real IMAP/SMTP web interface.
Published the public aggregate workflow and separated it from restricted EudraVigilance access.
The original PsychDeep note remains unchanged; a new retrospective maps that first concept to the later research architecture.
A small object-oriented exercise established the message, inbox and user model that later evolved into Domain Mail.
Public CV // evidence-linked
Review the clinical–technical profile, demonstrated stack, selected projects and current product boundaries in a print-friendly page.
Technical notes connect visible features to architecture decisions, limitations and what changed between versions.
The research POC rebuild, clinician-supervised architecture and the gap between repository and live deployment.
Why the public deployment became a synthetic showcase and how live IMAP/SMTP remains isolated.
Documentation consolidation, security fixes and a clearer employer-facing narrative.
Contact // Madrid, European Union
For roles, collaborations or technical conversations about digital health, clinical pharmacology and responsible product development.