Ian Forsey

Senior Scala Developer

I'm Ian, a passionate software developer with 17 years of experience, primarily in Scala, although I enjoy working across a broad range of languages and technologies. I've contributed to open-source projects, spoken at industry conferences, and led training workshops at previous roles. I'm currently seeking a new challenge with a team that shares my enthusiasm for building great software.

Work

SiriusXM - Senior Scala Developer (Contract)
  • Senior member of a team that owned several high traffic services

  • Built services from the ground up as part of a company-wide replatform

  • Authored architectural design proposals and worked with other teams to get them approved and successfully implemented

  • Designed and deployed production AWS infrastructure

  • Scala, cats, AWS, Git, Docker, gatling, typescript, cdk, terraform

  • Note: This period includes a four month sabbatical to spend time with family

Disney Streaming Services - Senior Scala Developer (Contract)
  • Designed and implemented performant, high throughput, APIs for Disney+

  • Functional programming style using cats with tagless final encoding

  • Designed and deployed production AWS infrastructure

  • Scala, cats, AWS, DynamoDB, Git, Docker, gatling, terrform

Sky UK Limited - Senior Scala Developer (Contract)
  • Identified and implemented various performance and fault tolerance improvements to a high throughput recomendations API

  • Played an active role in shaping design decisions

  • Created new production AWS infrastructure and took new services to prodution

  • Scala, Play, Kubenetes, Docker, Git, gatling

Disney Streaming Services - Senior Scala Developer (Contract)
  • Designing and implementing performant, high throughput, RESTful APIs for Disney+

  • Functional programming style using cats with tagless final encoding

  • Designed and deployed production AWS infrastructure

  • Scala, cats, AWS, DynamoDB, Git, Docker, gatling

Barclaycard - Senior Software Engineer (Contract)

Senior Java Developer building new features for Barclaycard Payment Solutions

  • Integrated Pay By Bank App into Barclaycard's payment gateway

  • Built support for Oracle Simphony point-of-sale into Barclaycard's payment gateway

  • Became a certfied SAFe practioner

  • Provided a beginners Git workshop to aid in a SVN to Git migrarion

  • Java, Oracle 12c, Git

  • Note: This period includes a four month sabbatical to spend time with family

HMRC - Senior Scala Developer (Contract)
  • Added new user flows for Multi-Factor-Authentication

  • Migrated Agent registration to HMRC's current platform

  • Upgraded from Play 2.3 to 2.5 across ~10 microservices

  • Scala, Play, MongoDB, Gatling, Git

Net-A-Porter - Junior, Senior and Principal Developer (Permanent)

Progressed over an eight year period from Junior Developer, Senior Developer and finally to one of four Principal Developers in a 300 strong IT team

  • Build software to serve thousands of req/sec on sale days

  • Introduced Scala and instigated the company move to microservices

  • Committer to the popular akka-http library

  • Ran Scala workshops for a total of 80+ employees

  • Active member of the Net-A-Porter techblog

  • Scala, Akka, Spray, Gatling, Git, AWS

Junior Java Developer (Permanent)

Software analysis of black box recorder data for trains and ships

Volunteer

London Scala Users' Group - Speaker

Presented lessons learned whilst building the Net-A-Poter RESTful Product API in Scala and Spray

Scala eXchange Conference - Speaker

Presented our use of the Actor Per Request model for the Wish List API at Net-A-Porter

Edit Amplify: Youth Tech - Group Leader

A day of running a workshop for groups of 13-14 year old students, with the aim of getting them excited about working in technology!

Google IO - Demonstrator

Demoed the Net-A-Porter GoogleTV App in a booth decked out to look like a living room

Education

edX

Programming Reactive Systems (100%)

Scaled Agile

Certified SAFe 4 Practitioner (84%)

Coursera

Principles of Reactive Programming (100%, Distinction)

Coursera

Functional Programming Principles in Scala (100%, Distinction)

Typesafe

Scaling up with Akka and Scala

Solent University

Software Engineering (First Class Honours)

Publications

Opensource project - scala-uri (307 stars, 36 forks)

scala-uri was a small Scala library for working with URIs. It was used by hundreds open source projects on github, including The Guardian on their homepage!