Toby Hobson

Toby Hobson

Toby Hobson

Functional programmer & tech lead

I have over 20 years experience in systems design, development, team leadership and mentoring. My strength lies in bringing projects from concept to reality, overseeing the entire process.

I’ve worked across many sectors including finance, media, government and energy. In recent years my focus has been on early stage businesses and lighthouse projects. Read more about some of my recent projects.

I have led teams of 30+ people and managed onshore, offshore & nearshore projects.

What I Do

Below is a quick overview of my skills. Want to find out more about my experience? Check out my projects.



Working with other stakeholders to align the technical strategy with the goals of the business.


I've led development teams of 30+ people, both onsite and remote including outsourced projects.


As a hands on architect who is able to code himself, I am well placed to interview and recruit developers.


I've mentored junior developers both on a technical level and with some "words of wisdom" from an old hand.

Vendor & tech selection

Finding suitable technology & business partners is essential for any successful software project.


Although no longer fashionable in the agile age I still believe in the value of proper planning.


Closely related to planning. I've been responsible for the budget on a number of projects.

Due diligence

I've supported the technical due diligence process on several projects.

Backend programming languages


I was cynical about using JS for backend code, but I've grown to love express and Typescript.


All my JS code (Frontend or Backend) have been transpiled from Typescript. I would never code in raw JS!


I have used Python mostly in the context of Machine Learning & Artificial Intelligence (see below)


I'm very experienced in functional and reactive Scala (Akka). I've been writing Scala code for over 8 years.


I've been using Java since the earliest days from v1.3 through to v.18. I prefer Scala but Java is everywhere.


I still prefer Scala, but as a "better Java", kotlin is hard to beat. I would now choose it over Java.

Frontend programming languages



I've developed a few Svelte applications, most recently a fullstack Sveltekit based app.


I have used React quite extensively. Mostly alongside Redux. I've also used it from Scala.Js.


I have used Angular on a couple of projects, I'm no expert, but I know what it's good for.


Similar to Angular, I'm no expert, but I have used the library.

Databases & Big data



I'm no DBA but I have been using RDBMs for a long time. Including Oracle, MySql/Maria & Postgres
Apache Cassandra title

Apache Cassandra

I've built a few big systems based around Cassandra. It's probably my favourite NoSql database.
Apache Spark title

Apache Spark

I've used "standard" Spark along with Spark streaming.
Apache Kafka title

Apache Kafka

Apache Kafka. I've now built a few big systems on top of Kafka, including an event sourced system.

Machine learning



I'm not a data scientist, but I have an understanding of tensorflow and DNNs in general.
Pandas title


I've used Pandas a few times when working with Python data science tools.

Scikit Learn

I've used the library mostly for classic regression, clustering and classification
Spark ML title

Spark ML

I have some limited experience with Spark ML

Orchestration and management


I absolutely love SST for serverless architectues.


I have 4+ years continuous k8s experience.


I've used AWS cloud formation alongside other AWS services


Used mostly in a development context (k8s in production)

Latest Blog Posts

Why use Effect? 5 compelling reasons

The Effect documentation is pretty comprehensive, certainly by FP standards! However it largely focusses on how to use the library, not why you would want to do so. In this po...

Read more →

Learning Functional Programming with Scala Cats

Like most blogs, mine is not too well structured so I thought it would be useful to tie the various posts together If you want to learn FP and Cats I suggest reading the posts...

Read more →

Writer Monad

Logging is something we all need to do. There are a many logging frameworks available with various layers of abstraction (logback, slf4j, scalalogging etc). These libraries ar...

Read more →