There’s a lot of research advice out there, but not much focused specifically on undergrads. So here I’ve tried outlining undergrad-focused tips.
Consider trying other options (e.g. software internship) first. Some types of research will require more advanced knowledge that you probably won’t have yet as, say, a freshman, so try other options earlier. I would especially recommend becoming fast and effective at coding, so that isn’t a bottleneck in your research later.
How do you get research? Just ask. This is something that is far simpler than people think. You literally just ask people. Email professors or grad students whose research you think is interesting and tell them you’d like to get involved. Sending an email takes a max of 5 minutes, so why not just try?
- Be selective in the research you choose. Because people think it’s harder to
find research opportunities than it actually is (#2) they tend to be more afraid
to reject research opportunities than they should be. Here are some criteria for
- Pick research you find interesting. You won’t do well if you don’t find it interesting.
- Pick research that helps you figure out whether you like research. You will not apriori know whether or not you like research. Instead, you can have a loose theory of why you think you might like doing research and seek out experiences that help evaluate your theory. For example, if like me, you think a big component of why you would like research is having autonomy, then don’t do research where you’re always told exactly what to do. This is another reason you should not do research you’re not interested in (3a). If you do research on a topic you know you’re not interested in, then when you find out that (unsurprisingly) you didn’t like the research, you can’t tell if it’s because of general aspects of research or because you found the topic boring.
- Pick a mentor that communicates well and cares about your research growth. You won’t know anything when you start (even if you think you do) and having a mentor you work well with is essential to your success. You also ultimately want to become a good researcher, so pick someone who cares about your research growth and will spend time teaching you about the field and how to do research. Don’t pick e.g. a grad student who just wants you to code something they didn’t want to do themselves.
- Avoid “research” that is mainly, e.g., making material for a class. Sometimes a research opportunity is less about research and more about some other useful output that no grad student or professor wants to do themselves.
Time management is the #1 reason you will not make progress. If you put less than ten hours in per week, it’s unlikely you’ll make any progress in research. As an undergrad, it can be easy to fall into the trap of putting off research because you have a wave of midterms or something, but you need to make time. A generic recommendation is spending ~15 hours a week on research. I probably spent more like 20-30 hours. Also consider spending a summer doing research, you can get a lot more done when research is your only focus.
- Prioritize research over uninteresting and irrelevant classes. For better or worse, the type of undergrad reading this post will probably still feel like they need to do well in a class, even if it’s not interesting or relevant. The most common reason I’ve seen for undergrads being too busy is having a midterm, regardless of whether the class is worth it or not. So, the easiest way you can open up time in your schedule is to just be more seletive and take fewer classes.