Edward Leonard

EdwardLeonard

Solution Engineer and Java developer. I build software that holds up in production, and products people actually use.

Netherlands & Cape TownEnterprise Java, Mobile, WebScroll

Selected work

Three things I built, end to end.

Clearpath showing a safety-aware route to Cape Town International Airport

01 · Mobile app

Clearpath

A safety-first navigation app, live in the App Store.

The problem
Navigation apps send you the fastest way, even through areas locals would avoid. In Cape Town that matters.
What I built
A full iOS app, with Android in progress, that scores routes against crime data per police precinct and steers around danger zones, with turn-by-turn navigation and subscriptions. One TypeScript core is shared between mobile and web, supported by edge functions, payments, transactional email and analytics. A network of Cape Town driving and safety guides brings people into the app.
The result
Built solo from first sketch to App Store approval. Live with paying subscribers, with six content sites ranking in search.

Stack React Native · Expo · TypeScript · Supabase · Mapbox · RevenueCat · Resend · Sentry

clearpathroutes.com
UBL BIS Billing 3.0 / EN16931
<cac:InvoiceLine>
  <cbc:ID>1048</cbc:ID>
  <cbc:InvoicedQuantity unitCode="H87">12</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">948.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cbc:Name>Service contract</cbc:Name>
  </cac:Item>
  <cac:Price>
    <cbc:PriceAmount currencyID="EUR">79.00</cbc:PriceAmount>
  </cac:Price>
</cac:InvoiceLine>

02 · Enterprise

Peppol e-invoicing at Prodin

ERP invoices, sent across Europe's e-invoicing network.

The problem
Customers had to send invoices over Peppol, a strict European standard where one wrong field means a rejected invoice.
What I built
An invoice engine that maps ERP data to UBL BIS Billing 3.0 and EN16931 XML, with separate builders per scenario including trade, service, contract and instalment, plus validation that catches errors before they leave the system.
The result
Customers send compliant e-invoices straight from their ERP.

Stack Java · JAXB · UBL / XML · Peppol · SQL · Maven · BBj

King of the Court live tournament screen
King of the Court live leaderboard

03 · Web app

King of the Court

A live padel tournament on every player's phone.

The problem
Running a King of the Court tournament with eight teams and four courts on paper means chaos about who plays where.
What I built
A mobile-first web app with automatic court rotation, a round timer and a live leaderboard, synced in real time for every player.
The result
Built in a few evenings and used at real tournaments.

Stack Next.js · TypeScript · Supabase · Vercel

Intus Workforce Solutions

Java rulesets that turn collective labour agreements into payroll and planning logic, plus HR system integrations.

Solution Engineer

Prodin

ERP development and Peppol e-invoicing to UBL BIS Billing 3.0.

Software Developer

Syneris Talent

Websites, automation and email infrastructure for small businesses, plus IT recruitment.

Founder

Java · Spring Boot · TypeScript · React Native · Next.js · PostgreSQL · Supabase · Maven · Gradle · n8n

Portrait of Edward Leonard

Dutch, with South African roots. Raised bilingual and splitting my time between the Netherlands and Cape Town. I learn by shipping, and every product teaches me what it needs.

I care about the unglamorous last twenty percent, the edge cases and details that make something actually go live. Off screen, you will find me playing padel, in the gym or on the Garden Route.

Let's build something that lasts.