I'm a reformed physicist in HPC!
EducationGlastonbury Thorn primary school (1996-1999), Two Mile Ash middle school (1999-2003), Denbigh secondary school (2003-2007), Denbigh 6th Form (2007-2009), Heriot-Watt University (2009-2013), Scottish Doctoral Training Centre in Condensed Matter Physics (2013-2018)
Qualifications12 GCSEs, 3 A-levels (Maths, Further Maths, Physics) and 1 AS (Music Technology), MPhys (Physics), PhD (Physics)
Work HistoryGAME (Retail Assistant), Heriot-Watt Student's Union (Venue Technician), Underbelly (Venue Technician), Heriot-Watt University (Lab Demonstrator), EPCC (Applications Developer in Data Science), EPCC (Applications Consultant in HPC)
Current JobApplications Consultant in HPC
EPCC, University of Edinburgh
Favourite thing to do in my job: Write code that works! (Rare.)
About Me: When I'm not at work I enjoy rock climbing and long-distance cycling (but mostly sitting around in a onesie playing videogames all day).
Hello my name is Oliver! I was born in Enfield, raised in Milton Keynes, and since 2009 have lived in Edinburgh. My partner, Jane, and I share our house with a cat named Oscar, and two rabbits called Lola and Jasmine.
In my free time I like rock climbing and long distance cycling, as well as a more usual range of activities such as watching Netflix and playing videogames. I’m pretty much constantly listening to music while I work too!
Oscar the cat,
Lola (brown French Lop) and Jasmine (black and white Lionhead),
and of course, my bicycle!
My Work: I help scientists write code that works on some of the world's most powerful computers.
I work for a centre in the University of Edinburgh called EPCC . As a centre we do lots of things related to computing, but these fall in to two broad categories: provide powerful computers for industry and academia (university researchers!) to use, and provide software developers with the expertise to get the most out of those computers. The computers that we maintain include ARCHER, the UK’s national supercomputing service. It’s actually soon to be replaced, by the imaginatively names ARCHER2.
My own work at EPCC focuses on four specific areas:
- Supporting users of our supercomputers. [User Support]
- Developing and improving scientific research codes. [Research Software Engineering]
- Researching ways to use supercomputers more effectively. [HPC Research]
- Teaching! [Teaching]
There’s a lot to talk about, so I’ll cover each one in a separate section below. These explanations will be quite technical, but if anything doesn’t make sense or you’d like to know more, please just ask!
Being a world-renowned expert in physics, chemistry, engineering, biology, geology, or even computer science doesn’t automatically make you an expert in using Linux, remotely accessing computers, compiling software from source, or using a compute job submission system, so quite often our users need help! EPCC runs a service desk for each of our supercomputers, which users can contact when they have a question.
I am a service-desk operator, as well as a member of the user administration team, which means that I have several shifts a month on the other end of emails and calls from our users. Depending on the problem, I can either help them myself, or pass it on to another member of the team. Whether they simply need to reset their password, or want help making their research code run faster, our aim is to make sure scientists can continue to do science on our supercomputers.
Research Software Engineering
A lot of research requires computer simulation, but the skills required to do good science are not necessarily the same as the skills required to write good software (note: software are the programs that run on a computer, hardware is the computer itself!). This is where the Research Software Engineer (or RSE) comes in to play. RSEs, like myself and many of my colleagues, are software developers who specialise in the sort of software needed by scientists and researchers. This sort of job has existed for a long time, but in quite a hidden way. Now however, we have our own society! This sort of work is a big part of my job at EPCC — I work with scientists to help them develop or improve the software they need. As an example I’m currently working with a group at Edinburgh add a new method to code for simulating blood flow.
First things first: “HPC” stands for High-Performance Computing. What actually makes computing “High-Performance” however, is a lot harder to define! This is partly because it changes all the time. Bigger and better computer hardware is being developed all the time, but what good is a bigger computer if you don’t know how to use it? My HPC research tends to focus on what we call “programming models”. The programming model is the programmer’s view of where their program’s data will be stored, and how they can do things to it. This might sound obvious if you think about the sort of computer you’re using to read this at home — the data is in memory, and your processor can access any of it. On large supercomputers with many individual computers (or “nodes”) connected together however, it’s a bit more difficult! The aim of my research is to make more complicated computers easy to use, but also give the programmer the tools to make their program run as efficiently as possible. Right now I’m working on a project to model the cost (in time) of accessing data on many different types of memory in the same computer.
EPCC runs an MSc (a postgraduate degree) in HPC and HPC with Data Science. I’m a lecturer on two of our courses, as well as a dissertation project supervisor. I usually also have at least one summer project student. This year that means supervsing four students over summer! It’s going to be a busy one… I’m also currently recruiting a PhD student to work on a research project. All these things keep me very busy, but teahcing is a part of the job I really enjoy, and one of the benefits (from my perspective) of working at a university rather than in industry.
Bonus picture of ARCHER:
My Typical Day: Wake up, drink coffee, write code, drink coffee, write code, play videogames, bed!
Before the pandemic my day would typically begin around 8 with getting up, letting the cat out and showering. Some time after 9 I would cycle in to our (very fancy) office in the Bayes Centre near central Edinburgh.
I’m contracted to work 35 hours a week, and our core hours are 10am-4pm — that doesn’t mean I work 6 hours a day! Those are just the hours we should be in the office, so I choose to work from 10 until 6 most days. Then of course, I cycle home!
The Bayes Centre:
Now that we’re working from home I still work those hours, but I don’t bother getting out of bed until 9! No real complaints, but I do miss my commute forcing me to get out on the bicycle every day. We’re very lucky at EPCC in that it’s quite easy to do most of our work remotely, so we’ve been able to continue almost as usual. As you can see below, I’ve got a desk set up to do my work on, and I actually quite enjoy getting to use my desktop computer rather than my work-provided laptop!
The only problem is sometimes Oscar steals my seat…
How would you describe yourself in 3 words?
Needs more coffee.
What or who inspired you to follow your career?
In my case nothing specifically inspired me, it just turned out to be what I like doing! I used to really like the BBC show ‘Waking the Dead’, so for a while I wanted to be a forensic scientist — but it turns out I’m rubbish at chemistry so that never happened. I like problem solving, and I like computers and programming, so everything just sort of fell in to line. I really enjoy my job, but I can see how it wouldn’t be to everyone’s taste.
What was your favourite subject at school?
Food Technology, mmm….
What did you want to be after you left school?
When I was leaving school, I wanted to be a research scientist in the civil service. By the time I left university (8.5 years later) I wanted to do exactly what I do now!
Were you ever in trouble at school?
If you weren't doing this job, what would you choose instead?
Definitely still a programmer! I love the puzzle-solving aspect of writing code, and I love technology.
Who is your favourite singer or band?
This is far too hard a question to answer! I mostly listen to hip-hop, but also punk, hardcore, industrial metal, and jazz when the mood strikes me. The last hip-hop gig I went to was Hobo Johnson & The Lovemakers, the last rock gig I went to was Jamie Lenman. Most recent album added to my playlist was 2 Hands Up by Young RJ and Mega Ran.
What's your favourite food?
What is the most fun thing you've done?
There's an annual cycle ride overnight from Carlisle to Edinburgh. I've done it twice now, and it's one of the highlights of my calendar. It won't be happening this year (and I wouldn't be fit enough if it did!) but I'm looking forward to the next one, whenever that may be.
If you had 3 wishes for yourself what would they be? - be honest!
Okay, so, wish one would be Bernard’s watch. If you never saw the CITV show Bernard’s watch then you missed out! The point is it’s a stop-watch that can stop time in a clean uncomplicated way, without having to worry too much about the physics. If I had it I would be able to sleep a normal amount of time AND play videogames AND do research! Wish number two would be to win the lottery so I could have a beautiful Edinburgh townhouse (and a dishwasher). Wish number three would be to have a perfect memory, because mine is pretty bad...
Tell us a joke.
There are 10 types of people in the world; those who understand binary, and those who don’t.