I’m a full stack software designer and developer specialized in but not limited to web applications. I drive design and implementation with AI under the discipline of Extreme Programming and ATDD, specifically Outside-in TDD (London School), which I like to call AITDD, where every change starts from a failing acceptance test so that the quality bar stays executable rather than aspirational.
Focused on event-driven/service-oriented architectures and serverless/IaC approaches, strongly experienced in object oriented programming, very knowledgeable in functional/reactive paradigms and long-time enthusiast of machine learning from much before the current AI adoption wave. I steer architecture and codebases letting AI write the code while I own quality and compliance.
Working outside-in through planning, derived specs and step by step testing generation/satisfaction with humans in the loop is what makes AI assisted development safe to scale as by my findings and what I advocate for. Tests at different levels (acceptance, functional, integration and unit) pin the intent while collaborators at the boundaries pin the design.
I've studied electronics, written my first code on a VIC 20 and, during 1999, after a lot of experimentation with neural networks, finally recognized software, and artificial intelligence in the specific, as my passion and understood that it would have been my future.
After that, during 25+ years, I've worked in various contexts and roles contributing to the design and development of many systems as well as to the support and mentorship of many engineers through pair programming and individual contribution. Today, when possible, I continue to work in private on my ideas around AGI.
- Solution design methodologies => AIAD, DDD, Event Storming, Evolutionary Architectures, RFC.
- Solution development techniques => AIAD, ATDD (and BDD/TDD), Continuous Delivery, Feature Flags, Pair Programming.
- Solution documentation approaches => AIAD, BPMN, C4, ERD, UML.
- AI tooling => Commercial and OpenSource coding assistants/agents (Claude Code, Codex, OpenCode, Pi and others), IDE plugins, Local LLM runtimes (Ollama and others), Harnesses, Skills, MCP Services, Memories and Proxies.
- Main programming language => TypeScript (or JavaScript directly).
- Main tech stack => Node.js (or Express or NestJS) and HTML/CSS/JS (or React/Next.js or React Native or Electron).
- Main cloud provider => AWS (mostly around its serverless services).
A team player and a clear, organized and thoughtful communicator. Business savvy and pragmatic.