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 informs how I think about 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.
  • Act as 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.
  • Engage closely with stakeholders and product across vertical and cross-functional teams to shape and prioritise engineering work.
  • Drive platform reliability and scalability across a distributed Java microservice architecture on AWS, using Kafka, Flink, and event-driven patterns.
  • Provide technical leadership and direction within the team, setting standards, guiding architectural decisions, and driving engineering best practices.
  • Actively mentor junior and mid-level engineers through dedicated 1:1 sessions, code reviews, and pairing — supporting their progression towards senior roles.
  • Participate in on-call rotation, owning incident response and resolution for the Core Marketing Platforms domain.

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 enforces consistent, battle-tested patterns 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 — ensuring no critical gaps at launch.
  • Developed a service maturity matrix enabling teams to continuously grade their services across key dimensions, with clearly defined tiers (Basic, Standard, Optimised, Innovative) and actionable guidance at each level.
  • The matrix gives teams a structured way to identify areas for improvement and prioritise engineering investment, preventing standards from slipping over time.
  • Rolled out across all teams in the vertical, engaging directly with staff engineers to drive adoption, gather feedback, and ensure the framework reflected the needs of each team.

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, bridging 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, achieving zero data loss and zero duplication across the cutover.
  • Improved maintainability, observability, and deployment consistency by eliminating legacy dependencies and aligning with the team's modern 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