Published 13th December 2021
Can you describe your background and your current role?
I had quite a bit of adversity in college and took the path of least resistance to graduate, namely studying Psychology in an effort to better understand people. Upon graduation I needed to find work, and decided to try this thing called research. I joined the Laboratory of Neurogenetics as a Research Technician knowing close to nothing about science or how to do research. I was given access to a high performance computing (HPC) cluster, command line software, huge datasets, and had to “figure it out.” This is where I fell in love with programming – first simple bash scripts, and then Matlab and Python. This was a huge gift because the PI in my lab gave me freedom to learn and grow, and after a few years in this role I dreamed of building tools and systems that were bigger than what I knew how to do.
I applied to graduate schools, amazingly was accepted to Stanford in Biomedical Informatics, and was there for 10 years as a student and then “Reproducibility Engineer,” which was a role I developed with the CTO of Research Computing to explicitly bring tools like containers to Stanford to aid with reproducible science. This year I joined a national lab as a Computer Scientist, which offers more stability and a better salary.
How did you become an RSE?
I knew that I was an RSEng a long time ago, as early as 2016, although I called it an Academic Software Developer. I felt out of place among other students in my program and other biosciences programs because I was driven by the desire to build things and not the science. I probably knew as soon as 2014 or 2015 that I wanted to be a software engineer, and I was determined to do everything in my power to pursue the path despite my lack of training. Looking back on these times, they were a mixture of self-discovery and (again) enormous adversity. I think I ultimately became an RSEng through grit and determination, and have been able to relax a bit more recently.
When did you first hear the term “RSE”?
I was engaged heavily with the neuroscience or neuroinformatics community in graduate school, and was sent a link by one of my colleagues in that space. It was for the group in the UK, a sort of “Hey, this looks like what you are trying to do!” And it gave me joy to see that, but my response was “What am I going to do all the way from over here?”
What makes you stand out from an “average” RSE?
I am a generalist, meaning that my preference is to work on core technologies that might be used across domains like workflow managers, continuous integration tools, containers, or systems stuff. This is different from a research software engineer that works, for example, in a specific lab or domain of science.
I am also hugely different in my life experience, because since I was 18, things have not been easy. I had gone through more medical adversity by the time I was 20 than most people deal with in their life-times, including several brain and spinal surgeries, having emergencies with several other major organs, and subsequent illness that controlled a huge part of my life. I’ve had to hide it. This adversity along with being a non-traditional person in tech, demographic and otherwise, has made me at times feel very out of place. There was the person I presented myself to be, and the real me – intense, silly or quirky, and passionate, inside. For years I tried to hide or self-monitor in an effort to fit in, and that kind of intensity being locked inside a person results in terrible anxiety.
Looking back on it all over 15 years later, I see this kind of adversity as a blessing in disguise. It increased the domain of my life experience, so the mundane and neutral seem hugely wonderful. I can look at people much older than me and see that they haven’t lived through anything like this yet. They get stressed or bent out of shape over tiny things. On an average day, this means I am a fairly happy person, and I’ve also found self-acceptance. I’ve learned to embrace and nurture the parts of me that are different, and clearly express my needs to others. I’ve thrown away any desire to change myself to hope that others approve. That’s probably good advice for someone reading – our sadness and tribulations make us stronger, but only if we are able to introspect and decide that we want to grow from them.
What is your favourite thing about your work and being an RSE?
I love the work, and I suspect this is because it fits nicely into the way that I think. Whether it’s an application structure or a code base, I’m very good at holding entire systems in my head. I can see the structure of what I want to make, and I’m comfortable stepping through that structure to work out the details as I work on it. I often experience flow — listening to music, often the same song on repeat, and walking on my treadmill desk and getting lost in the rhythm. My superpower is probably a little bit of the creativity that comes with this process and the tendency to think of how unlike things can be put together. I took this joyful state for granted for a long time until I saw other people working in grad school or after. I didn’t realize that anger or frustration could be an emotion associated with work, and I feel lucky to have a phenotype that doesn’t react in that way.
And what is the least favourite?
My biggest moments of sadness or frustration are all related to people. I saw a beautiful community around containers change into something different, and in 2017 I had to step away. As an adult I still encounter people that act maliciously or passive aggressively, and this can range from an actual threat to underhanded comments. I’ve learned that these are microaggressions, and they can wear a person down until there is no motivation or energy left. What to do? We have to choose our battles. If another person isn’t aware of their behavior, talking to them about it can change things for the better, and indeed I have relationships that started out negative that now are productive, and respectful. There is also something to say for removing consistent sources of toxicity from one’s life. I’ve also avoided or left entire communities because I made this decision.
I used to turn a shoulder to it, but I understand now why so many women (and people more generally) leave tech. We are not protected from this as RSEng. This also makes me reach my heart out to others that also might be suffering in silence, and appreciate the people I’ve known for many years that continue to show me kindness.
What does a typical working day look like for you?
I’ve had huge variance in my routine from college, to post-college, to graduate school and now, and the common feature is that I’m a huge creature of routine, so my days are very similar, and it’s actually quite stressful to stray from that. As a young person I used to get up really early (too early), maybe around 4:30am to run and then be working by 7:30am. I would be exhausted by 3:00pm and wanting to go home by 4:00pm, and completely unable to function after that.
As I’ve gotten older I’ve relaxed a lot, and probably am going through a bit of a rebellious stage that I never went through when I was younger. I like staying up late and watching movies or playing games or otherwise having fun, and then I’ll wake up when I am well rested. I’ve been remote since the end of 2017, so I’m well adjusted to remote life, and love the freedom. I work on a treadmill desk in my pajamas that is right next to my bed, and this can be for most of the day or up until I need to run. I try to push meetings to later in the day so I can be maximally productive, then take a run, and then come back and get ready for my meeting(s).
I only eat one meal a day, so that removes any burden of having to stop to eat (it’s really a waste of time if you ask me) and then I absolutely love dinner time, where I eat the same thing for dinner I’ve eaten for over a decade. Yes, you heard that right, haha. I eat a small set of things that keep me strong and nourished and I have no desire for *gesticulates in the air* all that other stuff that people put in their bodies.
After dinner I might relax for a little bit, but typically I’m eager to get back to working on something, and will work until I’m tired of that, and then either have some fun or watch a movie and off to bed. My weekend routines are largely the same but I might go for a longer run, and I don’t have meetings, hooray!
Did you already have any interactions with the RSE Society and the RSE community? If yes, which?
My interactions with the UK RSE Society started probably back when I started interacting with US-RSE in 2019. I had first created the RSE Stories podcast and brought on a host from the UK, and then I started participating more (e.g., events and the slack) in 2020. This last year (2021) I gave the keynote at SeptembRSE and it was a blast!
Do you see yourself as an academic, researcher, software engineer, technician…? All of it? Something else? A mix of one or two terms?
I’m more of a software engineer, although recently at the Lab I’ve been pushed into more of a researcher role. This phenotype doesn’t match me well, because being a researcher requires sitting down and reading papers for an entire area of research and then thinking about it. Although I can force myself to do this if my progression depends on it (graduate school), it just isn’t how I like to learn. Papers tend to be pretty boring and reading many of them is painful. We should embrace different kinds of skills in research, and a builder is just as important as a scholar.
That said, I have breadth in my expertise that makes me able to wear many hats. Because of my training I can also easily jump into data science/ML or visualization and HPC if needed. I like doing a large set of things and wouldn’t be happy doing a smaller subset. Thus I suspect there isn’t a perfect fit or title. My opinion is that the job itself doesn’t matter so much — it’s what we make of it.
What do you see as your most likely future career path from here? And what would be your ideal career path?
I suspect I’ll keep following my interests, and things that get me excited. It would be amazing to find another open source project akin to the original container community (Singularity) where my heart was singing quite loudly. I haven’t found my niche at the Lab yet, so a likely future is either to find one, or look somewhere else. I think pursuing happiness isn’t a great goal, but rather a rich range of life experiences.
What kind of barriers do you face in your work?
The first kind of barriers are fairly functional. Traveling is really stressful and hard for me, to the point where I can find myself on a trip or at a conference being totally overwhelmed and running for private space to recover. I also would struggle working in a typical office environment, because I’m filled with intensity and like to walk when I work. Sitting down is unbearable, and something I used to uncomfortably get through as a graduate student. I also eat very differently than the average person, so “grabbing lunch” isn’t a thing that I do. Since 2015 I’ve also worn masks outside for pollen because I’m so badly allergic, and that has progressed to a full respirator just to go outside, which funnily enough, is very socially appropriate now given COVID. Those things are fairly easy to handle with some planning ahead – I can participate in events in a way that is comfortable for me, and suggest taking a walk over a sitting or eating meeting.
The next barriers are harder, because the average person cannot see them. When you think differently, or have different needs for learning, you have two options. You can either be up front with others, or you can nod and smile, and try to hide your differences. I err on trying the second thing first, but it often comes up and then I have to do the first – being frank and honest. I still don’t have a good solution for the situation where you express how you learn or think differently, and someone else poses it as a weakness or “area to improve.” I think that’s a problem I’m starting to see with not having diversity of people in positions of power – it’s often the case that someone’s differences need to be embraced and supported instead of framed as weaknesses.
I did have one unexpected, wonderful experience recently – I was given feedback that I needed “to work on” a quality of myself that is different from the norm and it was an assessment by a neurotypical person that the difference about me was wrong based on their evaluation. A second individual came in and read the feedback, and disagreed. The evaluation was re-written to say something along the lines of supporting the way that I do learn best, and not framing it as a weakness. I honestly wanted to cry, because I never thought someone would advocate for me like that, or even know to.
What would make things easier for you, and support you in your work?
I really just want people to accept me for the way that I am, and give it a rest with respect to telling me that “to be successful I need to do this other thing.” Success for myself is something that only I can define, and someone else’s metric of success is irrelevant. I will be maximally successful when I feel supported for the ways that I am, and not lectured for the ways that I am not.
In your view, how could RSEs be better supported in their work? What do you need? What is missing?
I don’t know how to instill this, but I wish that people relaxed a bit more and realized that you don’t have to be serious to do respectable work. Why is it that everyone is chronically stressed and busy? Can we fix that? We will be happier and thus more productive if along with psychological safety we embrace the things that brought us to our roles in the first place. Let’s do great work, and remember to have fun too.
Which question did we not ask you which we should have (and what is the answer)?
The question is, “What is the biggest missing area of work or emphasis in our communities?” and the answer is developer tools and environments. As RSEng we are sometimes looked at like second hand citizens – we exist for support of researchers. Thus, our environments and tooling are really an after-thought, and if you look at major tech companies this is far from the truth. I’ve said this before and I’ll say it again – the greatest gift to research software engineering (and likely research in general) has been GitHub. It has given us a platform to practice reproducibility and collaborate on our code. Can we do better than that?