All posts
#Internship#Full Stack#PropTech#AI

Building UrbanPropIA: My First Internship

From March to June 2026 I did my first internship: three and a half months (375 hours) as a full-stack developer at IMPACT Ingeniería y Arquitectura in Mallorca, working on UrbanPropIA — a PropTech SaaS platform for real-estate and urban-planning due diligence in the Balearic Islands.

Building projects for a class is one thing. Pushing code every week to a product that real, paying users depend on is another — and that difference is basically the whole story of these months.

The stack

I worked across the full stack on a modern setup:

  • Next.js + React + TypeScript on both the front and back end.
  • Supabase (PostgreSQL, row-level security, realtime) as the backend.
  • Tailwind CSS and shadcn/ui for the interface.
  • Stripe for payments and subscriptions.
  • Google Gemini / Vertex AI for anything AI — document analysis, structured extraction, and retrieval-augmented generation (RAG).
  • Continuous deployment on Vercel, with Git/GitHub and automated tests.

Some of the things I got to build

The scope was much wider than I expected walking in. A few highlights:

  • AI that reads documents — structured extraction from property records and legal paperwork, plus a copilot that answers urban-planning questions by citing the exact regulations it retrieved (RAG over dense municipal codes).
  • A multi-agent due-diligence report — several specialised AI agents (urban planning, regulations, on-site visit) coordinated by a “composer” into a professional, bilingual, signature-ready document.
  • Geospatial tooling — pulling from public mapping services and cadastral data to generate certificates and urban-planning sheets automatically.
  • A tax module that computes the real cost of buying a home in the Balearics, backed by around a hundred automated tests.
  • Communications & e-signature — a unified timeline of emails, chat and tasks, calendar sync, and legally valid electronic signatures.
  • I even started training a custom computer-vision model to spot construction changes — new builds, pools, demolitions — across decades of historical aerial imagery.

Plus the unglamorous-but-essential foundations: authentication, role-based document management, GDPR compliance (moving all AI processing onto EU infrastructure), rate limiting, and a lot of production hardening.

Building with AI, seriously

Almost all of my day-to-day ran on Claude Code (on the Max 20× plan). The interesting part wasn’t just using it to write code — it was learning to orchestrate it: setting up MCP servers, building reusable skills, running several agents in parallel, and planning work out properly before touching a line of code. Getting good at that — deciding what to delegate, reviewing what comes back, and keeping the architecture coherent — turned out to be one of the most valuable things I picked up.

More than one product

Halfway through, I started juggling two more projects alongside UrbanPropIA: an internal management application and an application for a hotel chain. Constantly switching context between products with very different problems was a challenge on its own, and it pushed my role from “developer” toward something closer to a solutions architect — making real technical decisions, weighing providers, designing integrations, and owning what ships.

What I took away

The biggest lesson is that a real product is never just code. It’s engineering, law, tax and user experience all at once — and the hard part is usually translating messy real-world rules into software people can trust. I also learned what it feels like to own a release: the responsibility, the pressure, and the very specific satisfaction of watching someone actually use the thing you built.

It confirmed the kind of engineer I want to be — and honestly, I’d love to keep building.