I started my tech career in 2016, when I landed my first ever tech Internship at a Cloud company in Silicon Valley. Now that I think of it, life was much simpler back in the day, especially when I relate to today's circumstances where thousands of people are out of jobs. Although it looks like Tech is still booming, people (new grads or tech career transitions) who are just starting their careers are having a hard time getting interviews. I know this first hand as I have a few friends of friends and numerous people reaching out to me on for Job referrals on Linkedin.
I am sharing my perspective on why New Grads / Aspiring Software engineers are having a hard time finding opportunities during this COVID situation. And most importantly, how you should be making use of this time to prepare for coding interviews and build connections that might eventually land you your coveted job or internship.
Here is what I read and learned from my friends and colleagues about why new grads are having a hard time getting placed:
- Most companies have a hiring freeze, both big tech and startups. This is a precautionary measure as many companies are still uncertain about how their businesses will be affected in the near future.
- Many experienced people are out of jobs. If someone is able to hire experienced engineers from the market right now, why would they take on the burden to hire, train and spend time on new grads? Just out of curiosity, I spent some time in the Linkedin jobs section and indeed most roles required 2+ years of experience.
- Your location could be limiting you for consideration. Provided the Shelter-in-place situation and everyone trying to cope up with the new way of working from home, hiring managers are looking for someone in the same timezone or at least are wiling to relocate in future. Managing remote teams is something most managers are not familiar with. These managers prefer having their team in more or less the same timezone. The focus is on having a large part of team work hours to overlap, to ensure effective team communication and minimizing collaboration overhead.
What should you be doing?
I would say, please don't spend too much time worrying about the uncertainties of the time. You don't want to be adding more mental pressure than you already have. Instead, focus on things you can control. Here's how you can make good use of your time and come out stronger as a software engineer from this lockdown:
- Practice, Practice, Practice for your coding interviews.
This is the number one thing that will make you employable. From a Silicon Valley perspective, if you are a New Grad with a Bachelors or Masters degree in CS, most of the time I would only see if you have some good coursework, experience working on challenging college projects, any internships, and any specific interest of yours whether it is working on frontend, backend or ML. For most roles the focus of the interview is on Data Structures and Algorithms. Get onto Leetcode early and start your grind. Coding Interview Patterns will help you crack your interviews and make your Leetcode grind more enjoyable. If you are interested I am writing a series of posts on Coding Interview patterns here. Yes, it is free. All you have to do is Sign up to the blog.
- Don't spend time on unnecessary online courses.
I know folks who enjoy watching video courses on Udacity/Coursera/Udemy just to get a certificate. Sure, it might add some credibility but literally most hiring managers are not interested in it. Instead, focus on point 3.
- Be more Hands on to your learning approach.
When you are bored of solving Leetcode problems, work on some side projects that aligns with what you wish to pursue. For example, if you are interested in frontend show me your UI skills, show what you know about how the browser works (How? See point 4). If you are interested in ML, show me your analysis on a dataset. Show me a comparative study on different models that you worked with. (How? See point 4).
- Publicize your work.
Most people don't do it. Whatever you do as part of point 3, make sure you put out a word for it somewhere. It is no good if your side projects are just hiding in a GitHub repo. No matter how small or insignificant you think your project is just publish it somewhere for people to see. Publish it on Medium, LinkedIn, subreddits. Get more eyeballs to your profile. You never know if that one share or comment from someone can open up an opportunity for you.
- Work on you Communication Skills.
If you are doing whats mentioned in point 4 then you are effectively building a sales pitch for your self. Trying to share your work and experiences with others. Just going over your posts, any docs or any talks will give a potential hiring manager a glance into your communication skills.
I can help you...
I am offering to do Resume Reviews, Mock Coding Interviews, and any AMA sessions that you might be interested in. I plan to schedule these meets mostly over the weekends or late night calls in PST timezone. If you are interested, fill out this form. I will reach out to you in 1-2 days over email. You can also connect with me on Twitter.
Good Luck with your prep! Hope things get better soon.
Stay safe, Stay healthy, Be consistent and Stay curious :)