CS Industry: Game Plan - acmutd/help-guide GitHub Wiki

author: mustafa sadriwala, edits:

Game Plan

Figuring out a Goal

Where/What do you want to be doing? Refer back to the Introduction for advice on this. But really try to narrow down your search. Obviously when you're starting it out it's not obvious and really you gotta take whatever you can. But when building a resume, applying for specific positions, talking to recruiters, keep in mind what your goal is/where is it that you want to end up. Having an end destination doesn't need to be very specific, it can be something vague, as long as you have somewhere in mind you can start to build a path towards it.

Catching Fish

This is one of my favorite analogies when it comes to internship hunting.

When you start out you'll probably cast a wide net. You'd be willing to take most any opportunity you came across. Your netting is thin and tightly-woven because you don't want even the smallest fish getting through. But once you grab your first fish you don't need to use as many resources on your net. You can loosen it up a bit. Start looking only for bigger fish.

When you start out fishing your bait is just some meager worms (your high school resume). Once you've caught a fish, even a small fish, you can then use that same small fish to again cast your fishing line and catch a bigger fish. Just because you've caught a fish doesn't mean you should stop fishing (unless that was your dream fish to begin with).

I think you get the gist of the analogy.

Essentially your resume/qualifications/past experience is your bait and the fish are internships/opportunities. Landing a small fish when you have a small resume is only to be expected so make sure you know the kind of search strategy you are using! Have realistic expectations about what you can actually manage to catch. Trying to catch a big fish early-on isn't wrong or bad (always chase after your dreams) but ONLY going after big fish is a mistake because if you aren't trying hard enough you aren't going to have caught anything by the end of the day.

My freshman year I didn't catch any fish. Unsurprising. Instead I worked on a side project over the summer building an Android application. In the fall of sophomore year I was able to add that side project and a couple of hackathon projects from freshman year onto my resume and actually got a few decently-sized fish. My goal sophomore year was to get internships at decently-sized companies in DFW and possibly elsewhere in TX. I accomplished this by going to the Career Fair and Intern Fair where I knew recruiters might be more inclined to listen to an underclassmen. After I had this decently-sized fish on my resume I knew that Junior year I could aim my sights higher and I did. Junior year I went through a large pool of online applications for larger companies across the US and managed to catch an even bigger fish. Finally senior year I thought about fishing again but honestly my appetite for anything larger or even of the same size just wasn't that strong and I stuck with a return offer from that same internship.

This is just a simple anecdote to drive home the point of this analogy. Every opportunity you get is a stepping stone. Every fish you catch is just another potential bait.

Timing

A key takeaway from the fishing analogy is the understanding of when you should be going fishing and how much effort you need to put behind your fishing rod. Really try to grasp how much experience you have and what kind of "fish" you can expect to catch with that experience. Maximize your time so you can get the best sort of fish that falls within your reach. Definitely try to catch something bigger but don't spend too long chasing something too big before you even have the resources to land it (i.e. don't grind LeetCode for hours hoping to land an Apple internship if your resume isn't going to make it past the recruiter).

Figuring out the best fish you can land isn't easy. And the best way to figure it out is just to try at first. Apply to places and see who responds. Go to the intern fair and see which recruiters actually reach out to you afterwards. After getting rejected from and (hopefully) accepted to a bunch of interviews you can probably start to build a pretty good hypothesis about your current fishing range. Another way is to ask people who have interned at a certain company what experience they had before applying and what they felt helped them stand out in the application process.

The Rat Race

The reason it's important to have a game plan is because for certain fish you need specific bait and going after that bait as early as possible is essential to being competitive. If you want to end up at a unicorn/start-up straight out of college then you need to be trying to get an internship at one of those types of companies or some large Silicon Valley type company Junior year. If you want a competitive internship Junior year then you should be doing interesting side projects or competing in several hackathons or trying to get a leadership position on campus to boost your resume before that.

And look, all of _that_^^, well that's a lot of pressure. Not everyone needs to have an internship. You don't need to win every hackathon. There are plenty of people who have made it without going the traditional route I've outlined (anecdote: I knew someone who didn't do any internships during college and managed to land a Google New Grad Residency their senior year). Never think that there's just one way to reach your goal. I advise you to make a plan early but if it goes wrong then don't pressure yourself to get back on track. Instead understand that now that you're off your original plan you can do something entirely new; figure out something even better with a deeper understanding of your current position!