Matt McFarlane

Senior Software Engineer

[email protected] · mattmcfarlane.dev · GitHub · LinkedIn · Edinburgh, Scotland

Summary

I'm a senior software engineer at FanDuel, where I've spent almost 4 years working in the Core Marketing Platforms vertical, progressing from Junior to Senior in under 3 years. Day to day I own a portfolio of 10 services handling up to 50k RPS, lead system design, mentor engineers towards senior, and work closely with stakeholders and product. I also have an engineering background (BEng in Aircraft Engineering and an MSc with Distinction in Mechanical Engineering) which shapes how I approach technical problems.

Experience

Senior Software Engineer

Mar 2025 — Present

FanDuel · Full-time · Remote

  • Senior engineer within the Core Marketing Platforms vertical, owning a portfolio of 10 services handling up to 50,000 requests per second.
  • SME for the domain: leading system design, defining technical direction, and managing architectural trade-offs across the team of 10.
  • Own end-to-end delivery of engineering initiatives, from requirements and design through to production, including risk identification and mitigation.
  • Lead technical integration with third-party providers, owning the design, stakeholder alignment, and delivery across teams.
  • Work closely with stakeholders and product across vertical and cross-functional teams to shape and prioritise engineering work.
  • Responsible for platform reliability and scalability across a distributed Java microservice architecture on AWS, using Kafka, Flink, and event-driven patterns.
  • Set technical standards within the team, guide architectural decisions, and support good engineering practices.
  • Mentor junior and mid-level engineers through 1:1s, code reviews, and pairing, with a focus on helping them progress towards senior.
  • On-call for the Core Marketing Platforms domain, owning incident response and resolution.

Software Engineer

May 2022 — Mar 2025

FanDuel · Full-time · Remote

  • Joined as a Junior Software Engineer and promoted to Software Engineer within 6 months based on rapid progression.
  • Contributed to high-traffic Java microservices within the Core Marketing Platforms vertical on AWS.
  • Grew into increasing ownership of services, system design involvement, and cross-team collaboration — progressing to Senior Software Engineer in under 3 years.

Prior Experience

Jun 2015 — May 2022

Various · Scotland

Roles in customer service, examination invigilation, and self-employed courier work before transitioning into software engineering.

Notable Work

Internal Polling Framework Library

FanDuel

Designed, built, and maintains an internal Java library adopted across multiple engineering teams.

  • Provides a configurable, task-based execution framework backed by RDS task queues — services store tasks, the library polls and handles execution.
  • Exposes configuration for orphan task detection, orphan polling intervals, and continuous heartbeating for long-running tasks.
  • Built for high resilience in multi-pod environments, handling concurrent execution safely across horizontally scaled services.
  • Reduces boilerplate across teams and gives them a consistent, well-tested pattern for async task processing.

Service Standards & Maturity Framework

FanDuel

Developed vertical-wide standards and tooling to raise and maintain the quality of services going to production.

  • Created a service requirements checklist for new services entering production, covering observability, monitoring, documentation, performance, and security.
  • Developed a service maturity matrix letting teams grade their services across key dimensions, with defined tiers (Basic, Standard, Optimised, Innovative) and clear guidance at each level.
  • Gives teams a structured way to identify weak spots and prioritise engineering investment rather than letting standards drift.
  • Rolled out across all teams in the vertical, working directly with staff engineers to get buy-in and make sure it fit how each team actually works.

Streaming Platform Adoption & Migration

FanDuel

First team to onboard to a new internal data streaming platform, establishing the patterns and tooling used by subsequent teams.

  • Led the migration of use cases from a legacy service to the new streaming platform, designing reusable transformations and golden path patterns to accelerate adoption across teams.
  • Built shared libraries enabling other teams to connect to the platform quickly, reducing onboarding friction and ensuring consistency across integrations.
  • Onboarded and guided a contracting team brought in to assist with migrations — providing technical direction, conducting code reviews, and maintaining quality standards throughout.
  • Acted as the internal SME for the streaming platform within the vertical, sitting between the platform team and consuming teams.

Third-Party Vendor Assessment

FanDuel

Led technical due diligence and POC integration work to assess the suitability of third-party vendors.

  • Designed and built POC systems to evaluate vendor integrations, assessing technical fit against FanDuel's architecture and requirements.
  • Conducted performance testing using Locust to validate vendor capacity against required RPS thresholds.
  • Documented findings and presented evidence-based recommendations to stakeholders on vendor suitability, covering performance, reliability, and integration risk.

Legacy Service Migration & Decomposition

FanDuel

Led the full rewrite and decomposition of a legacy EC2-hosted service into two modern microservices.

  • Migrated a core service from legacy EC2 infrastructure — built on Google Guice and poorly-understood internal frameworks — to two well-defined Spring Boot microservices deployed via Helm to EKS.
  • Decomposed the service deliberately: extracting a reusable piece of functionality into a shared microservice consumed by multiple teams, and isolating the core domain logic into a separate service with clear ownership.
  • Designed and executed full RDS schema migrations and data replication strategies, with no data loss or duplication during cutover.
  • Improved maintainability, observability, and deployment consistency by removing legacy dependencies and bringing the services in line with the team's current platform standards.

Education

Professional Software Development

Nov 2021 — Mar 2022

CodeClan · SQA Level 8

16-week intensive, SQA-accredited bootcamp covering full-stack development with a focus on OOP, TDD, and agile practices.

Software Development

Dec 2020 — Apr 2021

Glasgow Clyde College · SCQF Level 6 · Grade: Pass

Foundation course in software development, undertaken alongside employment as part of a planned career transition into software engineering.

MSc Mechanical Engineering

Sep 2019 — Sep 2021

University of the West of Scotland · Grade: Distinction

Thesis: Low velocity impact analysis of quasi-isotropic composite materials.
Key modules: Structural Integrity, Advanced Engineering Materials, Advanced Heat Transfer, Advanced Fluid Mechanics & CFD, Applied Finite Element Analysis, Renewable Energy and Energy Storage Systems.

BEng (Hons) Aircraft Engineering

Sep 2013 — Jul 2017

University of the West of Scotland · IMechE Accredited

Thesis: An investigation into the impact surface roughness has on the aerodynamic performance of a NACA 0012 aerofoil section.
Key modules: Aircraft Systems Engineering, Advanced Aerodynamics, Analysis and Simulation, Aircraft Design, Composite Structures, Statics, Dynamics, Thermodynamics.

Skills

Languages & Frameworks

Java Spring Boot Guice

Data & Streaming

Aurora MySQL DynamoDB Redis Kafka Flink Liquibase

AWS

EC2 Lambda SNS / SQS Step Functions EventBridge EKS Aurora MySQL ElastiCache Secrets Manager

Infrastructure & Delivery

Docker Kubernetes Helm Terraform Puppet Buildkite CI/CD

Testing

JUnit Mockito PactFlow Acceptance Testing Locust Performance Testing

Observability

Datadog

Tooling

Git GitHub Jira Confluence OpenAPI / Swagger Scrum Kanban

Architecture

Distributed Microservices System Design REST APIs Event-Driven Architecture OAuth / JWT