NL | EN

What you get

Pragmatic, not perfectionist. Code that ships on day one and is still readable to the next developer on day 365.

  • Swift and SwiftUI as the foundation, with UIKit, Objective-C and Combine where the job calls for them. No framework religion, just the right tool.
  • Native Android too, in Kotlin with Jetpack Compose. One pair of hands for both platforms, no translation layer between iOS and Android.
  • The backend as well, in Python. Usually FastAPI, sometimes Django or Flask. An app without a backend is rarely a complete app.
  • iOS, iPadOS, macOS, watchOS, tvOS and CarPlay. If it runs on an Apple device, I build it.
  • Tests from day one. Unit, snapshot, UI. Accessibility just as much, because bolting it on later costs three times as much and so never happens.
  • Short sprint or long engagement, on-site or remote, in your team or solo. Whichever fits.
  • Productive in an unfamiliar codebase within a day. Proven with merged pull requests in some of the largest iOS open source projects in the world.
  • Pushing back comes with the job. I don't just write code, I advise on architecture, UX and on what we should especially not build.

My own products, not just client work. Sweather, a weather app for athletes that calculates real-time scores across 47 sports (iOS and Android). changemonitor.io for website monitoring (iOS and Android). radiospotify.nl, a Spotify version of popular Dutch radio stations. All built end-to-end, from app to Python backend. And AutoQuit, a native macOS menu bar app, built and released single-handedly as open source. I know what it's like to own a product, not just ship one.

Open source as proof. Contributions to Signal, Lottie and Firefox. Not lurking, but code that gets merged and runs in production for millions. See the list.

Available now. Reply within a business day, not weeks of silence.

Discuss your project

Specialisations & projects

Specialisations. iOS and Android from one pair of hands, SwiftUI, CarPlay and watchOS.

My own products. Sweather, changemonitor.io and radiospotify.nl — built end-to-end, from app to Python backend. And AutoQuit, a native macOS menu bar app, written entirely by me in Swift and SwiftUI.

Open Source Contributions

Every developer calls themselves senior. I'd rather show my code. I contribute to some of the largest iOS open source projects in the world. Not lurking, but pull requests that get merged and run in production for millions of users. It keeps me sharp, and it's the hardest proof that I find my way around an unfamiliar codebase straight away.

Signal-iOS

★ 11k+ Signal Foundation

Privacy-first messenger, millions of users worldwide. I work on the iOS side, where security and reliability basically are the product.

lottie-ios

★ 26k+ Airbnb

The animation library the iOS industry has standardized on. Thousands of apps use it to render After Effects animations natively.

firefox-ios

★ 12k+ Mozilla

The official Firefox for iOS. A big Swift codebase, millions of users.

Website change detection and monitoring. My own changemonitor.io runs on top of it.

The rest is on GitHub.

Security & Bug Bounty

I contribute to Whoop's bug bounty program on HackerOne, for the iOS app. An app that works is one thing. An app that doesn't leak data is the same job. I'd rather find the holes myself, before someone else does.

Personal

I'm based in Zwolle, in the Netherlands, working across the country and remote. Outside work I run Ultras, do Adventure Racing and Cross Triathlons, and look for mountains to hike. Not as a CV footnote. It's the same discipline that carries into the workday: keep going when it gets messy, stay focused on what needs to ship, and clients never have to chase me down.