Undergraduate Research in Computer Science: My Experience and Advice
Preface
Before I say anything else, I want to be clear: I’m not a research expert. I’m a student who went through a handful of research experiences, learned a lot, made some mistakes, and collected stories from friends who did the same. Everything in this post reflects my perspective—not a universal truth, not an academic rulebook.
If you ever want to talk more about this, feel free to email me at dal@suchicodes.com.
My Background (For Context)
Here’s what my path looked like, not because you need these things, but because it gives context for where my advice is coming from:
- Completed an Honours in Computer Science
- Participated in the Undergraduate Summer Research Award (USRA) program
- Co-author of:
- KeBaB: k-mer based breaking for finding long MEMs (published in SPIRE), thanks to the Compact Data Structures course with Prof. Travis Gagie
- Utilizing Machine Learning to Detect Tor Traffic: A Realistic Dataset and A Comprehensive Analysis (accepted at ICNC 2026), thanks to Prof. Qiang Ye and Rafiqul Sadik
- Currently working toward a paper from my honours research on simulation and evaluation for ML-based intrusion detection systems
- Received the University Medal in Computer Science (Class of 2025)
- Strongly considered doing a PhD at one point.
Again, none of this is a checklist. Research is not a linear path; it’s more like stumbling into things you’re curious about and then slowly figuring out what you’re doing.
How to Get Into Research With Faculty Members
The single biggest factor in getting started is building relationships with professors. Most opportunities start with a conversation: an email, a quick chat after class, or a visit during office hours.
When you reach out, explain:
- why you’re interested in their area
- what you’ve done so far (even if it’s small)
- why you care
- and just express your passion.
You don’t need to be an expert. You don’t need a perfect resume. You just need genuine interest and the willingness to learn. Most professors want students who are motivated, curious, and communicative.
Every professor looks for slightly different things. Some want foundational knowledge; others just want enthusiasm. You can always ask directly:
“If I want to work with you, what should I learn or do ahead of time?”
Questions like these open door and most professors will very clearly tell you exactly what they expect from their students.
Should I Do Research?
Here’s a blunt truth:
Don’t do research unless you genuinely want to explore research.
If you’re only doing it to improve employability, there are easier and more impactful ways to achieve this. Internships, projects, hackathons, clubs, co-ops, online courses.
Research is:
- slow,
- often confusing,
- full of reading and rereading papers,
- discussions where you feel lost,
- and experiments that fail.
If you genuinely enjoy digging into hard problems, reading until ideas finally click, and slowly building your understanding piece by piece, you’ll probably love research. It rewards curiosity and patience more than raw intelligence. And because you’ll spend a lot of time studying and re-reading things, it really helps if you actually enjoy that kind of deep learning.
That said, not every research experience looks the same. There are roles where you won’t be buried under papers – you’ll be running experiments, coding prototypes, collecting results, or helping with evaluations. These positions lean more toward hands-on problem-solving than theoretical reading. If you prefer implementing and testing over heavy literature work, those kinds of research projects might be a great fit for you.
Finding Professors You Want To Work With
Finding a professor is part detective work, part intuition. What I did:
- Browse the entire CS faculty list. Look at their research areas.
- Check what courses they teach. You often learn the most about a professor through their teaching.
- Ask other students for opinions or stories. Real experiences about working styles and expectations.
Some professors I interacted with or think are great professors to work with and have diverse research areas:
- Dr. Qiang Ye – network security using machine learning
- Dr. Norbert Zeh – algorithms, programming languages
- Dr. Sageev Oore – foundational machine learning, music ML, creative ML
- Dr. Hassan Sajjad – NLP, deep learning, LLMs
- Dr. Meng He – succinct data structures
Funded vs. Unfunded Research (And Whether You Should Care)
Undergraduate funding programs like USRA are amazing but they’re competitive, and getting one shouldn’t be your only path into research.
If you truly want research experience:
- Apply for funding (you might get lucky)
- But you can start with volunteering if you want the experience.
If your goal is simply to earn money, jobs usually pay better than research. Research pays in learning, mentorship, and intellectual growth it’s not the best approach for monetary returns.
How Research Helped Me (Personally and Professionally)
Even though I emphasize doing research only if you enjoy it, there are significant benefits:
- You learn to read and understand extremely hard things: Research forces your brain to stretch in ways normal coursework usually doesn’t.
- You gain access to brilliant people: You work with professors, PhD students, and researchers who are literal experts in their domain.
- You build lasting relationships: Networking isn’t just LinkedIn connections – it’s mentors who know you well and can support your growth.
- You develop patience and perseverance: Research is slow, ambiguous, and uncertain. You get used to solving problems with unclear boundaries.
How Research Translates Into Jobs and Real-World Skills
Companies value the meta-skills you get from research, not necessarily the research topic itself.
You’ll learn to:
- Learn efficiently
- Write technically and communicate clearly
- Understand a domain deeply
- Tackle unfamiliar problems from scratch
- Collaborate with highly technical people
All of these skills carry over into internships, industry jobs, and future academic work.
Tips for Working With Professors
Every professor is unique. The best thing you can do is ask:
“What’s the best way to communicate with you and stay organized?”
Some things to expect:
- Some reply within a day; others take a week.
- Some prefer email; others use Teams.
- Some are extremely structured; others give you lots of independence.
- Some will guide you closely; others expect you to self-teach aggressively.
But something you should always remember: Their time is extremely valuable, respect it.
Also remember:
- Some professors accept students with little background.
- Others expect you to demonstrate initiative and pre-study.
Your job is to be honest about your experience level and willing to put in the work.
The Reality of Research Problems (Spoiler: They’re Often Vague)
You might receive a problem like:
- “We have a privacy issue in ML models in X context – can you explore solutions?”
- “This algorithm seems inefficient, can you prove a lower bound?”
- You can bring in your own idea you want to research.
Research isn’t a homework assignment with clear instructions. You often have to define the problem before you can solve it. That ambiguity is normal.
Reading Research Papers (Yes, It’s Hard)
The first paper I ever read took me five full passes. I paused constantly to Google terms, check definitions, and re-read sections I didn’t understand.
Here’s what you should remember:
- It’s totally normal not to understand a paper the first time.
- Understanding comes from repetition, searching, asking questions, and slowly piecing things together.
- People will respect you far more if you show you’ve done your homework before asking for help.
Example of a bad question:
“What is reinforcement learning?”
Better question:
“I understand that RL learns from interactions with an environment using rewards, but how do you apply backprop when the reward only comes at the end?”
One question shows curiosity and effort; the other shows you didn’t try.
Final Thoughts
Research is a lot of fun if you like that kind of thing and I’ve build invaluable relationships with professors who I talk to on a regular basis.
Here’s a older but different perspective I had a few years ago: [Undergraduate Research][https://old.suchicodes.com/resources/blog/70ab48c0].
If you’re thinking about getting started, or you want feedback on your approach, feel free to reach out at dal@suchicodes.com. I’m always happy to chat.