The distributed-systems story

Everything tagged distributed-systems across the whole site — work, projects, talks, and writing.

Positions

Senior Software Engineer, Processing Platform · Alert Logic

  • Erlang engineer on the original Processing Platform: a distributed-Erlang cluster over Riak doing big-data packet and log processing for real-time exploit and vulnerability detection
  • Architected and developed its ground-up replacement from the lessons of the first: serverless Erlang on AWS, with a custom bootstrap that brought an Erlang VM up inside a Lambda function and kept it warm for thirty minutes, fed by Kinesis and SQS, so capacity scaled horizontally with the firehose
  • Mentored an intern through building a GraphQL-based incident-analysis platform

Senior Software Engineer, CME Direct · CME Group

  • CME Direct trading platform (.NET) and stream-processing/CEP systems for market analysis
  • Co-designed a behavioural testing framework

Software Consultant (self-employed) · Holdsworth & Co Consultants

  • Three financial-sector contracts building high-performance analysis systems and tools for black-box trading systems and algorithmic trading strategies
  • A from-concept distributed execution platform scaling computation across a cluster for a private trading fund

Software Developer · Digital Future Solutions

  • Architected and built the next-generation 3D UI for a distributed multi-room media-centre product (.NET/WPF)

Projects

Account-linking and messaging service

Education

Principles of Reactive Programming · Coursera (EPFL / Typesafe)

High-Performance Lock-Free Data Structures and Concurrent Computing · Taught by Martin Thompson

BSc (Hons) Computer Science · Queen's University Belfast