Skip to content
Nicola Buompane

Frontend engineer becoming an iOS developer

5 years shipping national-scale web platforms, now building native apps in SwiftUI.

What I’m building

Rallymate

In development · TestFlight soon

An iPhone app for friends who play padel together. They log doubles matches set by set, an opponent confirms each result, and the group gets a ranking nobody can argue with. I own all of it: product, design, iOS and backend.

Platform
iPhone, iOS 26
App
SwiftUI, MVVM, async/await
Backend
Supabase: Postgres, RLS, Edge Functions
Tests
Swift Testing, 172 pgTAP assertions
Read the case study

Decisions

  1. The app never writes a match directlyEvery change goes through an RPC that applies the rules, and row-level security keeps each group private. The client can’t break what it can’t write.
  2. Rankings are SQL views, never storedThey’re computed from the confirmed matches on every read, so they can’t drift from the data.
  3. Motion has its own specThree named animations shared across the app, Reduce Motion respected everywhere, haptics only on the user’s own actions.

Experience

Five years of web platforms in production, from automotive to national exams. It’s the ground I bring to iOS.

  1. – now

    Cineca

    Frontend Developer · Bologna · hybrid

    I lead frontend development of national platforms for Italian higher education. Joined through Modis, hired directly by Cineca in April 2023.

    • National Medical Exams Platform

      I designed and built the full frontend of the digital marking system for the national medical school admission exams, with real-time validation across concurrent sessions. It went live on the national exams with no downtime.

    • Student Attendance Dashboard

      I turned a manual university process into responsive screens for admin staff on desktop and tablet.

    • Performance & Quality

      I cut initial load time with code splitting and lazy loading, and set the testing and code review standards for the frontend team.

    Stack
    Angular 14+ · Vue.js · TypeScript · RxJS · SCSS · GitLab CI/CD
  2. –

    Spindox

    Full Stack Developer · Remote · via Modis

    I built software for the automotive sector, end to end.

    • Automotive frontends

      I built React frontends on top of NestJS services.

    • From requirements to the cloud

      I owned the full cycle, from requirements to cloud deployment, with automated tests in Jest.

    • Distributed teams

      I worked with international teams across several time zones.

    Stack
    React · NestJS · Node.js · MongoDB · Jest · Docker

Skills

Nativegrowing

Language
Swift
UI
SwiftUI · Liquid Glass
Architecture
MVVM · async/await
Testing
Swift Testing · XCTest
Backend
Supabase · pgTAP

Web5 years

Language
TypeScript · JavaScript
UI
Angular · React · Vue.js
Architecture
RxJS · Signals · NgRx
Testing
Jest · Jasmine
Backend
Node.js · NestJS

Projects

Software that people use, built on my own from product to database.

  • La Fossa Events

    The platform behind a local sports festival I co-organize: a management app for staff and cashiers, and the public site where players sign up and book the pitch. I build software I use myself.

    Status
    In production · 2 editions run on it
    Role
    Sole developer, co-organizer
    Stack
    Next.js, React, Supabase
    Quality
    26 ADRs · 640+ automated tests
    Read the case study
  • Comande

    Order taking for small bars, three apps in a row, each built on the one before: a stock log, then phone orders with a live bar screen, then the same product for a second venue.

    Status
    Deployed · venue rollout pending
    Role
    Sole developer
    Stack
    Next.js, Supabase Realtime, PWA
    Quality
    354 pgTAP assertions in CI
    Read the case study

How I work

The same loop on every project, this site included.

  1. A spec before codeI write down who it’s for, what it does and what it won’t do. The code follows the spec, not the other way round.
  2. Decisions as ADRsEvery hard-to-reverse choice gets a short record: context, decision, trade-off. La Fossa Events has 26 of them.
  3. One glossary per domainWords like Edition or Order mean one thing, in the code and in the conversation.
  4. Agents write, I reviewCoding agents work from small tickets with a clear definition of done. I review every change, and every decision stays mine.

Tools: wayfinder maps to break a project into decisions, Impeccable to hold the design to a written contract.

Let’s talk

I’m looking for a full-time role as an iOS developer. Email reaches me fastest.

Email me