I had a couple of good talks with fellow research computing team managers (in title or de facto) this week resulting from either the newsletter or the SORSE talk last week.
The problems each were wrestling with were tricky and stressful, and it was a reminder of how lonely management can be. I hope this newsletter - and the AMAs (Ask Managers Anything) section we had for a while, and will have again - helps cut through that a little bit. I also I hope we can find or build more forums for exchanging knowledge, advice, or even just sharing the victories and defeats in research computing.
There are some good general management or especially leadership management fora out there such as Rands Leadership Slack, which I quite like; but that audience mostly wouldn’t understand the particular culture of research (and especially academic research) that these managers were wrestling with.
If you do have questions that you’d like to get the readership’s input on, do hit reply and email it to me, and I can share it in the newsletter. I always end up learning something from reader emails, whether they’re questions or answers like from last week when I asked if anyone was using OpenHPC:
I learned just yesterday that the XSEDE Compatible Basic Cluster project is based on OpenHPC! https://kb.iu.edu/d/bfum So I doubt that it’s in use everywhere in XSEDE, but I would bet that a lot of the smaller sites are using it so they have a place to get started.
With that, let’s get on to the weekly roundup:
Learning with Fist of Five Voting - Jake Calabrese
We’ve talked before about the benefits of not asking your team binary yes/no questions about agreement but “on a scale of 1..5”; e.g. in #39 when mentioning the use of zoom polls. This gives people who aren’t comfortable with a direction a way to express that without coming out and saying no. And if a number of people vote 1 or 2 or 3, that will give them a bit more confidence in discussing why.
Calabrese describes a simple and fast way of doing the same without needing polling functionality (but also without anonymity) - holding up a hand with 0-5 digits showing varying levels of support for an idea. 0 (just a fist) is more or less adamant opposition, 5 is wild support, and anything in between is in between.
Are We Clear? - Paulo André
It can be mystifying to us, who constantly are looking at big picture goals and nudging things in the direction of overall strategy, that the team don’t automatically understand the goals we have for them. But our team members, lacking telepathy, can’t see the stuff that’s rattling around inside our head all day. The only thing to do is share those goals and vision again and again and again and again, verbally and in documents and and in actions.
There is no plausible amount of talking about goals and strategy that is too much. And André reminds us that Google’s Project Aristotle (a followup to Project Oxygen) found that structure and clarity were one of the 5 most important factors in team success: those factors were, in order:
André suggests a sobering test to see how aligned your team members are on the goals:
Here’s a quick test: try asking each of your team members to describe their understanding of the goals of the team, and what the plan to accomplish them is.
Do Your Employees Feel Safe Reporting Abuse and Discrimination? - Lily Zheng, HBR
If we want to support our employees, especially team members who experience sexism or racism, we need to make sure they have opportunities to report that abuse and discrimination. Although our teams are typically small, we’re often in large institutions which have mechanisms that can help, such as employee assistance plans (EAP), explicit offices for EDI or that handle sexual harassment or racial discrimination complaints, or ombudsman offices. It’s our responsibility to know what those resources are an to make it clear that they’re available to employees.
We also have to take any complaints that any of our team members trust us with extremely seriously, and to take their needs into account when deciding how to proceed.
Embracing a flexible workplace - Kathleen Hogan - Executive Vice President and Chief People Officer, Microsoft
You may well have read that Microsoft, a pretty staid company, is leaning way in to distributed work:
Work site: … However, for most roles, we view working from home part of the time (less than 50%) as now standard – assuming manager and team alignment. Work hours:… Work schedule flexibility is now considered standard for most roles. … Work location: (.. e.g. city and country): Similarly the guidance is there for managers and employees to discuss and address considerations…
It’s likely going to be the case most research computing teams will follow suit (maybe not about working from other countries, because of the requirements of some national funding agencies, but in most other ways). And I don’t see the kind of introspection about this in research computing I’d like to see, beyond “it’ll be nice to keep working from home and go into the office some times”.
I’ll write about this more, but I think this is going to end up redistributing research computing teams substantially. Once Universities get used to the idea that “our research computing teams don’t have to be here physically”, the next step is “do they have to be here organizationally”?
Small research computing teams will likely stay in place, there’s always some advantage to having some local expertise; the large research computing teams that learn to run distributed teams well are going to have a pretty easy time picking up great talent, attracted to the breadth of opportunities that being part of a large team enables. It seems pretty clear, however, that undistinguished medium-sized teams — expensive enough to be an important line item but with a muddy story about why they’re important — are going to be fielding increasingly skeptical questions from administrations.
Teams with clear specializations that bring clear benefit to a research organization are going to do ok, and those that don’t are going to have a year or two to make that clear benefit obvious to decision makers.
Things I Learned from Looking at 500 Research Computing Manager Jobs over 10 Months - Jonathan Dursi (me)
As you know, the newsletter has always had a section on job postings for leads and managers of research computing teams, and since June I’ve also been keeping them on a job board. We’ve now hit 500 jobs that were posted at one time or another, so I thought I’d summarize the patterns I’ve seen:
Customizing pandoc to generate beautiful pdf and epub from markdown - Sundeep Agarwal
A lot of us write in Markdown and want to repurpose documentation, writing, or tutorial material into PDF and/or epub with pandoc; one problem is that the default templates are pretty ugly. Agarwal goes through a few basic steps showing where and how to insert formatting to improve the output so that it’s something that can be distributed without a lot of manual tweaking afterwards.
Research Software Engineers - Job Descriptions - Aalto Scientific Computing Group
The Scientific Computing group of Aalto University has text for their job descriptions of a simple three-step (RSE1, RSE2, RSE3) progression for software development in their institution. It’s not a formally recognized ladder by HR yet but it guides their hiring decisions. The whole thing is just a few paragraphs long, but it’s very clear and is a lot more than most institutions have. The other internal documents they have on the page are models of clarity and transparency and they should be commended for it.
Does your institution have anything like this that’s publicly viewable? If so and you’re willing to share with the newsletter community, send it along.
Digital Humanities RSE Survey Results - DH Tech
DH Tech, an online tech community for the digital humanities, published their survey results of 66 software developers. Some interesting results from my point of view:
The Role of a Maintainer - Matthew Rocklin
Matthew Rocklin, of pydata and Dask fame, talks about the role of an open source software maintainer - task which will look awfully familiar to managers of software development efforts - and how to prioritize tasks if you are going to spend (say) 10 hours a week on it. This would be a good document to point someone to as an expectation-setting document.
SIAM’s Computational Science and Engineering (CSE) 2021, 1-5 March 2021 is officially all-virtual, and contributed posters are due 29 October. There’s a number of sessions of interest to the readers of RCT; this one for posters on software productivity and sustainability may be particularly relevant.
PASC 2021 - Due 22 Nov for minisymposia proposals, 13 Dec for paper submissions
This coming year’s ACM/Swiss National Supercomputing Centre (CSCS)-sponsored Platform for Advanced Scientific Computing (PASC) Conference will be held from July 5 to 8; it is currently planned to be in person at the University of Geneva.
Some relevant topics of interest for the conference are:
ISC 2021 Call for Research Papers - 10 Dec 2020
ISC 2021, which will be held from June 28-30 2021 and is currently planned to be held in person, has their CFP out. The big topic areas are: Architecture, Networks, & Storage; HPC Algorithms & Applications; Programming Environments & Systems Software; Machine Learning, AI, & Emerging Technologies; and Performance Modeling, Evaluation, & Analysis.
ArXiv now allows you to link code to paper submissions, at least for machine learning papers (this was done in a partnership with Papers With Code, an ML effort). Hopefully it will spread more broadly across arXiv.
Bubbletea is an Elm-language inspired go framework for building highly interactive terminal programs.
Buildpacks are a CNCF standard for building container images directly from code, allowing easier enforcement of standards of how containers are built in a project. Google announced widespread support for buildpacks within google cloud.
More formal methods for verification are becoming more readily useable in a number of ways. Crux allows symbolic testing of C++ or Rust code using property-based testing, with counterexamples of where a test would fail. This may be really nice for subtle kernels of scientific code.
The Fortran front end for LLVM, Flang, is now a standard part of LLVM 11.0.
Even banks are doing chaos testing.
Interesting looking CI/CD tool, conducto - the tool is free for running on your hardware, you pay to use their cloud instances to run the tests.
And that’s it for another week. Let me know what you thought, or if you have anything you’d like to share about the newsletter or management. Just email me or reply to this newsletter if you get it in your inbox.
Have a great weekend, and good luck in the coming week with your research computing team,
Highlights below; full listing available on the job board.
Research Computing Manager - Cranfield University, Cranfield UK
We are recruiting a Research Computing Manager to lead a small team of technical specialists to deliver highly available, scalable and effective HPC services supporting 1,600 staff and 4,500 students. You will have experience of building, managing and maintaining highly available and performant HPC systems requiring in-depth knowledge of advanced IT Infrastructure, compute and storage technologies and research applications. You will provide support and consultancy for school and departmental hosted services as well as providing third line technical support to the IT Service Desk and Service Delivery teams.
Associate Director, Biomedical HPC - UT Southwestern Biomedical Centre, Dallas TX US
UT Southwestern has an opening for the position of an Associate Director of the Biomedical High-Performance Computing (BioHPC) team. This is a high level leadership position for a dynamic, technically well-rounded IT expert with significant practical experience in running HPC systems, who seeks new challenges in project and team management.
The Associate Director will establish a synergistic interaction with the current Director of BioHPC, Liqiang Wang. Together they will identify priorities for maintenance and growth, outline technical strategies, and oversee a highly motivated staff in the implementation. The precise delineation of responsibilities between Director and Associate Director will be determined during the interview process based on the strengths and preferences of the candidate.
Lead Engineer Innovation Lab - NHSx, Leeds UK
This role is part of the Innovation Lab team, whose purpose is to:- Deliver proof of concepts using disruptive technology and rapid innovation techniques to create new healthcare opportunities, digital pathways that accelerate the long-term plan and deliver meaningful value to patients quicker.
Senior Research Software Engineer - University of Exeter, Exeter UK
The primary role of Research Software Engineers (RSEs) at the University of Exeter is to develop, maintain and extend research software as an integral part of the research process. RSEs will bring expertise in professional software development practices, frequently combined with domain-specific knowledge, which enables them to produce reliable, efficient and maintainable software for research. Provide technical project management and leadership for multiple research projects, ensuring successful outcomes, liaising with clients and colleagues to understand and prioritise project goals, and balancing client value with research outputs.
Head of Research Software Engineering - University of Exeter, Exeter UK
The Head of Research Software Engineering will provide strategic and technical leadership to a newly established group of Research Software Engineers (RSEs). They will be responsible for the strategic development and overall management of the Group, taking an “intrapreneurial” approach to marketing its services within the University and generation of a pipeline of projects requiring RSE skills, thereby maximising cost recovery and ensuring that the research benefits of the group are accrued across the University. In addition, the Head of RSE will be pivotal in planning, coordination and delivery of Exeter’s research e-infrastructure (including High Performance Computing), involving strong links to academic groups and professional services directorates such as Exeter IT.
Senior Research Software Engineer (Fixed Term) - University of Cambridge, Cambridge UK
We are seeking an experienced Senior Research Software Engineer (SRSE) to lead the development of our software culture and create a community of scientists who feel comfortable in scientific programming good practices.
Working closely with Neil Lawrence, the DeepMind Professor of Machine Learning, the SRSE will lead software development activities that facilitate the application of machine learning for scientific discovery. By advising on the strategic development of research projects and providing mentoring, training and support, the post-holder will create an environment in which researchers from across domains are empowered to create and support high-quality research software.
Innovation Manager (Data Analytics) - University of Warwick, Coventry UK
To provide specialist technology based support to SMEs, giving them a technology led competitive advantage through the implementation of new solutions and exploiting the knowledge within HVM Catapult (HVMC) and WMG. This will include raising awareness (running technology demonstrations, workshops and internships) and carrying out collaborative projects (delivery and project management where SMEs realise ideas and adopt new technologies). This will help businesses to develop new products and generate project outputs and High Value Manufacturing Catapult Key Performance Indicators (KPI) such as research and development collaborations and business engagements