Prospective Students

Prospective Students

Joining my research group at UMD

I am recruiting PhD students to join my research group in the Department of Computer Science at the University of Maryland, College Park, where I will start as an Assistant Professor in 2027.

If you are interested in working with me, please apply through the UMD Computer Science PhD admissions process and mention me, Loqman Salamatian, in your application. This is important as it makes it much easier for me to find your application.

You are also very welcome to email me. You do not need to write an elaborate email: a few paragraphs about your background, what kinds of research problems interest you, and why you think we might be a good fit are plenty. The main purpose is just to put your application on my radar.

What I work on

Broadly, I am interested in understanding aspects of the Internet that are hard to observe directly.

The Internet is an enormous distributed system, but we actually have surprisingly limited visibility into how it works. We might want to know why users in a particular city suddenly experience poor performance, how traffic reaches a service, what infrastructure a network depends on, or how a routing decision affects people in different parts of the world. Usually, there is no dataset that simply gives us the answer.

A lot of my research starts with a question that seems impossible to answer with the data we have. We then have to figure out what can be observed and how far we can push those observations. Sometimes that means building a new measurement system. Sometimes it means taking a huge operational dataset collected for a completely different purpose and realizing that it contains the signal we need. Sometimes it means developing an inference technique that lets us recover something we cannot measure directly.

Because of this, my work tends to mix networking, systems, statistics, optimization, and occasionally ideas from other areas. I care much more about finding the right tool for a problem than about staying within the boundaries of a particular subfield.

There are several directions I am excited about right now: routing and topology inference, performance diagnosis, infrastructure planning, and understanding the broader consequences of how Internet infrastructure is built and operated. I am also always interested in exploring new directions with students. I do not expect the projects my group works on five years from now to all be things I could list today.

One thing that ties much of this together is inference from incomplete evidence. If our measurements only show us part of what happened, what can we still conclude? What assumptions are necessary? How can we test whether those assumptions actually hold? And how do we distinguish something the data really establishes from a story that merely sounds plausible?

Those are the kinds of questions I enjoy thinking about.

Who might enjoy working with me?

You definitely do not need to arrive knowing everything about networking. In fact, I would be surprised if you did.

A background in systems, networking, statistics, optimization, or data analysis can all be useful starting points. What matters more to me is whether you enjoy digging into messy problems where the answer is not obvious and there may not even be an established methodology for getting to it.

You will probably enjoy working with me if, when you see an interesting result, your instinct is to ask: How do we actually know this? Could something else explain it? What would we need to measure to be more certain? I like students who are willing to keep poking at an explanation rather than accepting it because I said it or because it appears in a paper.

I also tend to be attracted to problems that sit slightly outside the clean boundaries of an established research area. Sometimes a networking problem turns into a statistics problem. Sometimes the interesting question ends up being about economics, policy, or how infrastructure choices affect people. I am very comfortable learning new areas alongside students when that is what the problem requires.

That style of research is not for everyone. If you want every project to begin with a perfectly specified question and a standard evaluation methodology, my group may sometimes be frustrating. I am often most interested in problems where part of the research is figuring out what the right question is in the first place.

I am also pretty comfortable with projects changing direction. A failed experiment may tell us that the original idea was wrong. A strange observation may end up being more interesting than what we initially set out to study. I do not see that as wasted work; often, that is exactly how good projects develop.

Personality fit matters too. I tend to think through research by talking about ideas, arguing about assumptions, and looking at confusing results together. I want students to feel comfortable disagreeing with me and bringing up ideas before they are fully polished.

At the same time, I care a lot about follow-through. Research can start from a vague idea, but eventually we need to understand the details well enough that we can defend the result.

You do not need to know exactly what you want your PhD to be about before you arrive. But you should probably be excited by the general idea of trying to understand parts of the Internet that are difficult to observe directly. If uncertainty feels more interesting than frustrating, we will probably have a lot to talk about.

How I think about research

My experience is that research rarely follows the clean story we eventually write in the paper.

Projects often start with an observation, a weird result, or a broad question. We try something. It does not quite work. That teaches us that our original question was wrong, or that we were missing an important piece of the problem. We change the experiment, collect different data, build another system, or sometimes abandon the approach entirely.

I think that process is part of the process rather than a failure.

I care a lot about technical depth, but I care just as much about understanding why we should believe a result. If there are three plausible explanations for something we observe, I would rather spend time figuring out how to distinguish between them than rush toward the most convenient one. Negative results can be extremely useful when they tell us that an assumption we were making does not survive contact with the real Internet.

This also means that I care quite a bit about writing. I believe that writing is often how we discover that we do not understand our own argument as well as we thought we did. If we cannot clearly explain what we learned, why we believe it, and why someone else should care, there is usually still some research work left to do.

I expect to work closely with students on all of this: coming up with questions, designing measurements, debugging systems, staring at plots, figuring out what an experiment actually tells us, and writing the paper.

Advising

My goal is not for students to spend five years implementing research ideas that I hand them.

Especially at the beginning, I expect to be pretty involved. Starting a PhD involves learning a lot of things that are difficult to learn from a class: how to recognize an interesting problem, how to tell whether an idea is actually new, how much evidence is enough, when to keep pushing on an approach, and when to throw it away.

Over time, I want that balance to shift.

By the end of the PhD, I hope my students are much better than I am at identifying the problems they want to work on. They should have their own taste in research and eventually a research agenda that is recognizably theirs rather than mine.

That does not mean working alone. I enjoy doing research collaboratively and expect to stay technically involved in projects. But there is a difference between collaborating with your advisor and waiting for your advisor to tell you what to do next. The quality I probably value most is curiosity. I do not expect experiments to always work or ideas to always be good. I do expect us to be honest with ourselves when they don’t.

I also want students to have a life outside of research. There is no expectation that you work on weekends, and I do not think that consistently working long hours is a good way to do a PhD.

Research does have deadlines, and there will probably be occasional periods when things get more intense. In the week or two before a paper deadline, for example, I may be more demanding about getting experiments finished or turning around drafts quickly. I expect those periods to be the exception rather than the norm for the group. I also think they should be followed by some time to recover rather than immediately moving on to the next deadline.

More generally, I do not want to measure progress by hours spent working. Different students work differently, and different stages of a PhD require different things. What I care about is that we agree on what we are trying to accomplish and that we can rely on each other to make progress toward it.

Ultimately, I see my role as helping students accomplish what they want from their PhD. For some students, that might mean building the research record needed for a faculty career. For others, the goals may be different. Those goals should shape how we choose projects, how ambitious we are about particular opportunities, and sometimes how hard we decide to push around a deadline. I will certainly encourage students to aim high, but I do not think there is a single definition of a successful PhD that everyone in the group needs to optimize for.

Interested?

If this sounds like the kind of research environment you would enjoy, please apply to the UMD Computer Science PhD program and list me as a potential advisor.

And feel free to send me an email. Tell me a little about what you have worked on, what kinds of questions you find interesting, and why something on this page resonated with you. You do not need to have a perfectly formed research agenda—that is part of what a PhD is for.

I am looking forward to building the group.