
Christian Ekrem
Christian Ekrem is a seasoned Staff Engineer with over 12 years of experience building production systems at scale. He currently works as a senior consultant at Ensō AS, and previously spent six years at Vipps MobilePay (Norway's leading mobile payment platform), where he became known as the team's "Chief Problem Solver."
During his time at Vipps, Christian changed roles multiple times without leaving the company—starting with backend development in Go and React, then switching to Android development in Kotlin (learning it from scratch), and eventually becoming the first engineer to work across both Android and backend simultaneously. This diversity of experience across platforms, languages, and problem domains gives him a unique perspective on what makes code maintainable, testable, and genuinely better.
Christian works daily in a production Elm codebase with over 125,000 lines of code at Lovdata, Norway's leading legal information provider. This real-world experience—not just toy projects—informs every comparison and recommendation in this book. He's seen Elm prevent entire classes of bugs at scale, experienced its refactoring confidence firsthand, and learned where it excels and where it doesn't.
His diverse background extends beyond tech: he's taught at a special-needs high school and worked as a film director and cinematographer. This varied experience taught him how to explain complex concepts clearly and meet people where they are—which is exactly what his book aims to do for React developers learning Elm.
Christian has presented talks on software architecture, testing strategies, and functional programming at Vipps and other companies. He's passionate about code quality, craftsmanship, and building systems that are easy to understand and change. His journey into functional programming started with exploring tail-call optimization in Go, which led him to Kotlin, and eventually to discovering Elm's uncompromising approach to immutability and pure functions. He writes about technology, functional programming, and software development at cekrem.github.io.
When he's not coding, Christian plays guitar and drums, enjoys running, and spends time with his wife and three kids. He's also involved in church planting and co-hosts the "Dønn Disippel" podcast in Norwegian.