Stephen Butler Behind the Screens: The Story of a Tech Services Developer

Author: Mag Shou
Mag is a student employee with Technology Services and is a senior at Illinois majoring in Communications.

Stephen Butler smiling while hiking in the mountains
Stephen Butler hiking in the Cascade Pass Trail in Mt. Baker, Washington National Forest

Ever wondered what happens behind the scenes once an app is created? While developers are praised for crafting digital solutions, the intricate work of deploying, supporting, and ensuring reliable operations often goes unnoticed. Meet Stephen Butler, Lead Infrastructure and Software Developer at Tech Services. He began this role in 2020, building on a foundation as a student employee since 2000. In the dynamic environment of a Tier 1 research institution, Stephen’s role involves more than just writing apps; it’s about automating cloud computing services in Amazon Web Services and Microsoft Azure.

What does a Software Developer do at Tech Services?

Most people may understand what software, or an “app” is, and that someone had to make that app (the “developer”). The hidden part that many don’t know is that there is a lot of work to deploy that app, support it on servers, and ensure it runs reliably. We used to deploy and support apps with a lot of manual processes, but the modern way is to automate those steps to make the job quick, reliable, and consistent.

I’m a developer who writes automation software to deploy and support apps. I also sometimes write apps myself, but a large part of my role is doing “infrastructure as code.” Almost all my work now is automating cloud computing services, primarily Amazon Web Services and Microsoft Azure.

How has your role as a Software Developer benefitted campus?

Automating infrastructure and software deployments in the cloud allows us to build new services quickly, and trust that those services will scale when needed. A few key projects I’ve worked on:

  • Publish.Illinois.Edu (Campus WordPress) – This has been a great project to experiment with and it was one of Tech Services first fully cloud-hosted services. Hosting it in AWS with automation has allowed us to provide a high level of availability.
  • Illinois App backend services – I facilitated rapid development of the Illinois App backend in a 6-week timeline, ensuring scalability. My code, still in use, awaits modernization. A robust hosting foundation is vital for success.
  • COVID Test Results Pipeline – I helped automate COVID-19 test result processing, reducing notification time and providing rich data for analysis. Our pipeline handled nearly 3 million results.

What’s the best thing about your current role?

I love the ability to work on a large variety of projects and learn new technologies. Being in a university environment–at a Tier 1 research institution–means there will always be new and unique challenges to solve.

What does a typical day look like for you?

I always start my workday eating a bit of breakfast while I read through emails and Teams messages. After that I’ll spend my time working on projects, with different days getting different focuses. You’ll always find I have about a dozen terminal windows open, VSCode (vim extension), a dozen browser tabs with AWS services/python/terraform documentation, and email and Teams. Much of what I do involves Linux, something I’ve been using since around 1996; my primary workstations are macOS though.

I work from home in Chicago. I put my desk in front of my windows so that I can see (a tiny sliver of) Lake Michigan to my right and watch the Red Line train go by on my left.

What do you feel has been one of your biggest accomplishments in this role?

Most recently, I’d say being an evangelist and enabler of cloud services. I was a cloud skeptic when we first got AWS access, but I quickly converted when I saw what we could achieve with it. Of the major projects I highlighted before, the common theme is that those teams were able to use cloud skills to achieve the goal quickly.

What is one insight you’ve learned about technology?

Keep updating, keep learning, and don’t regret moving on if you still got a valuable lesson from it. As an illustration, I invested considerable time learning Ruby (a web app framework) and working on projects using Ruby on Rails. Despite my continued fondness for the language, it has fallen out of favor on the internet, with many transitioning to different frameworks. Nevertheless, Ruby on Rails played a pivotal role in shaping Web 2.0, and the design patterns it introduced remain influential today. My exploration of Ruby also marked my initial foray into mastering coroutines and lambdas. Although I haven’t actively engaged with it for ten years, this experience effectively equipped me to leverage Python/JavaScript generators, lambdas, and other coding idioms.

What TV shows do you like to watch in your free time?

There are some YouTube channels that I always enjoy new videos from: 

  • UsefulCharts – Lots of history told through family trees, relationships, and timelines.
  • Chubbyemu – Weird and puzzling medical case studies.
  • HowToCookThat – A food scientist who does baking, explains the chemistry behind it, and does some experiments. But my favorites are usually the debunking videos of TikTok trends and cake rescues.
  • JayForeman – Specifically, the Map Men series, which is a comedic take on some map-related oddities.
  • Geodesaurus (TikTok) – A geologist who does “Spooky Lake Month” each year during October, 31 days of haunted hydrology.

Who is one person in all of history you’d want to share a meal with, and why?

I think Claude Shannon, just for the honor of it. How he developed the basic concepts in Information Theory profoundly changed how we view the universe and live our lives. If I had to name one person most responsible for modern technology, I’d choose him.

“Behind the Screens” is a series of stories highlighting a different member of Technology Services each month so that you can get to know who we are and what we do for our university.