Tiago Fortunato
Software Engineer
Building backend systems and AI-powered applications — from RAG pipelines and Vision AI classification to production SaaS with multi-tenant architecture. Founder of Odys.
About
Who I am
Software Engineer focused on backend systems and AI-powered applications. I build production software that integrates LLMs, RAG pipelines, and computer vision into real products — not just prototypes.
I built an AI Career Assistant using RAG with LangChain, ChromaDB, and Groq — a chatbot recruiters can use to learn about my background. I added Vision AI classification with Groq and LangSmith observability to the Inspection Management API. And I shipped Odys — a full SaaS product with multi-tenant architecture, Stripe billing, and WhatsApp automation, built entirely solo.
MSc Software Engineering (Berlin, 2026). Background in Mechanical Engineering. Trilingual — Portuguese, English, German (B2). Based in Berlin, open to work.
Skills
What I work with
Projects
What I've built
WhatsApp-first scheduling SaaS for Brazilian freelance professionals — therapists, personal trainers, salons. Clients book online, receive automatic WhatsApp reminders 24h before, and professionals manage everything from a dashboard. Live product at odys.com.br.
- WhatsApp-native reminders via self-hosted Evolution API v2 on Railway — triggered by Supabase pg_cron, not a third-party bot
- Multi-tenant architecture: each professional gets a public booking page at /p/[slug] with fully isolated data and configurable availability
- Stripe subscriptions + PIX; Supabase Auth; Drizzle ORM on PostgreSQL; resolved PgBouncer transaction mode compatibility
- Rate limiting with Upstash Redis; error monitoring with Sentry; transactional email via Resend
- Deployed on Vercel (app) + Railway (WhatsApp API Docker container); CI/CD via GitHub Actions
AI-powered career chatbot that lets recruiters and hiring managers ask questions about my background, projects, and skills — powered by a RAG pipeline over my professional knowledge base. Try it live.
- RAG pipeline with LangChain, ChromaDB, and fastembed — retrieves relevant context from a curated knowledge base before generating answers
- Streaming responses via Groq LLM (Llama 3.1) with conversation history and suggested follow-up questions
- Section-aware chunking via font-size analysis — keeps related content together for better retrieval
- Evaluation pipeline with RAGAs for measuring faithfulness, relevance, and answer quality
- FastAPI backend + vanilla JS frontend; containerized with Docker and deployed on Render
Production REST API for infrastructure inspections with autonomous AI classification. Upload a photo of road damage and the system classifies severity, damage type, and generates an explainable rationale — all in the background.
- Vision AI classification via Groq SDK — images are compressed client-side, sent to the API, and classified autonomously using background tasks
- Explainable AI (XAI): every classification includes a human-readable rationale field so decisions are transparent and auditable
- LangSmith integration for full LLM observability — trace every prompt, response, and latency in production
- Structured LLM output enforcement with LangChain for consistent severity/damage type responses
- JWT auth with admin role, per-user data isolation, status lifecycle, rate limiting
- 31 Pytest tests; CI/CD via GitHub Actions; Docker; frontend dashboard on Vercel with image upload and AI status badges
Two-stage hybrid pipeline combining YOLOv8-based object detection with a rule-based expert system to detect road surface damage and automatically prioritize maintenance actions. Trained and evaluated on the RDD2022 benchmark dataset.
- Conducted 4 controlled experiments (EXP1–EXP4) varying model capacity, input resolution, and training length — best config (YOLOv8s): mAP50 0.663, Precision 0.694, Recall 0.604
- Built a rule-based expert system with geometric filtering, continuous severity scoring, and quantile-based prioritization (LOW / MEDIUM / HIGH)
- Post-processing reduced noisy detections by 31.2% (8304 → 5711) while preserving structurally relevant defects
- Designed for interpretability: every prioritization decision traceable to explicit rules — no black boxes
End-to-end ML pipeline analyzing vehicle sensor data (temperature, vibration, oil pressure, RPM) to predict failures before they occur.
- Multi-stage pipeline: data generation → ETL → EDA → ML → dashboard
- Random Forest classifier with imbalanced data handling (99.9% accuracy)
- Live Streamlit dashboard for real-time vehicle condition monitoring
Recommendation engine using matrix multiplication and Python multithreading to simulate scalable user-product scoring — with performance benchmarking between sequential and parallel execution.
- Implemented S = U × P matrix scoring with score normalization
- Compared sequential vs. multithreaded performance with visual output
- Demonstrated threading tradeoffs: overhead vs. scalability at scale
Experience
What I've done
Education
Academic background
Thesis: Computer Vision Object Detection (YOLO-based pipeline).
Languages
Communication
Contact
Let's talk
Available for AI Application Engineer, Backend Developer, or Product Engineer roles in Berlin and remote. If you're building AI-powered products and need someone who ships — let's talk.