Available from December · remote in the EU · English, Polish or Dutch
I build Android apps, and I care what they do when the network or the flag service fails.
Senior Android and Kotlin Multiplatform engineer in Zielona Góra, Poland. Seven years in software, most recently on a secure messenger, banking apps and a parking app. I studied electronics in Groningen, so I like knowing what happens below the API.
What I’ve shipped, and where you can look
-
– now
Arrive / EasyPark Senior Software Engineer (Android)
- Built a business-feature availability module for EasyPark for Business. I did the Android side, and the iOS and Node BFF parts with AI assistance; every iOS change was reviewed by the iOS team. It keeps working when the feature-flag service is down.
- Built server-driven Expenses on Android.
- Worked in a 300+ module Gradle monorepo: corrected analytics and took part in incident rotation.
-
–
Santander Senior Android Engineer · Consumer Finance Global Services, then Santander Bank Polska (Erste)
- Accessibility support for five Scrum squads, more than 100 engineers: TalkBack, contrast and WCAG reviews, plus backlog quality.
- Caught and fixed 40+ UI regressions during the Erste rebrand.
- Moved XML screens to Jetpack Compose alongside feature work.
-
–
AppUnite → Wire Android Developer, then Senior Android Engineer
- From February 2022, part of the team that rewrote Wire’s security-focused Android messenger in Jetpack Compose, with shared Kotlin Multiplatform logic in the Kalium SDK (networking, persistence, gRPC, SQLDelight).
- Both repositories are open source: I opened 278 pull requests there and 211 were merged. My parts included the message composer, text formatting, self-deleting messages and delivery status. See them on GitHub.
- Earlier client work: Blocktrade, FitCrony, Alle Folders.
-
Bright Inventions Android Developer
- Ported an Android SDK for a Bluetooth Low Energy tracking tag from iOS, with its unit tests, from very little documentation. The tags relayed their location through nearby phones. Integrated it into Luna, an app for finding lost pets.
-
–
FancyFon (FAMOC) Software Developer
- Features and fixes in a large Java mobile device management platform, in a small team with dedicated QA.
-
–
Hanze University of Applied Sciences, Groningen B.Eng. Electrical & Electronic Engineering
- Electronics and Bluetooth Low Energy. I lived in the Netherlands while studying, which is where my Dutch comes from.
How I use AI, and how I check it
Most of my Android work predates these tools. At Arrive I use AI every day: to read documentation, to build features, and to write the iOS and Node parts of my work.
It fails in predictable ways. It sometimes gets the definition of done wrong, and where the context doesn’t have the answer, it fills the gap with something plausible. And a passing test, AI-written or not, doesn’t prove that it checks anything. So:
- Approved tools, clean prompts. Only AI tools the client has approved, and no secrets, credentials or customer data in prompts.
- Spec first. We collect the specs and documents and give the model all of it, so it has less to invent.
- I read every line before it goes up for review, and iOS changes go through iOS engineers.
- Tests get tested. I run mutation testing on AI-written tests: the tool plants small bugs, and a test that still passes is missing an assertion.
- Rules, not examples. Property-based tests check what must hold for any input, not just the three cases someone thought of.
Need an Android or KMP engineer?
Remote from Poland, employment or B2B. For Dutch and Belgian teams I work in Dutch or English and can visit the office up to twice a month.