I worked for 20 years at Dartmouth College as a "Senior Programmer" in the CS department, later reclassified as a "Senior Research Programmer". I came into the job with a BA in Physics and 15 years of industry experience (jamming systems for fighter aircraft EW systems, lead software QA programmer, consultant). While the pay was very low the work was interesting and towards the end I worked from home a lot. One difficulty was that my position was grant funded, so when a grant ran out so did my salary. The profs tried to keep me on several grants so I was always funded but at one point my primary boss went on sabbatical and I had to scramble to find someone to work for. This often meant I was working on several very different projects at the same time (computer security, privacy, robotics, wireless sensors, network monitoring, wearable health sensors, etc.), sometimes as many as 5 or 6 projects at the same time, usually 2 or 3. At one point I made an effort to collect information and build a proposal to create a pool of software+hardware engineers, similar to their already existing pool of programmers but more oriented to embedded devices, research code (the programmer pool mostly did statistics), wireless systems, drivers, etc. The College considered it, but decided not to go through with it because it would create a new cost center and they thought it would cost them money (benefits, what to do with the engineers between grants? put them on unemployment?). So unless a PI writes an engineer into a grant (difficult to do except for the larger $1,000,000 grants because you can't hire 1/3 of a person and get them to move to rural New Hampshire) there is basically no skilled engineering support for research projects at Dartmouth (except in the medical school). Most such work is assigned to students, who of course don't have a lot of experience and can't do some things (like write low level firmware for a Bluetooth MCU, CS students are not taught embedded systems coding, though they can take a course in the engineering school if they want to, but taking on a project that uses 500,000 lines of existing custom code and hacking it to do something no one has ever done before is not something a student can jump into for a semester.) So some types of research just don't get done. Also the work can be somewhat frustrating for an engineer because you never finish a project, you just get it working well enough to get a paper out of it and then it often ends. Even the longer term projects don't reach completion, at best there is a patent (I have my name on several as co-inventor, no one has ever licensed them.) There were very few other people like me on campus, I knew all of them and there were usually 3 to 5 at most. A year before I retired we hired a person to replace me, they stayed for a year then quit. It is very difficult to find people willing to move to a rural area, for lower pay, to do very complex unusual programming, that requires a wide range of expertise (from financial reports, to reviewing papers, to designing hardware, to all the kinds of software programming, collaborating with remote research groups, field experiments, travel to conferences, data analysis, cross disciplinary work in medicine, sociology, psychology, being comfortable in an international community, and more.) I think there are a lot of people who would enjoy this kind of work, but few willing to put up with the low pay and pressures (it's like being in a tiny startup that never grows and is always scrambling as they continually switch projects.) There was no path for advancement either (unless you call getting a PhD and leaving an advancement.) Pay raises were always fixed at about 2% per year (which actually meant losing pay since inflation incrementally reduced your salary until the next pay raise), or 3% at most in a good year. No bonuses. The benefits were good, the work was interesting, but from what I've seen it's difficult to find this kind of work at any research university, and it is extremely challenging in multiple dimensions. I think it likely this lack of engineers is /part/ of what has made much of US research short-term-focused on incremental changes and resulted in a lack of radical invention. Maybe it's different at some engineering schools?