Meet Your Software Developer: Evan Carlin

Meet the RadiaSoft team in this ongoing Q&A series, where we introduce you to our stellar employees. Learn about their work, their background, and some of the things that make them who they are. Today, Evan Carlin, talks about software development at Radiasoft, some interesting projects he’s worked on, and a few of software problems that he’s solved.

What do you do at RadiaSoft?

I solve problems by writing code. Most of my time is spent working on the Sirepo framework. I have worked on projects like adding the ability to run simulations on the Cori supercomputer at NERSC and allowing users to dynamically compile the FLASH code through the Sirepo interface. I also help with some other software development such as deploying a server running NVIDIA IndeX and setting up MongoDB and sirepo-bluesky on our Sirepo Jupyter server.

Outside of programming, I’m involved in the Social Justice Committee where we try to make RadiaSoft and the larger physics community more inclusive.

What’s your educational and career background?

I went to college in Tacoma Washington at the University of Puget Sound. I wanted to study economics, but the first 15 minutes of my introductory economics class taught me that I did not enjoy economics. That semester I was also in a Computer Science 101 course and I was hooked from the first assignment: modifying a Java program to move a turtle around the screen. After college, I worked at a consulting company doing a variety of programming projects. I then worked at Google, trying to improve customer support experience and internal tools.

What’s the biggest misconception about your field and why?

That you need to be good at math. Computer science departments are sometimes found inside of math departments and many people think you need to be good at math to excel at programming. Both fields share problem-solving and abstract-thinking skills, but you do not need to know much about math for most programming jobs. I took one math class in college, and I only took it so I could take a calculus-based physics class. If you like solving puzzles and don’t mind staring at a screen for hours on end, then you may be a good programmer.

Where did you grow up?

I grew up in RadiaSoft’s hometown, Boulder, Colorado. I spent my entire childhood there except for when I lived in Padova, Italy when I was 12.

Before joining RadiaSoft, what’s the strangest or most interesting job you held?

In college I worked in a “keychain factory.” Really, it was the basement of a house near mine with a long wall of tables stacked with boxes of keyrings and car-logo medallions. It was a great college job because I could just show up and work a few hours whenever I had time. The downside was that making keychains is about as exciting as it sounds, and it really hurts your fingernails after a while.

Who is your favorite scientist from history and why?

They aren’t technically scientists, but Adam Savage and Jamie Hyneman. They’re the cohosts of the TV show MythBusters, and were my earliest science influencers. A lot of what they did on their show used the scientific method and taught me how to break a problem down to understand it. I would love to someday own a shop like theirs and spend my time tinkering.

Tell us about one of your current projects.

I am working on a project called NDVIZ. The goal is to use 3D-visualization software to interact with very large datasets. I’m getting our software deployed so our collaborators at Oak Ridge National Laboratory can try it out.

I spent more hours than I care to admit trying to create a working Docker image [a piece of software that acts like a template for building new applications] that could run the service and properly visualize the data using NVIDIA IndeX. I had the container running and IndeX was reachable, but the data that was visualized was completely black instead of lit up. I tried twiddling all sorts of parameters, using different GPU drivers, manually building different software, and even reaching out to folks at NVIDIA. Ultimately the answer, as it usually is, was in the code. There were some example Dockerfiles that showed how to properly build an image and once I adapted them everything worked. I learned a good lesson, I should’ve taken some time to explore the code I was given before jumping in and solving the problem how I thought it should be solved.

What is a talent, secret superpower, or fun fact about yourself that people wouldn’t guess?

This might be a talent, a superpower, or just completely useless depending on who you ask, but I can get anyone who is willing to try to enjoy country music. People have been scarred by the pop-country on the radio. Once you dive in and explore country music, you’ll realize that it is a vast genre. Recently I’ve been listening to a lot of James Hand. His voice and style of play are not the most accessible but his lyrics are haunting.

What’s your favorite Slack emoji and why?

My favorite is the man dancing. I like to use it instead of thumbs up when I’m happy or in agreement with something.

What’s something you wish people understood better about RadiaSoft?

I wish people knew that even though the main focus of RadiaSoft’s work is particle physics, we are solving many difficult software problems, too. For example, we have written a distributed job-management system that uses asynchronous Python. We learned many interesting bits about Python through that project that I would like to someday share with the larger software community.

Want to learn more about the RadiaSoft team? Visit our team page for full bios.

Sign up for our mailing list to get more RadiaSoft news and content.