In this first RSE Career Q&A, we asked Sam Henderson from the British Geological Survey to tell us more about RSE and what a career in this field entails.
Hello Sam, can you tell us more about yourself?
I grew up in Inverness and didn't learn how to touch-type in business studies, so they wouldn't let me take any computing modules (spawning a lifelong distrust of authority). So instead, I did a physics degree at the University of Edinburgh and then moved on to a materials simulation/MRI doctorate at the University of Surrey and Forest Research.
Whilst writing up, I took a part-time position at the British Geological Survey as a software developer (but I reckon you can fit a 'research' in there). I decided that this was the career for me, based on the fact I was good at it, and it was the first thing in my life that paid a salary that I also liked doing. I think I enjoy the process of creation, building blocks, putting the blocks together, trying things out and just always learning.
Outside of work, I've got plans to try and ski all the good Scottish touring accessible descents before we stop getting snow. Endless other hobbies, never enough time.
What is RSE, and what do RSEs do?
I still don't think RSEing is defined by an 'action' very well, so much as an endpoint, which is for better software used in research, so that is what I think it is.
I'll caveat by saying I'm at the software end of RSE, but I think of RSEs, rather like software engineers, as layers of abstraction on top of computers. I think the research bit is encapsulated in that the RSE has been, is or wants to be involved in research. That makes translating the research problem into the software solution more enjoyable.
This can take many forms, from the robustness perspective "I think we should implement some kind of software system so we can get back to this point if we mess up going forward ™", to the research perspective "I think using that data-source/algorithm could affect our results in this way" and includes the slightly more computer science perspectives (e.g. parallelisation, algorithm performance), and the software engineer perspectives, better code, testing as well as apis and front-ends that people actually want to use.
Have you always worked in software? If not, what made you decide to switch to software and, specifically, RSE?
When I was 17 about to go into my second year of University, I was offered the choice to go into computer science or computational physics because the software part is what I loved and was good at. The power of the status quo ended up being much stronger than my lack of confidence, so that fell through. I was given a second chance during my EngD to write whole heaps of code, and it was fantastic, but it also kept putting physics and research problems in the way. So I wrote my own code instead, which was not as scientifically valuable. Fortunately, this time I was at a stage in my life where I actually valued myself and my needs, so I decided I was going to become a software developer, and that the smart thing to do would be to do it somewhere researchy, so here I am as an RSE.
If I have one piece of life advice, please try and do something you actually like because, in my experience, the world becomes a lot more manageable. I think it can be especially tough for scientists who might be prone to disregarding feelings as dangerous in their working lives (although this field is advancing) to embrace feelings in their own life.
How was your experience starting out as an RSE? Did you have any mentorship, coaching, or people you could count on or go to for career advice?
I suppose it should really be: "How is your experience starting out as an RSE?". I've only been at it full-time for about a year. Honestly absolutely fantastic. I've got a great team in the British Geological Survey's Geomagnetism division who immediately found places where the skills I brought in were useful (writing very dodgy Python scripts) while I picked up all the software engineering stuff. Well, probably not all of it, but I'm trying! A lot of people around me have had analogous experiences, and I have picked up a lot of career advice from them. I enjoy trying to have highbrow ideas about good code when I'm looking over a physicist's shoulder, without blurting out that I've got a test that only passes if you run it three times.
How well-known was RSE when you were starting out?
A shout out to Rana Marrington in the University of Surrey careers advice team for letting me know RSE was a thing. In all honesty, if it wasn't for her, I would have had no idea. I learned about the community because she linked me to the jobs board. I actually found my current position via LinkedIn (where I applied for a different job and then, in the interview, basically said I didn't think it was for me) before being offered a software position instead. It felt like RSE to me, and I can't quite remember the sequence of events, but somehow, I ended up in the Slack channel and three of us went to RSEcon22.
RSE has gotten a lot of attention in the past decade. Do you think there is enough awareness about RSE among potential RSEs?
I'm trying not to smile at the 'a lot of attention' part. I mean, Brexit has gotten a lot of attention in the past decade, but I suppose it is all relative!
Who is a potential RSE? Someone who is an RSE but doesn't know they are, or someone who might become an RSE? I think there are loads of people who could benefit from the shared knowledge and experience of the RSE community who don't know it exists or don't engage with it. Scientists at all stages in their careers and software engineers for whom there might be a greater calling than what they are currently doing.
Considering recent PhDs or MREs graduates transitioning into RSE, how easy do you think the transition might be, and what can institutions such as the Software Sustainability Institute do to help?
How easy might it be... depends on the PhD, and the RSE role! I've got no idea what the SSI could do for PhDs, seems like a research question to me! I probably didn't realise what I needed yet.
If you could devise the ideal mentorship scheme to help even the most software-averse person be interested in software engineering, what would it be like?
Well, I suppose it depends on what you mean by software-averse. I wouldn't try and make anyone interested in what they aren't interested in!
I suppose a lack of exposure could make someone averse. Scientists should just be shown non-stop horror stories of all the completely wrong research, and the years of work that will go into fixing it because someone couldn't be bothered writing tests. Or even worse, that boutique piece of code they just wrote? All but one tiny part of it has been done better by a woman in the Italian Apennines if only they had checked on GitHub and they could have spent all the grant money on wine building some beautiful website but, instead, people in their academic community are forever going to email a zip file back and forth called MPM_David_v0.1.2_20230228.
Put someone in a room with me for a few minutes, and I'll be describing everything as shapes and pictures and components, explaining how software engineering is like building a bicycle, but it takes longer for it to make your back hurt. And just show people what you can do with a few lines of code... shortly after tracking the position of the ISS for the first time they'll have built an app to generate an AI capybara family portrait, I'm sure.
Want to discuss this post with us? Send us an email or contact us on Twitter @SoftwareSaved.