DevOps Data Engineer
Mark Visser
If you ask me what I like to do in tech, my answer is immediately ‘DevOps’.
Read moreShow less
In the past I have done a lot of development in the web and data worlds, but I have always taken on the operations side as well. What I love about the (containerized) DevOps approach is that you can look for the technology that best fits the solution and then actually implement it, even if that takes you a bit off the beaten path of the typical IT professional. I like to work that way: I enjoy learning new technologies and I am not afraid of them. Finding a sustainable, maintainable solution to a (technical) problem is one of the most rewarding challenges I know.
Current projects
Cantorite
Three games, one universe.
Currently working on
Cantorite: Second Spring
A cozy valley builder. The Harrow reaped this world to ash; you bring the green back, one hex at a time.
Cantorite: Second Spring is set on Fallow, a world in the Cantorite universe that has already been harvested. Plant a heartseed on bare ash and watch the green creep outward. Befriend the odd little creatures who still live there, build a village they love and watch them work, snack, nap and chat. Three seasons colour the year, and the long goal is to wake the Old Tree at the heart of the valley.
No combat, nobody ever dies, and a session takes ten to twenty minutes. It comes out free on iPhone, iPad, Android, Mac and the web, and keeps growing after launch. Every image below is a screenshot of the game as it is today.
Under the hood · Second Spring
Second Spring is a native game for phone, tablet and desktop, with a web version. It runs on the same platform as the other Cantorite games, and all player data stays in the EU.
- Creatures Every species is modelled and animated from scratch in code, each with its own job, favourite food and character.
- World A hex world that blends from ash to green, with water, grass and crystal in a soft felt look, plus day and night and three seasons.
- Saves Three valleys side by side. With an optional account every valley also lives in the cloud, so you can carry on on another device.
- Accounts Sign in with a one-time e-mail code, on the shared Cantorite platform in the EU.
- Social Friends, visits to each other's valleys and postcards. No chat, no pressure.
- Languages Ten languages, including Dutch, German, Japanese and Korean, checked on a dedicated review site.
- Fairly free Every level, creature and feature is free. The store sells looks only, never progress.







Also in development
Cantorite: Harrowfall
Three factions strip-mine a crystal that is secretly someone else’s harvest — and the louder you mine, the sooner the reapers come.
Cantorite: Harrowfall is a real-time strategy game set on the frontier worlds where cantorite is mined. Build your base, run your economy, produce an army and fight your rivals for the richest crystal fields. But the crystal isn’t yours. Every drill and every battle sends out a sound that something old can hear. Push your mining too hard and the Harrow arrive: silent, gold and unstoppable, here to collect their harvest.
You can play it free in the browser on desktop, tablet or phone, and install it for offline play. The whole build is documented in the devlog, from the first frame to today.
Built with TypeScript Three.js Vite
Under the hood · Harrowfall
Harrowfall runs entirely in your browser on desktop, tablet and phone, and installs as an app for offline play. You can play a friend by room code or in ranked 1v1, sign in with just your e-mail, and send feedback straight from the game. Every account, save and match record is stored in the EU.
- Engine TypeScript and three.js, with a deterministic simulation that runs identically in every browser, so matches and replays stay in sync.
- Multiplayer Lockstep online play through Cloudflare Workers and Durable Objects, with one room per match, desync detection, and a ranked 1v1 queue with ratings and seasons.
- Accounts E-mail one-time-code sign-in, with a synced profile on Cloudflare D1. No addresses, codes or IPs are logged.
- Triage Players send in-game feedback with screenshots and an optional save, anonymously if they want. It lands in a private triage inbox, where reports become GitHub issues.
- EU only The databases (D1), storage (R2) and match servers (Durable Objects) are all pinned to the EU jurisdiction.
- i18n A typed translation system with English as the source. Dutch is in preview, and there’s a proofreading site for translators.
- Voice lines A voice per speaker with faction character, recorded with an open-source speech model and checked by a QA pass.
- Offline An installable PWA with the app cached for offline play. There’s also an iOS build.
- Delivery GitHub Actions takes every change through develop, then acceptance, then production, with each server deployed on its own.




Also in development
Cantorite: Hush Money
A browser action RPG in the Cantorite universe. Every crystal you cut is a note the Harrow can hear.
Cantorite: Hush Money is a fast action RPG set in the same universe as Harrowfall. You’re a freelancer in the Vesper Reach, taking contracts from the Directorate, the Umbra and the Hush. You get dropped into mines, ruins and drill sites, and you have to fight your way to the payout and get back out. Every loud action raises your Resonance. That means better loot, but it also wakes the Harrow: first scouts, then cracks in the world, then elites, and finally the hunter.
Each run is a twelve-minute negotiation with your own greed. Your build is a loadout, not a class: you mix armour, weapons and skills from five disciplines. It runs in the browser and on your phone, in short sessions. And one rule above all: when the screen turns gold, run.
Under the hood · Hush Money
Hush Money is built to run at 60 fps on a mid-range phone browser as well as on desktop. Co-op, e-mail accounts and weekly leaderboards are in development, and all player data stays in the EU.
- Engine TypeScript and three.js, using WebGPU with a WebGL2 fallback. Moving the game rules into a fixed-tick Web Worker is planned.
- Co-op A relay on Cloudflare Durable Objects in the EU, with one per lobby and the host’s game as the authority. Raids for 1–4 players are planned.
- Accounts E-mail one-time-code sign-in, with a synced profile on EU D1.
- Leaderboards Weekly contracts and seasons, with signed run results so scores can’t be faked.
- Assets Models and textures stream from EU-only R2 storage. All sound is synthesised in code, with no sample packs.
- i18n from day one No hard-coded player text, and a CI check enforces it. English and Dutch.
- Tools An in-house room builder for level rooms, and AI-assisted concept art made through Cloudflare Workers AI. Nothing is generated at runtime.
- Delivery GitHub Actions type-checks, builds and deploys every change to a preview site, with production on a separate branch.






