I'm Michael Walker. I also go by barrucadu.
It's like the fish, but with the vowels wrong.

What have I done in the past? See my CV.
What am I doing now? See my .
Sometimes I write things! See my .


Government Digital Service (GDS)

Senior Developer

Jun 2019–now

Tech lead on a small team doing discovery work into GOV.UK Accounts: lots of OAuth and OpenID Connect. Before that I spent a year working on search, including leading an upgrade from Elasticsearch 5 to Elasticsearch 6, and prototyping/productionising a machine learning pipeline for ranking results. Line manager to two mid-level developers.

Most of my work for GOV.UK is open source.

Government Digital Service (GDS)


Apr 2018–Jun 2019

I've worked on a variety of evidence-driven improvements to the GOV.UK publishing stack, both performance improvements and also resolving long-standing technical debt. Mostly Ruby and Rails 5 / Sinatra, some Python 2. Also gave regular support to teams which did not merit a full-time developer.

Most of my work for GOV.UK is open source.


Software Engineer (Part Time)

Jan–Mar 2018

Maintained legacy Rails and Java applications by fixing bugs and applying updates.

University of York

Postgraduate Teaching Assistant


Marked homeworks and helped students in the undergraduate compilers, discrete maths, and introductory programming modules, and the masters-level software testing module.


Software Engineering Intern

Jul–Sep 2019

Fixed bugs, closed security holes, ported Ruby, and worked on ShareLaTeX code and data analysis after the two companies merged.


Software Engineering Intern

May–Aug 2016

Powering realtime with spit and glue! (or so says my mug). I worked on performant and reliable distributed systems for message delivery.


Software Engineering Intern

May–Sep 2016

Wrote a parser/renderer for an in-house wiki program using ANTLR in Java, and integrated this with JIRA.



Presentations & Posters

Open Source

Déjà Fu



It's a library for testing concurrent Haskell programs, which came out of my Ph.D research. Pretty much everything is supported, plus a few extras.

Comes with HUnit and Tasty bindings, so you can easily integrate it with your existing testsuite.

Arch Hurd

Project Leader


I accidentally started a GNU/Hurd distribution based on Arch Linux. This was completely unintentional.

Served my time as project leader from 2010 to 2015, managing a handful of developers around the world porting over Linux software. I also produced installation media and maintained the website and repositories.




I was one of the first few developers, and this is the project that taught me C and Git. It was fun, and I learned a lot. I still host the website and mailing list.

Do not expect good code if you go and dig up my contributions.