Live data from Hacker News

Science needs more research software engineers

nature.com

71–80 of 366 posts

Re: Science needs more research software engineers

#71

It's already been said several times over but I'm going to throw it out anyway. I'd love to work at a university as a research software engineer. I find things like bioinformatics fascinating and even interviewed at a research university on the east coast. But, you will get paid SIGNIFICANTLY less than you would doing almost anything else, have zero autonomy, and get no respect. Those 3 things are basically what most…

>you will get paid SIGNIFICANTLY less than you would doing almost anything else

Definitely true.

>have zero autonomy

Might be true? But in the right research group, this is definitely not true. I actually find that I had far more autonomy in academia than in industry. There are far fewer deadlines, less time pressure, and more curiosity-driven projects that are entirely owned by you.

>and get no respect

Might be true, but I find a lot of people in industry feel they get no respect as well. As an academic, I actually found that I respected academics more than I did people in industry. Though this is entirely anecdotal.

I was an academic until my 30s before going to industry, and actually find that the autonomy is the number one reason people like academia. YOU drive the projects because only YOU know the research that deeply. YOU get to be at the forefront, and YOU know things nobody else might ever know, until you get to share them through publications and presentations. Academic projects have essentially no deadline (projects are on multi-year long timescales rather than quarters or months in industry).

Re: Science needs more research software engineers

#72

Well, then science needs to do more to create an environment where software engineers would want to be an RSE. From my experience "science" does not appreciate RSEs, the compensation is bad, the freedom is bad, and you get all of the big company bureaucracy from the University. It's just a bad environment and to top it off, even if you have a PhD many will see you as "less than."

While the academia has a lot of issues, software engineers should also adjust their expectations.

First, if you choose to work for a non-profit, you should expect a huge pay cut. That's the way the society works. Or actually it's the opposite. If you work in a for-profit role, the society allows your employer to keep most of the value you create. If you create a lot of value, that gives you the leverage to negotiate much higher compensation than your peers in less profitable roles.

Second, like in any business, you should focus on what brings the money in if you want to advance your career. You should be the PI instead of the lab technician. Instead of building the software other people ask, you should become an expert in the field and build the software other people will need in the future. For example, bioinformatics as a whole used to be more of a support role, but today there are many high-profile bioinformatics PIs.

Third, many people in the industry fail to realize that you don't really work for your employer in the academia. You work to build a reputation for yourself, which makes you valuable to the employer. If you want to continue working for other people, the upward career path from support roles goes to the administration.

Re: Science needs more research software engineers

#73
I'm a R&D scientist, working in industry. My work site has a full blown software department. Yet I do all of my own coding. Pay and status are not issues -- if I had a programmer working for me, they'd get paid according to industry standards.

Some other issues include:

1. Knowing that software development can be a black hole. Nearly half a century after The Mythical Man Month, management of software projects remains an unsolved problem. And we're not gifted managers to begin with. When I do it myself, if nothing else, I have a pretty good sense of when it will be done.

2. What to do if there's not enough programming work for a full time programmer, and that person doesn't want to work on other things.

3. It seems like programmers with domain skills related to R&D, such as math, are in particular demand.

4. It takes a certain temperament to hang in an R&D setting. A lot of engineers just hate it: The rapidly shifting requirements, and the knowledge that something they make will only be used once, or even wrecked.

The dirty secret is that the same programming work that's a step down for a commercial developer, might be a step up for a grad student or researcher who wants to learn a marketable skill. Also, a multi-disciplinary team, including people who can program as needed but also do other things, can be quite agile.

My team has a software engineer, but he doesn't do very much coding for us. He has actual R&D projects of his own. Yet he can help us at a higher level, for instance giving guidance on how we can write better code, and make better use of tools. This brings us a lot of benefit without wasting his brain cells on mundane coding tasks.

Re: Science needs more research software engineers

#74

Well, then science needs to do more to create an environment where software engineers would want to be an RSE. From my experience "science" does not appreciate RSEs, the compensation is bad, the freedom is bad, and you get all of the big company bureaucracy from the University. It's just a bad environment and to top it off, even if you have a PhD many will see you as "less than."

> even if you have a PhD many will see you as "less than."

Inside academia and outside of it.

Inside academia you are not on a tenure track or similar, and will have to put up with a lot.

Outside academia, your peers will be making 3x or more than you, working less hours, with less stress, etc.

The reason RSE's jobs are hard to fill and often aren't even opened is that they don't make sense. If you are good enough for an RSE job, you will be good enough for research postions at FAANG. Those pay 10x more, so you also need someone willing to not accept that 10x pay, and also willing to work double the hours.

RSEs making a reasonable pay for the skills they require make no sense either, because that would put your pay at 2x that of professors, etc.

Re: Science needs more research software engineers

#75
post #23

I've worked at a top research university for the past 15 years as a research software engineer. Many of these comments have some truth but a lot are definitely not universally true. Poor compensation: Yup, I'll cop to that. I could be making way more in "industry" but I make enough to live and I don't build ad-ware and do take pride in my work. Being a PhD but little respect: I actually have the opposite experience.…

I also had a good experience as a research software engineer. Tons of autonomy and fun work. Reasonable expectations and no overwork. But it was barely a job, I got paid like a tenth of what I make in industry. Once I saw the kinds of offers friends were getting, I was out.

(My research institute didn’t have a concept of “research software engineer” so I was paid as a generic research assistant.)

Re: Science needs more research software engineers

#76

This looks great, and I would have loved to see this when I was in the lab. When the software industry says to you: "We will nearly triple your salary, you don't have to work weekends, and you also don't have to feed the mice on a Sunday night." You will 100% take this deal. I was a 10yr+ academic tool maker in biochemistry, built cutting edge microscopes, hardware, and image analysis software. My lab was successful…

What's Nico Stuurman up to these days? https://valelab.ucsf.edu/nico_stuurman/

Re: Science needs more research software engineers

#77
Most academic code is crap so there is that. the coworkers will be very bad programmers, difficult to advance (you should always work with people better than you). Computational papers are not often appreciated. Too much talk and too many pivots , too little code, at least too little pleasant code-writing. Unless you have a lot of ego, you will be ignored.

I am sure a lot of academic code would be written by the open source community, but alas , researchers are very stingy giving out their data

Re: Science needs more research software engineers

#78
post #24

I don't think scientists want research software engineers. PIs typically like to assume any and every role on a project, including software design. They don't like handing things off and letting people build modern, best practices software. You start talking about source code control, package managers, a language used in industry that they've never even heard of and don't care enough to learn about, etc., and you jus…

> They call it "codes" This is not really the core issue here, but yes, I've encountered this many times, and I have to admit that in some professional contexts I use "codes" as a shibboleth to identify people who aren't really in touch with the software engineering world.

I wonder if this used to be the more common term, and at some point we switched to “code”. Physicists were among the first serious computer users, but their software culture may have bifurcated from ours at some point.

Re: Science needs more research software engineers

#79

Well, then science needs to do more to create an environment where software engineers would want to be an RSE. From my experience "science" does not appreciate RSEs, the compensation is bad, the freedom is bad, and you get all of the big company bureaucracy from the University. It's just a bad environment and to top it off, even if you have a PhD many will see you as "less than."

There is simply no incentive for science to do proper software engineering. It does not directly produce papers or money, so nobody does it. I've seen it several times in my own career in several countries. PhDs having their own version of the code, incompatible with the one of the Postdoc sitting opposite of them. Each slaving away at their niche project but nobody there to bring it all together. This particular uni…

Is there any solution to be found through analogy with established fields' relationship between engineering and research disciplines? How, for instance, do physicists share formal models which rocket engineers might apply? Certainly the physicists aren't out developing unit tests for engines which apply their theory, but nor are the engineers exasperated by physicists rejecting their standardized tools (I imagine?).

Re: Science needs more research software engineers

#80
post #24

I don't think scientists want research software engineers. PIs typically like to assume any and every role on a project, including software design. They don't like handing things off and letting people build modern, best practices software. You start talking about source code control, package managers, a language used in industry that they've never even heard of and don't care enough to learn about, etc., and you jus…

I recently quit a job as a software engineer on a research project for all the reasons mentioned. They want grunts who don't care about project management or good engineering practices and they will belittle you as not worth the money even when you took a (theoretical, as I am overemployed) massive paycut to go and work for them. I made 1/3 there compared to the jobs I am interviewing for to replace it. These people…

Are you saying that you hold multiple full-time jobs?
Post reply on HN