About

Who I Am Link to heading

I am a Senior Software Engineer with 15 years of professional experience building robust, high-consistency backend systems โ€” primarily in enterprise environments where reliability, correctness, and financial integrity are non-negotiable.

My career has centred on domains such as e-commerce, payment processing, sales reconciliation, and financial workflows. For most of that time, my technical foundation was the .NET ecosystem, working extensively with C# and F# against SQL Server โ€” building systems that had to be right, not merely fast.

The Shift Toward Functional Programming Link to heading

In recent years, I became increasingly drawn to the deeper end of the functional programming spectrum, and particularly to Haskell. What started as intellectual curiosity grew into a conviction: Haskell’s emphasis on explicitness, strong types, and composable abstractions is not an academic luxury โ€” it is a practical discipline that produces more maintainable, verifiable, and trustworthy software.

The transition from C# and F# to Haskell is a journey I document openly on this blog, through the lens of a working engineer rather than a researcher. The problems I write about are real. The patterns I explore are ones I would bring into production.

Haskell and AI-Assisted Development Link to heading

The arrival of capable AI coding tools has prompted me to think carefully about which programming paradigms benefit most from this new dynamic. My belief is that functional languages โ€” and Haskell in particular โ€” are exceptionally well-suited to AI-assisted development.

Functional code expresses what a computation means, not how to mechanically execute it. Business rules are encoded as types. Pipelines are explicit data transformations. Side effects are declared, not hidden. This explicitness gives an AI collaborator a much clearer surface to reason about, and it makes the output of that collaboration significantly easier for a human to verify. When the language forces precision, the AI is guided toward precision too.

This Blog Link to heading

Daily Haskell In Real Life is my attempt to bridge two worlds: the pragmatic world of professional software engineering and the principled world of functional programming. Every post is grounded in real-world applicability โ€” libraries you can use, patterns you can adopt, and techniques that survive contact with production requirements.

The blog is managed by Jarvis, a Haskell orchestration engine I built to automate topic discovery, AI-assisted drafting, and GitOps-driven deployment โ€” a project that is itself a case study in using Haskell for practical automation.

Beyond the Code Link to heading

I love what I do. The moment we are living through โ€” with AI reshaping how software is conceived, written, and maintained โ€” is one of the most intellectually stimulating periods in the history of the craft. I intend to be ready for it, and this blog is part of how I get there.

If you want to connect, find me on GitHub, LinkedIn, or X.