How to Get Involved in Computing Research as a Undergrad at UC Berkeley
As a first-year PhD student at UC Berkeley and someone who also completed their undergrad here, I’ve found navigating Berkeley’s many research opportunities both exciting and overwhelming. I’m still learning how to approach research, but I’ve gained a bit more perspective on how the research ecosystem at Berkeley works.
The goal of this post is to organize some of the most helpful resources I’ve come across for getting involved in research at Berkeley as an undergrad, answer a few of the questions I wish I had known to ask earlier, and offer some hopefully useful and definitely opinionated advice along the way.
Why Might You Want to Get Involved in Research?
There’s no single correct motivation.
For me, I wanted to learn more about what applied machine learning research actually looks like in a domain I care deeply about.
Here are some other reasons people often cite for getting involved in research:
-
“I want to develop my writing, communication, coding, math, or machine learning skills.”
-
“I deeply care about a problem and want to spend more time thinking about it with experts.”
-
“I’m curious what research actually looks like in practice.”
-
“I want to learn from and collaborate with people who inspire me.”
-
“I want to understand what’s happening in this field and where it’s heading.”
-
“I want to contribute to something that creates real-world impact or advances knowledge.”
Knowing your “why” is one of the most important parts of getting started in research. It helps you direct your energy with intention and decide how to prioritize your time. If your goal is to build general field knowledge, spending time reading papers might be most valuable. If your goal is to strengthen your coding skills, then dedicating time to implementing and experimenting may make more sense. And if you’re aiming for graduate school or a sustained research career, your focus will likely expand to producing tangible results and building relationships with mentors who can support and advocate for your growth. If you take away only one thing from this post, let it be the following two tips about your why:
-
Make sure your why is clear to the people you plan to work with. This helps them shape the experience around your goals and align expectations about what collaboration will look like.
-
Your why will change, and it’s worth periodically revisiting what you’re trying to get out of the experience.
Do I Need Prior Experience?
Some professors or labs may ask that you take certain prerequisite classes or meet specific criteria, but don’t let a lack of experience stop you from reaching out. In other words, don’t filter yourself out of consideration. A “no” often comes with helpful feedback or suggestions for other opportunities to explore. In my experience, dedicated time, curiosity, and genuine commitment matter far more than prior experience when it comes to finding success in research.
How Do I Find Research Opportunities?
Don't get too bogged down with where you're applying. Focus on your why and find research or people that align with it. One lab I worked with had students who joined through URAP, Data Science Discovery, DARE, GSIs, or cold emailing. However, once in the lab, their research experiences were shaped by the specific projects and mentors they worked with, not how they got there.
Structured Program Applications
DARE – A program focused on helping students gain hands-on research experience in EECS where you can list up to five faculty you are interested in working with. You can resubmit an updated application every semester.
Data Science Discovery Program – Matches you with small projects from faculty, labs, or even external industry partners.
URAP – The Undergraduate Research Apprentice Program lets you apply to ongoing projects across departments. It’s broad (not just ML), but you can look for data science, AI, or CS topics.
Cold Email
Cold emailing can feel intimidating, but it’s often the most direct way to find research opportunities. While professors may have lower response rates, it’s still worth reaching out. You can also try contacting graduate students listed on lab websites—they’re often more accessible and can connect you to ongoing projects. Keep your email concise, specific, and clear about your interests and availability.
-
Subject line: Be clear and direct. Something like "Undergrad interested in [specific project/paper]" works well.
-
Introduction: Briefly say who you are—year, major, relevant coursework, or experience.
-
Why them: Reference a specific paper or project of theirs that excites you. Show you've done your homework.
-
Your ask: Be specific but flexible. "I'd love to join a group meeting!" "Do you have office hours where I could stop by?" or "Would you be open to a brief meeting to learn more about your work?"
-
Attach your CV/resume (optional): Keep it to one page with relevant coursework, projects, and skills.
Don't be discouraged by non-responses. This is much like any career/opportunity search. Finding the right opportunity takes a little luck and persistence. Follow up once after a week or two if you don't hear back, then move on.
An Office Hours Strategy
Browse faculty or grad student pages across departments. CS/Data research appears almost everywhere. When you find someone whose work excites you, read a paper or two before reaching out.
Reading papers is hard for everyone. Focus on understanding the main idea and figures, then identify open questions or limitations. Come to office hours with thoughtful points about future directions, and don't hesitate to share what excites you about the work (your why matters here too). Researchers love discussing where their work is headed, and these conversations help you gauge whether you'd work well together.
Start small: "Could I sit in on a group meeting?" rather than "Do you have a project I can do?" This shows genuine interest before making commitments and allows them time to process where they may find a good fit. That said, if your goal is general advice on getting involved in research or just learning more, office hours are perfectly suited for that too - just be clear about what you're looking for. Showing up unprepared when seeking a research position can signal you're not ready to invest real time.
From Classes to Research Seminars
Some courses (especially Special Topics) include research-style group projects, which are great ways to get involved in more structured/guided research. Search around to see which ones may be open to undergrad enrollment, as many do. Attending talks can also be a great way to learn about ongoing research and meet students involved in those projects. For example, the EECS Colloquium offers engaging lectures from researchers across academia and industry, and it is a good opportunity to both learn and connect with others in the community.
What’s Next?
Once you’ve landed a research position, remember it’s an ongoing exploration of what you want to get out of it. Ask questions, take initiative, and take ownership of your learning. Research can be messy, surprising, and full of unexpected insights. Lean into it.
Wishing you the best of luck in your research journey, and feel free to reach out with tips, resources, or questions.
