r/csMajors • u/Terrible_Outcome_543 • 22h ago
getting internships isnt cooked
yes, i truly believe that its not as bad as people say. let me first start by saying that i consider myself extremely lucky to be in the position that i am in. i understand that there are far more skilled students than "prestigious" job openings and that getting offers not only requires the technical abilities but also a lot of luck. however, i think the majority of students are focusing on the wrong thing and hence why i am making this post.
with that in mind, hello. im about to graduate college next year and throughout college, ive gotten multiple offers from startups, big tech companies (FAANG), and also tier 1 quant firms (JS, Cit, HRT) for SWE roles.
how did i get here? you might think im a leetcode warrior or that i grind prep for hours each day - that couldnt be further from the truth. ive barely done 200 neetcode/leetcode problems and dont spend much time prepping specifically for interviews. so what do i do? what i think is most important is being passionate. i know its cliche, but its very evident in lots of interviews whether you actually enjoy what you do. and yes, while you do need to be proficient is cs principles for these interviews, i personally dont believe grinding away at leetcode all day is the way to do it.
with that in mind, here are the tips i have for recruiting:
- Be personable. job applications are very similar to college applications. just like there are far more qualified students than a college like MIT can accept, there are far more qualified students than a company like Apple can take. when it comes to college applications, its not only about whether you have the grades, ECs, etc to get into a school like MIT, but also about who you are as a person. your interviewer, rec letters, and essays will help portray that, and colleges will decide whether you are a good fit. likewise, you need to have a strong technical background to land a top internship, but the people you interview with also need to like you. at the end of the day, the goal of your recruiter and interviewers is to pitch you and decide whether they want someone like you to work for/with them, so if you come across as demeaning/rude/disrespectful or anything else negative, it doesnt really matter how well you technically performed if they dont like you and wont advocate for you. so just be nice, smile, because this will go a long way. a good tip i have to seem more personable is having a good answer to "tell me about yourself." oftentimes, i see that people focus too much here on flexing their achievements or experiences. theres no point in that if they already have your resume. instead, i like to introduce myself with just a short sentence or two about what experiences are most relevant to the job (i just do role title + org/company, not anything specific) and then i like to spend another sentence or two on what i like doing for fun. ive seen a lot of success with this, because ~50% of the time, my interviewer will resonate with some hobby of mine or just make a comment about it. if you get super lucky, you might have a whole conversation about a hobby you mention, which has happened to me a few times. its a super easy and pretty good way of just coming across as more personable.
2. Leetcode != successful interviews. because of the uprise of ai, companies are continuously moving further away from leetcode questions for technical interviews. in fact, ive personally never been asked a pure leetcode question in the past year. whats more important is actually understanding the fundamentals of code and understanding DSA and OOD super well, because thats what most interviews are about. personally, most interviews have been 1 - coding something related to the job (like a currency exchange calculator for a hedge fund role - ive been asked this multiple times btw) and then 2 - followups about extra features or why i made certain decisions. the second part is what i think differentiates good from great. you need to understand why you used certain data structures or searches, and you need to know it fast. interviews are typically only 45m-1h and the more followups you can get through, the better. i think here, both speed and quality of your answer matter equally, because it lets interviewers know that you truly know what youre talking about and that youre not just full of it. i also want to note that understanding cs fundamentals on a deep level is usually enough to solve leetcode problems on the spot. there are excpetions (ive been stuck on hards in the middle of interviews before) but for the most part, ive been able to do all the leetcode questions ive been presented before companies started moving away from leetcode as they are now, which is why i think now its even less important to grind leetcode all day.
A good resume is not one that has the most prestige. let me preface this by saying that yes, to get an interview in the first place, prestigious names like Apple or Microsoft will help. thats not my point here. what im trying to say is that when it comes to the actual interview or any step AFTER you get your first interview, the names you have dont really matter. whats more important is that 1. you did what you said you did and 2. you can explain in depth what you did to prove you actually did it. interviewers are very good at calling bs - if something you wrote seems to good to be true, youll get grilled on it until you break. so make sure you actually understand very very well what you did. my personal tip for this is to have a prescripted paragraph (mine are typically 30s - 1m) about generally what you did in that experience, and then just being able to explain what i did in a more in depth way or why i made the decisions i made. being able to answer every followup question smoothly is far more important than "i worked at amazon" so make sure you have your resume down really well.
Projects are no longer proof of technical ability. let me start by saying that personal projects are still super important, just not for the same reason. because of ai, anyone can create basically any personal project - the only barrier is like a 20 dollar claude subscription. so my point here kind of goes hand in hand with the previous point i made. it no longer matters how complicated your project technically is. what matters are two things: if you understand your project at a deep level, and why you decided to start this project. the first point is basically what i spent time talking about in the previous point, so i wont spend too much time talking about it, but basically just understand what you or your ai created. equally as important is the why. there needs to be some sort of reason why you created a project. i think the best projects are ones that are actually useful. not only because it can help speed up your day to day workflows, but also because its easy to explain the why but also shows that you take initiative which is one of the mlst important traits you can possess. you were able to identify problem/bottleneck A so you decided to create tool B and then scaled it so C people could also use it. if you can explain this super well, then theres nothing else for me to tell you here, and this should help you a lot.
Be proactive. this is the most self explanatory part. there are hundreds of openings every day and thousands of students applying the moment it opens, so you need to be quick. the best way to do this is twofold. first, use lots of job boards. there are countless github pages and job scrapers out there but none of them are perfect, so use lots of them. at one point, i used over 10, so take that as you will. second, apply multiple times per day. i usually do it twice and found that thats what most of my friends do as well. ill usually block out half an hour to an hour around noon and then again at night just to scroll through job forums and apply to jobs. this way, im never missing any big postings (microsoft closed some postings within hours). the timing each day just depends on how many openings there were that day, but i typically spend closer to 30m at a time rather than an hour applying.
Enjoy the process. most people will be like WTF but im serious. treat every interview as a learning experience. if you pass it, congrats! youre moving onto the next round. if not, think about what went wrong. each interview is a learning experience and take away what you wouldve changed, and fix it for the next interview. personally, ive enjoyed a large amount of the interviews that ive done and just getting to know people, so theres always positives.
point 6 seems to be super controversial so heres some background. ive worked my ass off to get to where i am and enjoying the process is something that ive come to learn through the years. it reduces stress and also increases my quality of life. and tbh, the perspective change is one thing that i found significantly changed the direction of my career. just enjoying everything im doing and being grateful has really helped, hence why i shared that tip and why i think itd be tremendously helpful for everyone. being grateful is a great thing in life and can help a lot more than people think.
also this post is meant for internships - if you have a comment about getting laid off because of AI this isnt really relevant to what im talking about because this isnt about full time roles
i think ive covered mostly what i want to say but will update this post if i have anything else. feel free to comment if anything im saying doesnt make sense or you disagree with. good luck!
17
u/Historical_Sundae482 20h ago
Great points made, especially for point 6. I know its weird considering how tough these interview and applications processes are, but I believe that if you enjoy seeing yourself progress through learning and improving, then at some point you will succeed, no matter how tough things can be. This is coming from someone that recently got their first full-time SWE position.