Academics come to work at Facebook at various stages of their career. Some join right after graduating; others join after long and established careers as professors. Somewhere in between is Hyojeong Kim, who joined Facebook after spending some time in industry.
Kim is a Software Engineering Manager within network routing at Facebook. She owns routing protocols (BGP and Open/R) and related software services running in Facebook’s production network, which consists of data center, backbone, and edge networks. Her team focuses on tackling routing challenges to support next-generation production networks while ensuring production reliability.
We reached out to Kim to learn more about her academic background, her journey at Facebook so far, and her recent projects on the Networking team. She also offers advice for PhDs looking to follow a similar path.
Q: Tell us about your experience in academia before joining Facebook.
Hyojeong Kim: During my undergraduate career in South Korea in the late ’90s, I saw how the internet connected people around the world. This inspired me to want to study the core technologies that enable the internet and contribute to it, so I came to the United States and joined the PhD program in computer science at Purdue University.
During my time at Purdue, I had the opportunity to learn about Border Gateway Protocol (BGP)-based internet routing and its problems. I built an internet-scale BGP simulation test bed over a distributed Linux cluster. I was very excited to learn so many new things. As I tried to experiment with the latest measurement-based internet topologies, I encountered many distributed systems challenges due to the scale of the input, and I spent lots of time and effort creating software tools to support the distributed simulation.
These were interesting problems by themselves, but they were also very challenging. As a graduate student, I didn’t have the context for how my work could be applied to real-world problems. However, my learnings from PhD study turned out to be very useful for solving real-world problems throughout my career in various ways. It helped me to extend BGP to support fast response to internet distributed denial-of-service attacks, to build a system to improve how Facebook serves user traffic, and to build and run Facebook data center network routing software stack. In retrospect, all my learnings and experiences during my PhD study were very valuable. I just did not have perspective at that time.
Q: What brought you to Facebook?
HK: I started my career at Cisco, working on BGP routing software running on core routers used by internet service providers. I felt proud contributing to the foundation of the internet. After gaining some industry experience, when I was thinking about the next chapter of my career, I had a chance to attend the Grace Hopper Conference. I was so inspired, meeting so many women in various stages of their career and getting advice from them on helping women have successful careers in tech. I also met engineers from Facebook and heard about their experiences. It led me to join Facebook eventually.
Q: What has your journey with Facebook been like so far?
HK: I first joined Facebook as a software engineer. Coming to Facebook made it possible to pursue big research questions and be creative, which I was very excited about. I learned how Facebook’s production network is connected to the internet, and I had an exciting opportunity to build and run a software-defined networking controller called Edge Fabric. This was a research collaboration with a PhD intern and his advisers. We enhanced the system significantly and shared our operational experience with the academic community at SIGCOMM 2017.
On the Facebook Networking team, we study our own production network, identify problems, build solutions, deploy them to production, and keep iterating on solutions, receiving signals from operations. I really have enjoyed the opportunity of owning the full problem-solving cycle. At Facebook, engineers are empowered to innovate and to be bold and creative in their solutions. This encouraged me to take ownership of big challenges.
Within Facebook, changing teams or trying out different job roles is common and very much encouraged. This keeps the work exciting and challenging, and it ensures that we’re always learning new things. As a software engineer, I had the opportunity to lead a team of engineers for a couple of major initiatives. Then, I became interested in learning how to grow other engineers and how to support a team to solve multiple challenging projects. Eventually, I became a software engineering manager, and now I lead a team of software engineers within network routing.
Q: What are some of your most recent projects?
HK: I changed my focus to data center network routing a few years ago. This was the time when the team was scaling Facebook’s in-house network switch and software stack, FBOSS. The goal was to transition the data center network to FBOSS. During this time, I learned and improved the BGP-based data center routing design. I led building a scalable, performant BGP software and its testing/deployment pipeline. These allow us to treat BGP like any other software component, enabling fast incremental updates.
Using what I’ve learned over the years, I co-authored the NSDI 2021 paper “Running BGP in data centers at scale.” BGP was designed for the internet, but big web-scale companies often use it in data centers. This paper describes how we build, test, deploy, and use BGP in Facebook’s data centers, which has never been thoroughly discussed in academia before. This paper was a collaboration with our past PhD interns, Anubhavnidhi Abhashkumar and Kausik Subramanian from the University of Wisconsin, and their adviser, Aditya Akella. They helped capture our operational experience from an academic point of view.
Q: What advice would you give to current PhD candidates looking to transition to industry?
HK: If you’re a PhD candidate who’s having a similar experience as I did, where you feel unsure about how your current work would make an impact on real-world problems, I recommend looking for internship opportunities in the industry you’re interested in. When you have only academic experience, it’s difficult to know how research is applied in industry without actually having industry experience. Internships can help you contextualize your research and give you a new perspective on it, which will help you think about it in relation to solving practical problems. Additionally, you’ll make connections that could potentially result in future research collaborations. Internships also allow you to experience and explore different company cultures, which may help you find the right place to work after graduation.
Also, I recommend that PhDs attend as many networking events as possible. Attending Grace Hopper was a pivotal moment in my career, and it opened my eyes to all the places I could work.
Q: Where can people learn more about what the Facebook Networking team is up to?
HK: Check out the Networking team page for all our most recent publications, news, programs, and job openings. We are also launching an RFP at NSDI ’21. Sign up here for email notifications about new RFPs.