-
Notifications
You must be signed in to change notification settings - Fork 7
/
cv.tex
148 lines (116 loc) · 5.8 KB
/
cv.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
\documentclass[a4paper]{barrucadu-cv}
\newcommand{\range}[2]{#1–#2}
\newcommand{\orange}[1]{\range{#1}{now}}
\firstname{Michael}
\familyname{Walker}
\address{London}{England}
\email{[email protected]}
\homepage{www.barrucadu.co.uk}
\linkedin{barrucadu}
\twitter{barrucadu}
\github{barrucadu}
\begin{document}
\section{Experience}
\subsection{GoCardless}
\begin{cventry}{\orange{Apr~2024}}{Senior Software Development Engineer}
\end{cventry}
\begin{cventry}{\range{Mar~2022}{Apr~2024}}{Software Development Engineer}
\begin{tightitemize}
\item Designed a replacement scheduler for kubernetes cronjobs to gracefully handle daylight savings and other timezone changes.
\item Led a project to localise our daily batch-processing pipelines to optimise timings with international banking partners.
\item Implemented an MVP of using machine learning to speed up payment processing where there is low risk of failure, and joined customer calls to discuss their needs.
\item Analysed and improved the performance of time-sensitive data processing pipelines through table partitioning and algorithmic improvements.
\item Led implementation of a new event sourcing approach to our core payment processing logic.
\item Led sessions for team members to discuss potential incidents and identify mitigations.
\item Mentored junior developers.
\end{tightitemize}
\end{cventry}
\subsection{Government Digital Service}
\begin{cventry}{\range{Jun~2019}{Feb~2022}}{Senior Developer}
\begin{tightitemize}
\item Tech lead on a small multidisciplinary agile team doing discovery work into GOV.UK Accounts and Personalisation, where I:
\begin{itemize}
\item Worked with product and delivery managers to prioritise and delegate work.
\item Implemented authentication and authorisation with OAuth / OpenID Connect.
\item Established good practices like continuous deployment and service level objectives.
\item Proposed and built consensus for large changes to the GOV.UK stack.
\item Worked with architects and our CDN provider to plan how to transition GOV.UK from a mostly static and very cacheable website to being much more dynamic.
\end{itemize}
\item Prototyped and then productionised a machine learning pipeline for search result ranking using Amazon SageMaker.
\item Lead an upgrade from Elasticsearch 5 to Elasticsearch 6.
\item Worked with external pentesters, assisting their work and triaging issues.
\item Worked with performance analysts to plan and implement A/B tests.
\end{tightitemize}
\end{cventry}
\begin{cventry}{\range{Apr~2018}{Jun~2019}}{Developer}
\begin{tightitemize}
\item Made various improvements to the GOV.UK stack: for performance, technical debt, and architecture debt. Mostly Ruby and Rails or Sinatra, some Python, various types of database (e.g. PostgreSQL and MySQL). All running on Linux.
\item Lead initial experiments into load testing.
\item Planned and implemented an upgrade from Elasticsearch 2 to Elasticsearch 5.
\item Worked with AWS infrastructure using Terraform and Puppet.
\item Gave regular support to teams which did not merit a full-time developer.
\end{tightitemize}
\end{cventry}
\subsection{Overleaf}
\begin{cventry}{\range{Jan}{Mar}~2018}{Software Engineer (Part Time)}
\begin{tightitemize}
\item Maintained legacy Rails and Java / JGit services during the merger with ShareLaTeX.
\end{tightitemize}
\end{cventry}
\begin{cventry}{\range{Jul}{Sep}~2017}{Software Engineering Intern}
\begin{tightitemize}
\item Fixed security issues, ranging from CSRF and XSS vulnerabilities to a bug in Heroku's router.
\item Ported a large Rails 4 application to Rails 5.
\item Designed and implemented a distributed message bus using Node and Redis.
\end{tightitemize}
\end{cventry}
\subsection{Pusher}
\begin{cventry}{\range{May}{Aug}~2016}{Software Engineering Intern}
\begin{tightitemize}
\item Contributed to the productionisation of a prototype low-latency distributed message bus using Go and Raft consensus.
\end{tightitemize}
\end{cventry}
\subsection{CoreFiling}
\begin{cventry}{\range{Jul}{Sep}~2014}{Software Engineering Intern}
\begin{tightitemize}
\item Refactored a Java in-house wiki program, fixing numerous long-standing bugs.
\end{tightitemize}
\end{cventry}
\section{Education}
\subsection{University of York}
\begin{cventry}{\range{2014}{2019}}{Ph.D in Computer Science}
My thesis ``Revealing Behaviours of Concurrent Functional Programs
by Systematic Testing'' examined the deterministic testing of
concurrent programs with shared memory and message passing.
Supervised by Colin Runciman, and examined by Simon Peyton Jones and
Ana Cavalcanti.
\end{cventry}
\begin{cventry}{\range{2010}{2014}}{M.Eng in Computer Systems and Software Engineering}
My dissertation on the formal verification of stop-the-world garbage
collectors received first-class honours. Overall, I achieved a 2:1.
\end{cventry}
\section{Publications}
\def\entryheadinglevel{subsection}
\phdthesis{2018}
{Revealing Behaviours of Concurrent Functional Programs by Systematic Testing}
{University of York}
\published[10.1007/978-3-319-90686-7\_17]
{2018}
{Cheap Remarks about Concurrent Programs}
{ACM SIGPLAN}
{Michael Walker and Colin Runciman}
{ACM SIGPLAN Symposium on Functional and Logic Programming}
\published[10.1145/2887747.2804306]
{2015}
{Déjà Fu: A Concurrency Testing Library for Haskell}
{ACM SIGPLAN}
{Michael Walker and Colin Runciman}
{ACM SIGPLAN Symposium on Haskell}
\textit{PDFs and BibTeX entries are available on \httplink[my website]{www.barrucadu.co.uk}.}
\section{Open Source}
\begin{cventry}{\orange{2015}}{D\'{e}j\`{a}~Fu}
A library for testing concurrent Haskell programs,
developed as part of my Ph.D thesis. It has had some commercial users.
\textbf{\small\githublink{barrucadu}{dejafu}}
\end{cventry}
\end{document}