Home CV
CV
Cancel

Daniel Tattan-Birch

Software engineer. Interested in functional programming, open-source software and tech for good. A single-page PDF of this CV is available here.

Systems interests

  • Distributed system design and cloud-based automation.
  • Data modelling, databases and content management.
  • Solutions architecture.

Programming interests

  • Functional programming, Scala and Typelevel.
  • Functional and OOP software design.
  • Unit testing techniques.

Experience

Sep. 2023 - Present — EPFL: Blue Brain Project, Geneva

Software Engineer

Currently working on Nexus Delta, an open-source service for knowledge graph management applied to the simulation neuroscience domain.

Tech Stack. Scala | Typelevel | PostgreSQL | Elasticsearch | Blazegraph | Docker | Kubernetes | AWS

Dec. 2018 - Aug. 2023 — ITV, London

Senior Scala Engineer

Developed distributed systems supporting various ITV products such as ITV News, ITVX and sites for various programmes.

Tech Stack. Scala | Typelevel | PureScript | GraphQL | REST | Kafka | PostgreSQL | Elasticsearch | Redis | DynamoDB | Docker | Kubernetes | Prometheus | AWS

Libraries. Cats | Cats Effect | http4s | grackle | natchez | circe | doobie | skunk | elastic4s | ciris | decline | scalacheck | munit | weaver

Process. Agile delivery | Kanban | Trello | Jira | CI/CD | Jenkins | Github Actions

Delivered Projects:

  • Developed data models and backend APIs to deliver news on ITVX.
  • Built and maintained integrations with third parties such as Stripe, Google Analytics, Brightcove, Contentful, Monterosa, Press Association, Facebook News, Apple News and Bing.
  • In-housed the ITV News website and mobile app from a third party.
    • Migrated 500k archived articles into Contentful CMS (ETL-style).
    • Developed data models for managing articles and site curation.
    • Built backend APIs from scratch to support frontend apps.
  • In-housed ITV programme sites.
    • Migrated thousands of articles across ~50 ITV shows.
    • Built an integration between our website CMS and our app CMS.

Dec. 2017 - Dec. 2018 — Football Radar, London

Software Engineer

Football Radar perform statistical analysis on data collected from football matches and generate real-time predictions based on the models. I was part of the modelling team, working closely with data scientists to understand and implement algorithms to improve our predictive models.

Tech Stack. Scala | FP | OOP | Finagle | Akka | Thrift | Kafka | Redis | MySQL | Docker | Mesos | AWS

Process. Kanban | Trello | CI/CD | Phabricator | Jenkins

Sep. 2015 - Dec. 2017 — Fidessa, London

Full-Stack Developer

Developed enterprise investment management systems for financial institutions. Specifically we built native .NET frontend applications and C++ microservices.

Tech Stack. C# | .NET | C++ | OOP | TDD | Mocking | SQL Server | Oracle DB | Jenkins | Self-hosting

Process. Waterfall | Scrum1 | Jira | Subversion | Jenkins | CruiseControl

Education

2017 - 2022 — University of Oxford

M.Sc. in Software Engineering (part-time) — Distinction

A flexible part-time course designed for software professionals. Initially joined with the goal of filling my most obvious knowledge gaps. This was broadly successful and the course played a big part in guiding my technical interests.

Dissertation: Comprehending Pure Functional Effect Systems

Keywords: Haskell, Scala, Functional Programming, Effects, Design Patterns, Monads, Extensible Effects.

Mark: 80.

Course Highlights:

  • Functional programming in Haskell and Erlang.
  • Embedded systems in C.
  • Cloud computing, big data and database design.
  • Formal verification of concurrent, distributed systems.
  • Deep Learning.
  • Software security principles.

2012 - 2015 — University of Warwick

B.Sc. in Mathematics — First-class Honours


  1. Yes, somehow both Waterfall and Scrum at the same time. A classic attempt at an “Agile Transformation” and not a particularly successful one; at least during my tenure. 

This post is licensed under CC BY 4.0 by the author.