If software engineering and software development jobs are so difficult to fill because of a talent shortage, why then is it so hard to land a new job or even worse don’t get your very first job even though there are plenty of open positions? How can you succeed in this game and make it from the job interview to become the next software engineer or software developer for a specific company?
As someone who has been both interviewer and interviewee, I decided to go down deep into the topic of why it is so difficult to get your very first job as a software developer or software engineer or a job in that role altogether if you have gone to school for computer science, or alternatively, go through a coding Bootcamp or maybe you are completely self-taught and know your stuff inside out. — These are different scenarios, different situations, and different issues but I will give you my full insight into why it is so difficult or seems to be so difficult to land a job as a new software developer or software engineer when there are plenty of open positions.
You see and hear it over and over again — from news articles or different blog posts how in-demand software development and software engineering is. There are more open job positions than there are qualified workers. Currently, it is expected that the economy adds over 40,000 new software developer or software engineer positions per year until 2030. That is new, not previously existing positions.
At the same time — you seem to hear from different people in the industry how difficult it is or was for them to land especially their first job and it is really hard to understand how both of these statements can be so true. It should be demand and supply, isn’t it — and if the demand is higher, why are folks having so many difficulties to land a new job?! I want to break it down for you to see what I am thinking really is the reason behind it.
Before we get into this though, let’s just review those numbers of job growth for software developers. — Over 400,000 new jobs until 2030. That is an expected growth of 22% when you consider that there are currently over 1.8 million software developer jobs in the United States. So, net new there is an expected addition of 400,000 jobs + you have people leaving the field – be it for retirement or career changes or taking on non-developer roles in IT management.
This statistic is mind-blowing because there are very few other jobs that are growing at that rate … at 22 Percent. It’s crazy.
So, then comes the question why is it so hard to get a job as a software developer or software engineer?
One of the main reasons why I think it can be difficult for a software developer or software engineer to land the first job because the process of coding software is itself is so broad and companies are looking basically for a very specific skill set to fill a need. So, if you were someone who is applying for frontend developer roles — but you find most companies are looking for backend developers — then there is your issue number 1. — In most cases, companies won’t completely make a 180 and hire someone who does not have any experience in what they are looking for but has experience in other areas. — Now of course — this is not always the case, but typically they hold out and wait to find someone who is more in line with what they are looking for. Some companies will be willing to invest in the individual and train them on their technologies and or maybe see the benefits of hiring someone who is more junior and doesn’t have any experience with the technologies that are being used — the benefit being meaning that they will be able to be trained in a way that aligns with how the company works. It would allow them to eliminate any bad habits by providing the individual with training — these individuals then are able to structure their code and use the technology in a way that works best for the company.
The other reason I think it can be hard to land a job as a software developer or software engineer can be that technical interviews can be or actually will be a game in their own way and what I mean by that is that technical interviews are structured in a way that the company is hoping to find the best candidate possible. So, your interview experience might not be aligned with their style of interviewing. — However, there are so many flaws in technical interviews, and when people are doing technical interviews even the best of the best can stumble and can get nervous, and even when you are an amazing programmer you can fail at technical interviews. The technical interview process has gotten a lot better and companies are starting to realize this, but it definitely has long way to go.
Regardless, of you like technical interviews or you don’t, the one thing we can all agree on to a certain degree is that the test or the problems you are solving during a technical interview are not what you will be doing in real-world scenarios. — It is more so for you to show your way of thinking or if you have the right logical skills to solve a problem and how good your communication skills are related to that. And some companies are taking this way too literally and instead of looking at the skills I just mentioned, they are too focused on if you can solve the problem they have prepared for you for the technical interview their way. If you can, you’re great and if you can’t … well, I am sure you know that answer. And rest assured, there are plenty of those out there.
Another issue I see with technical interviews is a disconnect between their expectations of what the solution to a problem should look like and how you deliver the solution. Think using a programming language that you feel is better to deliver the solution compared to what they would like to see the solution coded in – even if is not the best way to solve the problem. Now, it may not be a big deal until they compare candidates and rather go with someone that coded the solution in a language to their expectations.
Another reason why it can be so hard to land your first job as a software developer or software engineer is that the interview process for software developers is grueling. There are usually at least 3 rounds of interviews a software developer or software engineer has to go through. Just the sheer number of resumes that each company gets will make it difficult for you to stick out – even if you are selected for phone and in-person interviews for the software developer position. And then you get into situations where you are just not making the cut because a lot of companies prefer to hire people that were coming in as a referral as an example. Knowing that I can only remind you to build your network of people and connect with others whenever you can (not to be compared with a more anonymous connection on LinkedIn where you have never met that person). In other cases, you will never hear from the hiring company after a first interview or it takes months for them to let you know that they went with a different candidate. The silence or as some people call it “being ghosted” is depressing and nerve-wracking – especially if you are a more junior-level software developer.
So, of course, the original question is why is it so hard to get your first job as a software engineer, but we also need to ask how can make the interview process better? How do we fix this situation so that supply and demand can meet in a fair way for both sides? But you can imagine that this is not a small feast of a challenge. Even if the information is out there to make the job interview process for software engineers better, it still takes companies and individual hiring managers to recognize the need for change and then implement it as well. Until that happens — you just have to bite the bullet and tough it out until you have your first job as a software developer or software engineer. You may not always get somebody to freely say it out loud, but ask for feedback from the interviewers. And they may be lip-tight for legal reasons, so you have to ask for feedback in a more creative way. Instead of asking why did you not chose me, you could ask — what can I do better next time or what would you recommend for someone in my position to improve my skills and to master an interview somewhere else. — See if you can get an understanding of why they went with another candidate. — It’s a good process to learn and to build that respectful relationship with the recruiters. Trust me, this will help you down the road when working with other recruiters. For many years now I have been involved in the hiring process at the different places I worked at – including interviewing software developers and engineers. This was less for technical reasons, but more to see if they were a cultural fit from a broader perspective – including to potentially have to work with them as part of a project or SCRUM teams. Over time you get a feel for people and often can judge them technically simply based on how they interact on non-technical levels. Then for my own journey into IT, I literally sent out hundreds of resumes and had dozens of interviews until I landed my first role. The very first job is the hardest to get — no matter what area of information technology you work in. So, use each interview as training and with some additional learning effort on that end, you will land a job as a software engineer or software developer sooner than later. This whole experience is normal and everyone has gone through this in one way or the other — so, hang in there and do not let a “NO” drag you down.
The funny thing or maybe not so funny thing is that once you land your first job, recruiters will come knocking and want to get you in for interviews. It is a weird thing to experience. First, they do not want to talk to you because you do not have a job as a software developer or software engineer, but the moment you make it public that you have a job – they cannot control themselves and will call you.
So, the same persistence they put out there — you will need that as well to get your first job as a software developer or software engineer. And down the road, once you have some experience under your belt – you will see the demand shifting into you favor and you will get a new job as a software developer or software engineer almost instantly if you want. But all of that only applies to you if you are able to deliver quality work AND keep up to date with current trends in software development. And do not forget about the importance of soft skills, being a good team player, and knowing how to effectively communicate – these things are important as well.
So, I hope this gives you a good insight into the hiring process and why it is so hard to land a job for software developers or software engineers. Landing a new job, go through the interview process – it is a game or a process that you will have to go through. You can embrace it and succeed in this game and overcome the hurdles to get a job as a software developer or software engineer. — I know you can do it. The better you get at this, the better to land that software developer job at one of those amazing companies.