Over the past 10 years, the software industry has completely exploded with software engineering job postings flying up left and right and every top tech company complaining about how the supply of software engineers is too low relative to the demand. However, we have reached an inflection point where the raw supply of software engineers is actually quite high; the problem is that companies can only take on so many junior engineers. This leads to many new grads struggling immensely to find jobs, which is something I have seen personally time and time again. In this article, I will teach you how you can separate yourself from the other computer science majors who are just looking to make an “easy” buck and not make the same mistakes I did in college.
Internships Are The #1 Priority
To me, one of the most beautiful things about software engineering is that it’s an incredibly practical industry. People hire you when you can show that you’re actually able to build things, and the easiest way to do this as a computer science student is to have internships. Unlike a lot of other industries where internships are unpaid and make you a glorified coffee fetcher, a lot of computer science internships pay quite well and give you real hands-on experience. And for the cherry on top, a lot of computer science internships lead into a return offer to work full-time, completely removing the stress of job searching after graduation. Internships are the crown jewels of any new grad resume, so if you’re a computer science student, you should be gunning for these as early as possible. It doesn’t matter if you’re just a freshman, try anyways. This aspect of computer science also means that it’s not too bad to stay in school an extra quarter or two; every additional summer break means an additional computer science internship.
Once you get the computer science internship, here's some great resources on navigating them:
- "How to go about intern to full time conversation call?" - From an SAP Intern
- "Internship Metrics For Conversion?" - From a Google Intern
- Meta Intern Success Series - From me (Instagram Intern Manager)
Go All Out For Career Fairs
Career fairs are the easiest ways to get interviews and are infinitely better than the absolutely miserable experience of applying to jobs online. I made the mistake of not taking these seriously, and it made getting my first job so much harder. Go to every single career fair you can, and make sure to show up early. There’s going to be a line, and I learned the hard way that some companies give out interviews on a first come, first serve basis. Do research on the companies coming to the career fair, so you can come up with talking points and a list of which companies you want to talk to. Make sure to have a large stack of resumes ready and do some Leetcode problems beforehand to keep your algorithm muscle ready (some companies give out small coding problems during career fairs). And of course, go in looking presentable.
Don’t Take Your Grades Too Seriously
I was raised to believe that if you followed orders and did well in school, everything would just work out. That is not the case in computer science. As mentioned before, software engineering is an extremely practical industry, so if you can show that you’re actually able to build things, you’ll get hired, bad grades or not. Unfortunately, given how extremely fast paced software is (libraries can go from being the golden standard to being outdated garbage in just 10 years), academia is almost always behind. Almost none of what I learned in college was applicable to any of my jobs. If your GPA is above a 3.0, you should be good to go. There aren’t a lot of companies that explicitly screen for GPAs above that, and for those who do, you probably don’t want to work there anyways. The time investment to maximize your GPA simply isn’t worth it; it’s better to prioritize going to career fairs, studying for interviews, networking, honing your resume, and doing my next point.
Do Side Projects
I love being a software engineer, because it’s so incredibly accessible. Anybody with a computer and an internet connection can build the next big app. There is an infinite sea of amazing resources online, and so many of them are free! If you have the time, come up with an idea and try to bring it to life with code. I highly recommend mobile app development, since it’s the most lightweight and is the most easily demo-able during an interview. One thing that I want to call out is that people are catching on to the fact that side projects can really spice up a resume, and as a result, low quality side projects are flooding resumes everywhere. Don’t just follow some random online tutorial, throw it on GitHub, and write it down as a “project” on your resume. Really find an idea you’re passionate about, build it out with quality and craft, and follow up on it to grow it into an actual product.
That concludes my advice for computer science students on how to find jobs. For more resources around job searching resources for entry-level engineers, check these out: