Karen Tomko, Director of Research Software Applications, Ohio Supercomputer Center (OSC)

Headshot of Karen Tomko

Exploring the Landscape of Midwest Research Computing and Data Consortium

This is a series where we’re diving into the world of the Midwest Research Computing and Data Consortium, exploring its members, the challenges, and future prospects. We had the opportunity to speak with Karen Tomko, Director of Research Software Applications at the Ohio Supercomputer Center, who shared her insights on the field. Edited excerpts below:

About Ohio Supercomputer Center

As the Director of Research Software Applications at the Ohio Supercomputer Center (OSC), I have multiple roles but essentially I manage a group that deploys research-level software on our clusters that are then available to researchers. We support over 200 packages that cater to a diverse range of disciplines, and our responsibilities range from ensuring the smooth running of these packages, handling updates, and taking requests for new software.

Apart from overseeing software deployment, my team also collaborates with researchers on software development and performance analysis. We work to optimize software for large-scale operations on HPC clusters and engage in general software engineering work with research software code bases. We support clients across the United States so we have both the academic workload and industry workload on our system. Between the two, we also support some nonprofit workload, which includes out-of-state universities.

The World of Research Software Applications

Working in the field of research software applications comes with its unique set of challenges. A significant one of these is the communication barrier between computing professionals and researchers given we use different terminologies that might not necessarily overlap. For instance, I recall a project with the Byrd Polar and Climate Research Center at The Ohio State University where we worked on code to process satellite images to produce elevation maps. There were challenges understanding the researchers’ terminology but over time, we established a good working relationship that facilitated the project’s success.

Another challenge is the maintenance and improvement of single investigator codes. I remember a project where the code would have benefited from a significant redesign, but due to funding constraints, we could only work towards making it more robust and less fragile. The challenge lies in balancing the need for software design work with the constraints of funding and time commitments from investigators.

The Impact of AI and Advice for Aspiring Individuals

The influx of AI has drastically changed the landscape of research software engineering. While AI frameworks make it easy for naive users to do things, it’s also easy to do things inefficiently. I anticipate the development of new frameworks that scale more efficiently over time.

For those aspiring to enter the field of research software applications, I believe from the technical side, having a solid foundational knowledge in computing and systems is crucial. On the personal front, innate curiosity along with a degree of passion for exploring new developments in computing are important because you have to be fearless about trying new things and technologies.