Advice For Computer Science Majors Facing Tough Environment


Another article I found off of LinkedIn that’s worth me commenting on is “Comp sci majors face tough job market.” Right now, the tech job market is comparable to 2001 where recent graduating students in the engineer related field might be facing stiff competition as major tech companies are laying people off while some companies are even folding. While the atmosphere may seem gloomy for these people, I do have advice for them to help mitigate their situation as well as providing some level of hope.

First, let me address how the environment is similar between now and 2001. Back in 2001, the infamous Dot Com crash occurred where a plethora of companies burst into figurative flame as VCs pulled out when the numbers weren’t what investors had hoped for. There were remarkable flame outs such as WebVan, eToys, Pets.com, etc., each having their own tragic yet poignant story of the faster than light come and go lifespan of their existence. Back then part of the issue was that those companies had grown quickly, taking on huge sums of VC money without showing real profits and/or burning through their capital because of bad business plans (e.g. WebVan having terrible logistics with say delivering a stick of gum on demand or eToys overprojecting their Christmas earnings).

Right now, big tech and fintech seem to be major targets for what we’re seeing. But let’s take a look at what has happened in these situations. A lot of the layoffs, in my estimate, were from the growth spurt born out of the pandemic. Companies like Facebook put huge bets in people being at home with the Metaverse while Zoom made huge business gains because remote work was necessary. Now, that the pandemic has died down, those moments of growth no longer are there. Companies like Amazon have seen a drop in sales, which would seem obvious given that people probably want to be at a physical store again rather than being trapped at home. Also, Amazon put a huge bet in Alexa, giving it an “unlimited spending budget” which resulted in no gains. So many of these bets sound like bad strategies rather than tech itself.

With Fintech, we’re seeing a collapse just because of regulation, trust and other factors that show that there is a need for more oversight in that industry. But the tech itself (blockchain) still can be useful; it’s just the execution of these ideas were flawed.

But the thing about the 2001 Dot Com bust forced companies to rethink their strategies and avoid key mistakes that were done in the Dot Com era. Instead of hiring hundreds of employees to grow fast and resemble a normal company, the web 2.0 generation were built inside homes and run with tight teams and budgets. Nonetheless, people didn’t stop trying to create the next big thing. And we saw companies like YouTube, pinterest, Flickr, etc. emerge and become the next generation of tech that has been leading the charge.

With that in mind, I don’t think people should worry about if we’ll recover. It’s a matter of when. But for the kids who recently graduated and would like some advice, here are some things I will suggest to you:

Keep Applying

You will face a lot of rejection as you compete for jobs against other highly skilled people. Most likely, the hiring manager will just toss your resume in the trash. But keep applying no matter what. Eventually, someone will bite.

Do Skill Based Searches

Using platforms like Indeed.com, etc. look at key languages or platforms that interest you. Find out what tech stacks companies are using and choose one like a PHP + Laravel, Go, Node.js + Express, Vue, etc. Figure out what companies want in terms of their tech stacks and take notes on the most popular frameworks and languages as well as several others. Do this over a period of a few weeks if possible to understand what’s out there.

Do Projects From Skill Based Job Search

Once you determine a tech stack that’s right for you, train yourself in it. Write an application from start to finish. If you have some friends from college that are struggling to find work, get together and try to build something together. But never stop learning. Your college degree won’t give you all the answers to an interview but it will give you a solid foundation and most importantly the capability of learning on your own. Take that and keep pushing yourself.

Treat The Project As A Real Company

While continuing your job search, if you perform the previous step with friends, start acting as though you’re trying to build a real product for a real company for real consumers. Find other friends who can help with things like design, quality assurance, community feedback management (i.e. a community manager), a project manager even. If you know any business MBA friends, try to hook up with them and figure out a financial model for your system. If you need to make money and you want to run an ecommerce platform that you build yourself, find people who can handle the logistics and sourcing. But treat it professionally because there’s a good chance with enough momentum you might find real customers and (dare I say it) a VC or angel backer.

Figure Out How To Stand Out

The real challenge as a student right out of college that you’re going to face in economic times like this is that you simply have no experience that a company can leverage immediately. Even if you were to come out of the top comp sci program in the nation, unless you’ve had several key internships and managed to solve some space-time complexity problem that was unheard of, I still wouldn’t hire you. The reality is that I can’t slot you into a spot and suddenly expect you to go off on your own with little to no instruction. That’s the type of person you’re competing against. Not just that but people who have worked in production and seen crazy things like a whole web system going down because Michael Jackson died (happened to me at Livestrong) or debugging an obscure framework problem. When I hand a task to someone, I pretty much am entrusting that they will get it done because I am confident in their abilities.

So how do you get to be that person? Honestly, it just takes a lot of time. Work experience is just that; it’s dealing with numerous issues and figuring out solutions that you can replicate in the future or seeing patterns emerge where you know the general solution/approach at the new place. You simply won’t have the domain knowledge of a person in the industry. So you need to get production experience. You need to deal with bad deployments, things catching on fire, finding obscure issues. You have to put stuff into the wild and see what happens effectively. In turn, you’ll be able to talk about it during an interview. That’s what I like to see.

Don’t Mope Around

You already have all this free time from not being employed. Don’t sit around the house in your bed feeling sorry for yourself and sleeping all day. Stay active. Don’t waste your time on games or other things because none of that will amount to the experience you need to get a job. The truth is that most tech companies aren’t really tech companies; they’re just a data storage with a fancy interface to store and retrieve data to their customers. Anyone with a degree in comp sci should be able to rebuild that idea or some version of that. But you need the experience to make yourself stand out. What impresses an employer more than the companies that they’ve worked for is what an individual can do for a company. Prove that you’re not worthless by pushing yourself beyond just expecting to receive homework before being motivated to work on your own.

Be Frugal

Neither grade school nor college ever teaches a student the basics of living. But if there’s one thing to know about a bear (i.e. recession) type of economy is that you need to be frugal. It might be embarrassing to live with your folks (if you have any) but they should understand your predicament. Avoid debt by avoiding credit cards. Do what you can to save whether its eating at home, staying at home, cancelling all your subscriptions, etc. And even when you land your first job, don’t suddenly splurge (unless you really know what you’re doing or you want something desperately). Come up with a plan to pay your assumed student debt and make sure you know what your monthly average expense will be before buying unnecessary things.

Be Focused

One of my earliest problems when I interviewed was that I had no focus on what I wanted to do nor what I should do. When you go for a job, you should really understand what you’re getting into. You might go off on tangents but that might make it seem that you’re either schizophrenic or plain clueless. You need to know why you’re applying for a job. It shouldn’t just be “well, I need a job”. You should be drawn to the place for a reason, find something in common and be able to draw your unique experiences and insight into providing some manner to improve this company.

So to do that, when applying for a job, read through the About section. What does the company do? Can you understand what the company does? Check out the leadership positions. Look to see if there’s something about management that looks appealing (or perhaps the opposite). Find out more about the company in terms of what their problems are, what they are looking for in an employee and for this position. In short, seem interested and relevant to the job.

Don’t Be Generic

One question I like to ask potential candidates during a job interview is, “What makes you special?” If you answer me, “Well, I work hard” then you’re out. I need to know the person I’m hiring. What qualities make you stand out? Why are you uniquely qualified for this position? Why should I hire you over person XYZ over there? Again, this is where reading about the company, the profiles of leadership, the products/solutions offered, etc. can help because you are trying to create commonality and a unique interest for yourself to the company.

Create A Google Document Page of All Technical Questions Being Asked For Future Reference

I have a personal document that I keep of all the technical questions I’ve been asked over my career (maybe not all but the ones that caused me extreme pain). I use that document to occasionally study because I want to review bits that I had problems with. In the past for instance, I was often asked SQL questions such as the types of select statements, the difference between inner/outer joins, having/group by clauses, indexes, etc. Because I did not study databases in college but learned them on my own, I didn’t know the official answers. Over time, I started to really understand them. Sometimes though, I fail in providing a good technical answer.

But the idea here is that there’s a good chance a lot of these questions will be repeated between companies/interviews. So the more of them you have jotted down somewhere, the better the likelihood in the future you’ll be able to answer. Sometimes, when I’m recruiting, I’ll pull this list out and hand them to a recruiter to ask as a filter. In my case, the positive is that none of the questions should seem unfair since I probably encountered them a few times and feel that they are standard questions being asked.

Final Thoughts

Even if you don’t get the next 10+ jobs, use each one as a learning experience. After the interview is conducted and if you get a rejection, call the recruiter back and ask for feedback. Make sure the feedback is specific so that you can hone your interviews. No matter what, learn from your interviews. You’ll make mistakes but you need to realize what those are. And don’t be afraid of rejection. It’ll happen. Use as many interviews as you need to warm up and study harder.

(Visited 3 times, 1 visits today)

Comments

comments

,