0

Disclaimer, I already posted this on StackOverflow and got advised to post it on "The Workplace" where I got advised to post it on "Academia". Please don't send me back to StackOverflow. In my opinion, it's deeply related to all three of them, so probably people who are active on all three subs have the best perspective.

We are currently an academic institute of around 50 people. The institute does typical industry research, batteries, metals, magnets, etc. Recently, we began more and more relying on algorithmic developments for evaluation. Most of the recent research results depend in one way or another on custom-built solutions a.k.a software, some even required a User Interface to limit the burden on less tech-savy people.

We are currently building these solutions internally on a per-need basis. I joined the team 1 year ago as a "Machine Learning Expert" but my origin is in computer science and programming. I have some experience in DevOps, Software Project Management, and CI/TDD, and also other people have concepts of how things could be organized. If it's relevant, I will be working on my Ph.D. there. Also, we are doing industry transfer. 4 or 5 more people have at least some experience coding so I am not all on my own with the following mess:

We have data management by chaos and network drives, there is no CI or TDD, no common code-base, everything is pushed on network drives via mercurial (if at all, often it stays local) we slowly have to start using docker because some of the hardware requires it, but we don't have the time to get to the point where it starts saving time, we have high fluctuation and that's only some of the problems you can imagine. Also, we have tons of meetings on how to structure stuff and improve the situation (theoretically). Nothing changed in a year.

The management structure is "by objective" and the DevOps horizon ends at excel. How you do DevOps in excel? You don't. So nobody really cares what we do, how we do, or even who does what as long as you document your stuff in PowerPoint and application guys can use it. There are multiple people supervising multiple students, which sometimes have some sort of coding experience and add to code-abyss. As long as stuff gets published no one cares. Later on, we have a "knowledge" transfer program in cooperation with industry partners ("knowledge" basically means software), that's where everything comes crashing down. In my opinion, working like this and continuing in such a way is tremendously short-sighted, to put it gently. I love this institute and I want it to play in the SotA league. Currently, nobody is holding us back other than ourselves. Freeing time for actual reproducible research by having modern infrastructure and fitting management, sounds too good to be true?

Because it seems we are going nowhere without radical change and external input, I thought I'd give it a shot here as there are people with much more experience than I have. Maybe someone who already completed a Ph.D., started working as a Developer, and now moved into Management. Please share your wisdom. Other institutes could clearly benefit from this, as I can imagine, we are definitely not the only ones struggling.

The best answer from the previous posts was purely from a management perspective: Start with a maximum effect thing and show how much time it saves. This is to convince other people by action and not by words. While that was certainly helpful, that was very unspecific. We need first-hand experiences from institutes that have been transforming and have been adapting to stay relevant to the industry. I promise you, many people will thank you for sharing how you transformed.

The worst answer sadly came from a purely academic perspective which might cost me a few sympathy points here but I tell you anyway. It said I should not care because "it is what it is" and "there are other people who should deal with this". I promise you, they won't be coming. Further, handling the industry transfer under these circumstances is already unbearable. The answer might be true if your scope is really limited to academia only and you solely care about publishing papers, but outside that world, things flow differently.

2
  • Very interesting question, but not sure we as Academia.SE are qualified to answer -- most of us are knowledgeable about research, not devops. At the risk of sending you to a fourth (!) stack, maybe try Project Management? – cag51 May 6 at 3:34
  • 1
    Still, if I were to take a crack at an answer myself, my first question would be: how much authority do you have to enact change? Academics are generally rewarded for publishing, not producing nice code. If you can hire a team a team of developers and DevOps people to do some of the heavy lifting, then this might be tractable; if you can only "encourage" the academics to write better software, then I think you might be pushing the proverbial rock uphill. – cag51 May 6 at 3:39
0

Make your own life easier, then help make the lives of others easier as well. That's the crux of it. It seems that there are several issues. First, you appear to have problems with how your own work is organized and managed, and then second you appear to have issues with how work as a whole is organized and managed. Particularly you seem to be concerned that a lack of organizational formality is causing serious problems during the knowledge (software) transfer phase.

I've found, especially in academia, that trying to cause big change is rarely the way to do it. Blue-sky thinking about what this would look like is fun, and I'll bet a number of the researchers working there have a topical knowledge of various technologies and think they are cool, but it is unlikely to get much beyond the white paper phase.

Instead, focus on a single problem that is causing you, specifically, grief. Ideally that will also be a problem that others face. Solve that problem for yourself, for your specific projects, in a way that saves you time or pain at the transfer step. Perhaps, for instance, you can become the Docker guru in the institute, but it may be something even smaller, like moving one function from Excel to a more useful online platform. I don't know enough about what you do to make this clearer, but I'm sure there are tiny tasks that you do that are just pains. Fix those.

Next, get others up to speed on these new ideas. If you are going to be doing a PhD then it is reasonable to expect you will be supervising students. As soon as they start just introduce them to these new procedures as though "this is how it's done here". They will start with the understanding of how to do things, and as they become masters and PhD students suddenly they will just take up those ideas as well.

Once a few problems are solved you should have extra time to start thinking about re-organization of bigger things. The key here is that you will also be known as the person who made those changes happen, so you may be given the responsibility to do more.

I've found that there are two major reasons that we as academics do not implement more industry-standard management techniques:

  1. No one really knows about them - what this means is that we may have heard about various techniques or technologies, but at a very superficial level. We have a solution in search of a problem, where we know that "Docker" is a thing that is used but we don't know enough about why and where it is used to really take advantage of it. Once we do end up using these things it's usually at a superficial level or just plain wrong (for instance, using Excel for dev-ops...)

  2. There are so many of these technologies/techniques that no one has a clue which is best. This is usually from a lack of experience in situations where there is no choice. For instance, if you work at Google, then there is a set of ways to do things. You learn these from day 1. In academia there is much more freedom, but as a result much more paralysis.

The solution to both is to start small, pick one thing, and get good at it. Change happens when people's lives are made easier, not when meetings are held about making lives easier...

0

Sounds like you're running into the situation where you can see a better world for your institute, but not getting traction. From what I've seen, the higher-ups nod kindly, but nothing happens. A few observations:

  • If you expect those same higher-ups to approve AND get things started, that's a mistake. It's not from lack of interest. These folks are frequently presented with new ways to change the place or to invest money.
  • If you expect them to mandate use of source control systems, continuous integration, etc., forget it. I assume you don't have a CIO sort of person.
  • You have to start simply at the grass-roots level. If you're not getting traction there, well that's where you need to get it.

Your best hope is to demonstrate a competitive advantage, if any, modern IT practices might confer. Follow the $$$. From a different angle, figure out what potential penalties or problems or costs you might incur from staying Wild West. And another: Figure out the level of IT maturity peer organizations are at. You probably want to be ahead of the middle of the pack but not at the bleeding edge.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.