Leo Rudberg will make you smile. He started out at UW-Madison as a math major and wasn’t sure what to make of the late Susan Horwitz’s recommendation that everyone should take CS302. He says, “I thought only geeks studied CS. (I understand the irony of saying this as a Math major). However, I was intrigued by CS since I also knew that was how video games were made (again, I somehow didn’t consider myself a geek . . . ).” For Rudberg, being at UW-Madison was “four years of ‘in the right place at the right time’.” Read more about Leo below – he has accepted his geekdom!
What are you currently doing professionally? I’m working at Google in NYC as a software engineer. I work on a team named, slightly ironically, iOS at Google. Our mission is to simplify and accelerate the Apple launch process across all of Alphabet, Google’s parent company. In particular, I work on several different tools and infrastructure-y systems to help Alphabet engineers and their colleagues ship great iOS, Mac, and Apple TV apps for our users. I’m involved in the design and implementation of many parts of our codebase, which is exciting. Previously at Google, I’ve worked on Maps, Golang tooling, internal build/CICD infrastructure, and Cloud.
What do you like about it? My current work is extremely niche, something that I could only work on at a place like Google. Across all of Alphabet, there are about 200 or so apps, all at various stages of their product lifecycle (other companies may only have around ten or so). My team needs to be strong with both Google internal infrastructure and distributed systems, as well as Apple APIs and utilities to be able to scale to handle the policy compliance, maintenance, and logistics for all of these apps. Working at Google can be incredibly fun and rewarding, especially when working with the right people. Right now, I work with really smart and fun people, so I’m very grateful for that. My team is also very cognizant about work-life balance AND separation. The soft serve machines are pretty nice too! My big bragging rights include meeting, working, and lunching with some of the “CS legends” like Peter Weinberger, Brian Kernighan, and Vint Cerf.
What motivated you to study computer science? I feel incredibly lucky to have chosen to study CS! When I was a freshman, I was initially majoring in just Mathematics. Around SOAR or maybe a few months before, I got a blast email from the late Prof Susan Horwitz going out to all STEM majors recommending taking CS 302 (the intro CS/Java class at the time). I was initially taken aback since I thought only geeks studied CS. (I understand the irony of saying this as a Math major). However, I was intrigued by CS since I also knew that was how video games were made (again, I somehow didn’t consider myself a geek . . .). So I signed up for 302. It was initially rough – I remember having no idea what this “int” thing was that I had to write all the time! The poltergeist of “surprise” NullPointerExceptions in my class projects kept me up at night! However, the more I realized that CS can be thought of as defining your own little world and solving puzzles in it, the more I got hooked! I also realized that so much of our modern society is underlaid by computers. The deeper I got, the more I knew it was the thing for me! (I accept that I am a big geek now; I have degrees in both CS and Math.)
Why did you decide to attend UW-Madison? People from both sides of my family went to Madison. I went to small schools for middle and high school so I was ready for a “big pond” experience. Also, I grew up in a small town in Illinois and was actually closer to Madison than Urbana. Plus, why be surrounded by corn fields when you could be surrounded by lakes (and corn fields)?
What was one of the most valuable experiences you had in CS at UW-Madison (a specific class, a project you worked on, etc.) and why? Hands-down being a member of the Undergraduate Projects Lab. I still keep in touch with many people from the UPL, who were some of my best friends and classmates during my UW career. We pride ourselves on being the “hackers” of the CS Department (I wasn’t aware of the group doing anything too illegal when I was there . . .). I think that mindset pushed us to pursue our programming/CS passions, no matter how weird. By being in the UPL, I felt like I could dive into whatever project or hackathon came my way. (Worst case, it was just another stale GitHub repo.) I don’t think I would be where I am today without the skills and connections I made in the UPL.
What was your favorite thing about UW-Madison? It’s hard to capture, but I can best describe it as four years of “in the right place at the right time”. I would do it all over again, nanosecond-for-nanosecond, if I could. The people (fellow students, teachers, etc.) were and continue to be great.
What are one or two things you did at UW outside of your classes (clubs, study abroad, employment, conferences, internships, etc)? How did these benefit your education, your current career, and/or your life? Besides various projects through the UPL, I was very involved in hackathons. (I even organized and directed the first Major League Hackathon at UW-Madison!). Hackathons are great for two reasons: learning something and meeting people. I did not invent any world-saving technology at any of the hackathons I attended, but I did meet a lot of awesome people (some of whom I still keep in touch with). I feel like I wouldn’t be where I am today without several of the connections I made at hackathons, startups, conferences, or meetups that I participated in as a student at UW-Madison. The leftover Ian’s pizza from local meetups was a nice side effect, too.
Do you have any advice for current CS students? Work on side projects, but aim for breadth or elasticity of knowledge rather than depth or specificity. Technology changes quickly, and I think one of the most important skills to have is a “growth mindset”, especially at a place like Google. You should learn how to “be dangerous” in a few programming languages, but the real value comes from the “high-level view” of computation and what is possible with programming at the code level and the system level. In programming in general, if you can see the forest for the (abstract syntax) trees, that will make you a much stronger developer rather than mastering a single skill or framework. For my current gig, I’m very thankful for my OS and Compilers classes; I kick myself for taking neither Databases nor Networking classes, two “bread and butter” topics at Google. From what I can tell, UW Madison skews more theoretical and abstract than the curriculum at other universities (we are a part of L & S, after all), so filling out your skillset with some fun (even small, throwaway) projects will really help you in the long run. (The UPL is great for that.)
What do you like to do for fun? I play bass in an indie/emo rock band and enjoy playing music in general. I got into biking and tennis recently, though I will definitely be sticking to my SWE job. I recommend pilates for those of us who sit at desks for the majority of the day.