Rail Europe · 2024
A SvelteKit rebuild, stopped at 80% — and the team I helped hold together
First in-house engineer on a from-scratch rebuild of the B2C booking site, alongside a team of consultants. Developer, Scrum Master and facilitator — and, for months, a bit of the missing roles too.
Software Engineer & Scrum Master

- people on the team
- 21
- in-house engineer
- 1st
Context
In February 2024, Rail Europe hired me to rebuild its customer-facing booking site from scratch in SvelteKit. I was the first engineer recruited in-house; the rest of the team were consultants from Mainmatter. My role was developer and Scrum Master, keeping a 21-person team in rhythm.
For months the team had no engineering manager, no principal engineer, and then no product owner. So I stepped into parts of those roles when needed — helping the team decide, prioritise and keep moving.
What I did
- Facilitated the team as Scrum Master: rituals, delivery rhythm, and keeping a mixed in-house and consultant team aligned.
- Built product features: the My Trips area and the ticket-exchange flow — searching for a trip to exchange, selecting new offers, and the exchange quote screen.
- Migrated the checkout and payment forms to Svelte 5 and Superforms, with shared validation schemas.
- Contributed to the UI kit in Storybook: stories for design tokens (colours, sizes, typography) and for form components with their states.
- Pushed testing practices: component stories, Playwright smoke tests and unit tests.
Outcome
At around 80%, the company decided to stop the rebuild and revamp the existing platform instead. I moved to that revamp, and took the testing and component habits with me.
What I took from it
A rewrite is a big bet that pays nothing until it ships. Since then I favour change that's sequenced so a team can adopt it step by step, on the system that's already running.



