In this monthly interview series, we turn the spotlight on members of the academic community and the important research they do — as thought partners, collaborators, and independent contributors.
For October, we nominated Dimitrios Skarlatos, an assistant professor in the computer science department at Carnegie Mellon University (CMU). Before starting his professorship at CMU, Skarlatos decided to spend some time at Facebook as a visiting scientist. He has received several awards for his research, including a Facebook faculty award and the 2021 ACM SIGARCH & IEEE CS TCCA Outstanding Dissertation award for “contributions to redesigning the abstractions and interfaces that connect hardware and operating systems.”
In this Q&A, Skarlatos shares his experience as a visiting scientist at Facebook, his motivation for taking a “prebattical,” the research projects he’s worked on, advice for academics considering a similar path, and more.
Q: Tell us about your academic experience so far. What are your primary research interests?
Dimitrios Skarlatos: I’m an assistant professor at the computer science department at Carnegie Mellon University. My research bridges computer architecture and operating systems focusing on performance, security, and scalability. My current work follows two central themes: (a) uncovering security vulnerabilities and building defenses at the boundary between hardware and OS, and (b) redesigning abstractions and interfaces between the two layers to improve performance and scalability.
Q: What inspired you to spend some time at Facebook before starting your professorship?
DS: The motivation for me was to learn more about large-scale, real-world data center deployments and systems. I believe that this learning experience is invaluable and will help me grow as a researcher. Facebook maintains a flat organization structure that facilitates cross-organizational interdisciplinary research at an unprecedented level. Even during my initial engagement with Facebook, I had the chance to talk with vastly different teams and learn about their research challenges rooted in running massive production systems for almost any technical area that I was interested in, including data centers, kernels, global load balancing, machine learning hardware, serverless computing, and so on. I found this to be unique to Facebook and an incredible opportunity for visiting scientists like me. Access to the best and brightest minds coupled with the ability to solve real-world problems at Facebook facilitates cutting-edge research seamlessly, which I’m particularly excited about.
Q: What research projects did you work on during your time at Facebook? What team(s) did you collaborate with?
DS: My time at Facebook started with working with the RAS team and Andy Newel. RAS is Facebook’s region-wide resource allocator that performs continuous optimizations. RAS introduces a novel capacity abstraction called reservations. Based on this abstraction, it takes a two-level approach to scale resource allocation to all data centers in a region, where a mixed-integer-programming solver continuously optimizes server-to-reservation assignments off the critical path, and a traditional container allocator does real-time placement of containers on servers in a reservation. RAS provides guaranteed capacity while taking into account random and correlated failures, data center maintenance, heterogeneous hardware, and compound workload constraints. You can read more about RAS in our SOSP 2021 paper, “RAS: continuously optimized region-wide datacenter resource allocation.”
Beyond RAS, I further worked on lightweight virtualization solutions based on containers with multiple teams across the kernel and hardware, microservice, and serverless teams at Facebook. It was a very rewarding experience collaborating with dozens of people on a diversity of projects, and a unique learning opportunity.
Q: What’s it like doing research at Facebook?
DS: Great research is always motivated by asking the right questions. What are the problems the next-generation software and hardware systems should solve? How should we maximize our research impact? Facebook is an ideal place to answer these questions and gain valuable experience. The opportunity to do awesome work and write strong technical papers at top-tier conferences is possible. This becomes apparent by looking at the strong research publications from multiple teams and projects across Facebook.
Of course, that doesn’t mean there weren’t challenges. One challenge I had to overcome was to stay a little outside of my research comfort zone in order to grow. I believe that the best approach to overcome these challenges is to connect with people with expertise that spans multiple areas and collaborate on solving problems across the stack.
Facebook fosters collaboration and direct communication across different teams and projects. During my visit, I had the chance to connect with people across many teams and organizations from distributed systems, operating systems, hardware, machine learning, security, and others. It’s very exciting to talk with people working on vastly different projects and products. Such conversations could lead to long-term collaborations or further help connect the dots and form an understanding of the bigger picture.
Q: What advice would you give to university researchers looking to become visiting scientists at Facebook?
DS: I believe that the best approach for becoming a visiting scientist is to network: Attend conferences and reach out and connect with people who have visited or worked at Facebook in an area that’s of interest to you. That’s the best way to get a first impression of the experience and maybe get things started. My experience started with knowing Tianyin Xu, who also spent a year at Facebook as a visiting scientist.
As a visiting scientist, one of the most valuable pieces of advice from my Facebook colleagues Kaushik Veeraraghavan and CQ Tang was to not feel constrained by research areas. My main research is on abstractions and interfaces that connect hardware with operating systems. At Facebook, I had the chance to connect with layers even higher up the stack and work on bridging hardware with distributed systems and build abstractions for hardware and container management at a regional scale.
Also, just go for it. Facebook provides an environment to pursue your research interests with leading experts and to do impactful research. It is a unique learning experience. After joining Facebook, it became clear that the opportunities are endless, so my primary advice to visiting scientists is to overcommit — but controllably. Solving real-world problems at Facebook’s scale takes a lot of time and effort, and by taking on multiple projects, I had more opportunities to work on and explore multiple directions with several teams. That helped me to see the bigger picture and connect all the research pieces together.
Q: What do you think will be the next big challenges in systems research that industry and academia could tackle together?
DS: I believe that computing systems are undergoing a radical shift, propelled by stern security requirements and an unprecedented growth in data and users. This change has proved to be abstraction breaking. Current hardware and operating system abstractions were built at a time when we had minimal security threats, scarce compute and memory resources, and limited numbers of users. These assumptions are not representative of today’s computing landscape. In this new era of computing, it is urgent that we rethink the synergy between the OS and hardware layers from scratch. Collaboration between industry and academia is going to be critical in building tomorrow’s systems that power the world’s data centers.