Boot.dev Blog » Jobs » The 8 Crucial Mistakes Holding You Back From a Programming Job

The 8 Crucial Mistakes Holding You Back From a Programming Job

By Zulie Rane on January 18, 2021

Curated backend podcasts, videos and articles. All free.

Want to improve your backend development skills? Subscribe to get a copy of The Boot.dev Beat in your inbox each month. It's a newsletter packed with the best content for new backend devs.

If you’re reading this article, you’re well aware of the great benefits that come with a programming job - high salaries for programmers, an expanding job market, exciting opportunities.

You’re also aware that employers are increasingly desperate for seasoned, qualified, talented programmers. DAXX blog writes that in 2020, while there are 1.4 million unfulfilled jobs, there will be only 400,000 computer science graduates. Of course more hobby coders or bootcamp programmers might fill in some of those ranks, but overall, the demand for the jobs far outweighs the supply of programmers.

That’s what makes it all the more frustrating when you count yourself as one of those skilled programmers, but you still can’t get a programming job.

Nowadays, so much online material that’s designed to help you learn coding or programming emphasizes getting you a job - fast. But while these shortcuts can help you get started on the journey of getting a programming job, they’re also part of what’s stopping your career progression in its tracks.

If you believe you have the necessary skills but you still can’t get a programming job, you might be falling into one of these eight missteps. The good news is they’re all fixable. At the end of the day, the only prerequisite to getting a coding job is the desire to get a coding job. If you’ve got that, everything else is within your grasp.

1. You haven’t mastered the fundamentals of computer science. 🔗

Many people who learn coding at a bootcamp, instead of focusing on learning computer science online, skip steps, and don’t take the time to do it properly.

These bootcamps are designed to get you a very specific set of skills in a certain range of time. What they’re not designed to do is teach you the underpinnings of computer science - algorithms, computer architecture and hardware, data structures, databases, and computational theory to name a few.

I don’t mean to imply these courses are trying to trick you. Their purpose is to teach the bare-minimum of coding skills required for most entry-level positions. It just so happens that purpose doesn’t align with the goal of getting you a programming job, which is more complex.

As more educational resources crop up on the internet, the possibility of getting a coding job without a traditional degree becomes more and more likely. This means that more computer science beginners are taking an eight-week boot camp in Python, which is easy for beginners to learn, and getting frustrated when they can’t get a programming job immediately after.

Why this means you can’t getting a programming job 🔗

Let’s continue our thought experiment and say you truthfully say you can write Python code on your resume. This may get you in the door for an interview at an exciting startup - your dream. In the interview, they’ll ask you a basic question about algorithms and you’ll be completely stumped.

While these job applications may not outright say “needs to understand the basics of data structures,” this is because it’s implicit. The traditional route of learning computer science teaches you basics before even getting into any languages, which helps you interpret and apply the skills you’ll learn later more effectively.

The people who’re hiring you aren’t just looking for a Python savant. They want someone who can do the job in its entirety. They will be able to tell in an instant if you have the basic understanding that’s necessary to do the job, or if you memorized Python code. This is a common misstep that may mean you can’t get a programming job.

How to solve this problem 🔗

If you’ve already spent time and money on your bootcamp or course, you don’t have to go back to school to make the most of your investment. Instead, compile a list of the basics and study them. This will help you leverage your existing knowledge in whatever language or course you took, without getting tripped up on the essentials.

There are many resources online, both paid and free, that can help you learn the building blocks. Whether you get the basics from a degree, course, or bootcamp, you can’t expect to do a single course focusing on one niche aspect and get a job.

2. You’re not presenting yourself in a way that demonstrates you’re a good culture fit 🔗

Personally, part of the reason I ended up going for a data science job out of college was because I hated sales, like many other people. But while everyone hates sales, when you’re applying for jobs, you have to know how to sell yourself at every stage of the application process. If you can’t get a programming job, it may be because you’re neglecting this part of the application process.

The stereotype is that companies that want to hire you for a coding job only care about your technical chops, but it isn’t true. Along with the languages you can code in, the computer science fundamentals you understand, the interview questions you ace, they’re also going to be looking at a crucial aspect: culture fit.

Even though the job market is wide open, employers want someone who not only is good at coding, but will make a good addition to the team and company as a whole.

Why this means you can’t get a programming job 🔗

Programmers have a stereotype of being the type of obsessive individuals who lock themselves into a cold, dark basement until their coding project is done. Charlotte Bone, a full-stack web developer, wrote in her blog post on the subject that the idea that “programmers love nothing more than to be sat in a dark room coding all day and night,” is a harmful stereotype.

It might be an obstacle because though you want to be a programmer, you might not feel you meet that stereotype but still feel like you have to pretend to be that for an employer. Or, if you do meet that concept, you might show that part of yourself off but forget that employers aren’t looking for coding machines - they’re looking for employees. If you can’t get a programming job, consider how you’re presenting your personality and how it fits with your target company.

How to solve this problem 🔗

The truth is that most people, including programmers and coders, aren’t coding machines - we’re real people with interests and hobbies outside of writing lines of code. The important thing is to allow that to surface in your resume, and during your interview, in a way that makes it clear you’re a great culture fit as well as technically competent. If you can’t get a programming job, it might be because your resume only looks at programming skills.

Do you show passion, engagement and curiosity? What extracurriculars have you done? How can you package your skills to demonstrate you’re what they need both from a technical and cultural perspective?

Take time to research your potential future employer and what non-technical qualities current employees show. This will give you the strongest chance of presenting yourself favorably from both a skills perspective as well as a culture fit.

3. You’re ignoring good interview skills 🔗

In a similar vein, if you can’t get a coding job, it might be that you’re ignoring common and vital interview skills.

Even if your resume is perfect, even if you’re nailing the questions at the interview, it’s still critical to remember you’re going to be judged as a human, not a machine. Maintaining eye contact, expressing self-confidence, and soft skills like forming a connection with your interviewer all still matter.

Why this means you can’t get a programming job 🔗

Some people who can’t get a programming job are fed up because on paper, they have every single skill necessary to get the job done. But interviews are also a test of how you work with other people and how well you can communicate, which are often overlooked.

Humans aren’t great at telling at a glance if you’ll be the kind of person who works well with others, but we’ve come up with some shorthand that gives us an indication. That shorthand is common interview etiquette.

Laurie Hoss, CTO of npm, wrote in Quartz that, “the job of an engineer is to work with a team to achieve something larger, and if you are unwilling or unable to spend time communicating with your colleagues you’re only doing half of your job.” If you’re not showing off good people skills in your interview, your would-be employers might think you fall into that category of coders who can only do half the job.

How to solve this problem 🔗

If you’re getting to the interview stage and still can’t get a programming job, it might be a sign that this is an issue affecting your job prospects. To solve it, there’s an easy checklist to do during every interview, that is agreed-upon no matter if virtual or in-person:

  • Make eye contact
  • Ask your interviewer about something unrelated to the job - their family, their plans for the afternoon, their pets.
  • Exude confidence. Remember you applied for this job because you think you’re the best candidate for it!
  • At the end of the interview, make a passing reference to what you spoke to them at the start.

This shows interviewers that you’re not just a superb coder, but you’re a good interviewer, and hence a good communicator.

4. You don’t have experience 🔗

Don’t blame yourself too much if you can’t get a programming job for this reason. This is a problem compounded by the job listings posted by employers. It seems like every employer needs coders who have at least five years of experience in a language that only came into creation one year ago. This leads to coders applying for jobs that might be considered a bit of a stretch in terms of their applicable experience.

Because standards are high, a little bit of exaggeration can be forgiven. But the problem arises when you’re applying to jobs that ask for experience, and you don’t prove where your experience comes from. This is a common reason even skilled coders can’t get a programming job.

The issue is that years of experience don’t mean anything. I could be the laziest coder in the world, with an alleged five years’ experience writing Perl, because my sister owns the company and she didn’t fire me. I’d have the exact same skill set as someone with just one month of experience, but who had taken her job much more seriously than me.

Like the good interview skills, asking about years of experience is just job application shorthand for “Do you know how to do 75% of the things we’ll need you to do?”

Why this means you can’t get a programming job 🔗

Imagine someone looking through stacks of resumes where they asked for coders with five years’ experience in Python. They see you, like everyone else in the stack, have listed that you have the requisite five years.

From the outside, it looks like you’ve answered their question. But what they’re asking is whether you have the skills and experience needed to solve their Python problems. Whether you’ve done one year or five years of Python experience is immaterial at this point - you need to show that you have the equivalent of those years of experience. This not only will help you answer the employer’s actual question, but it’ll help you stand out, too, among the other applicants.

How to solve this problem 🔗

No, you don’t need five years experience. But if you can’t get a programming job, you need to demonstrate that you care about your future job, especially if you have no prior work experience. What projects have you done for fun? What have you most enjoyed about it? What problems did you solve?

Do you have a blog, GitHub repo, or another portfolio where you can demonstrate your commitment to programming? Nathanaël Cherrier, Lead JavaScript software engineer at Ferpection, lists some advantages in his blog post on why developers should start blogs: “When you write on the Internet you become more visible than a regular developer. Who are you hoping will read your post? Future colleagues? A recruiter from that awesome company you’d like to work at? The committee responsible for choosing the speakers of a conference you’d like to talk at? All these people will be interested in both your technical skills and your editorial skills.”

If you can’t get a programming job because of a lack of experience, sharing your passion can be a great way to prove to employers that you can do what they need you to do.

5. You’re trying to master everything 🔗

Again, like the unrealistic requirements in years of experience, many companies contribute to this issue by listing just about every potential language and technical skill that might one day come in useful on their job listings. If you can’t get a programming job, it might be because you are trying to master everything you see on job listings.

The issue is that there are countless programming languages and skills that a newbie coder might think they have to learn.

Instead, along with learning the basics that underpin every core computer science job, you need to market one sellable aspect of yourself instead of trying to do everything.

Why this means you can’t get a programming job 🔗

Unless you’re a veteran programmer, you can’t master everything that jobs will list under their requirements. (And if you’re a veteran programmer you probably have a decent job already!)

If you’re at the beginning stage of researching jobs and worried you can’t get a programming job, you might believe you have to master everything they ask for. Instead of applying yourself to one or two key skills, you spread yourself thin to have a passable knowledge of anything that might come up in an interview. But instead of becoming a master in eight languages, you’ll just end up knowing very little in each.

How to solve this problem 🔗

I loved the way Teresa Dietrich described her solution in her blog post entitled “What I learned from hiring hundreds of engineers can help you land your next role.” In it, she writes that plenty of job listings have exaggerated requirements that seem to cover everything under the sun.

If you can’t get a programming job, her solution is to make a spreadsheet of the jobs that interest you, and the core skills that each one requires. Chances are you’ll spot some commonalities pretty quickly. This will give you your answer on the skills most likely to help you get that job, even if they list twenty other “requirements.”

Part of the reason you can’t get a programming job might be because when you are asked to do everything, you only can prove mastery of a very few things. By cutting through the noise and delivering the signal these companies are looking for, you can get the programming job of your dreams.

What language do you enjoy the most? Which one do you understand best? These answers will help begin to point you in the right direction - both in terms of what sorts of jobs meet your existing skill set, as well as how to market those skills on your resume and during your interview.

6. You’re pretending to be more talented than you are 🔗

Of course, people who can’t get a programming job might be desperate enough to stretch the truth to try to cover every point. With job listings as unrealistic as they can sometimes be, this is only to be expected. But it might actually be stopping you from getting a programming job.

The good news is that while employers do want a capable employee, this doesn’t mean they need you to do everything they list in the job requirements.

Why this means you can’t get a programming job 🔗

When you tailor your resume and cover letter, you try to meet those unrealistic requirements by stretching the truth to appear as though you’re a master in everything they ask for. Interviewers will be able to see through that on your resume, and even if you get the interview, they’ll definitely spot it then.

In the clearest terms, you won’t be able to fool experienced programmers and interviewers. While the job listings may seem unattainable, this doesn’t mean you should pretend to have more experience, knowledge, or skills that you don’t have. The best case scenario is you get hired for a stressful job you can’t do properly. The worst-case scenario is you can’t get a programming job and waste your time applying to a job you don’t qualify for.

How to solve this problem 🔗

Keep your future employers’ goals in mind. Like the years of experience, they don’t need you to tick every single box. They just want to hire the person who’s best able to get the job done.

By sticking to what you do know, both on the job application and in the interview, you’ll be able to play to your strengths. Be honest about your skills as well as your limitations. So long as you can demonstrate that you can do what they’ll need you to do, you’ll be in with a chance.

Consider an employer who meets two candidates: one who says they can do something that they can’t, and one who says it’s beyond their current skill set, but demonstrates how they’ve grown their skills over the past year. The latter is much more appealing to employers. If you can’t get a programming job, consider how to pare back your alleged skills to keep it as real as possible.

7. You haven’t demonstrated you want to learn 🔗

It’s interesting to note that LinkedIn Workplace Learning’s 2020 report shows that the most in-demand skills aren’t technical ones at all, but rather soft skills. The reason, they postulate, is because technical skills age quickly. A vital skill one year is redundant the next. Soft skills, like the basics of computer science, underpin every single other skill that might be attractive to employers.

That means a learning aptitude is more important than any other technical skills you can show. Most employers want to hire a candidate they’ll only have to minimally train because you can bet new technical competencies will be necessary year after year. To be an ideal candidate, once you’ve demonstrated your core skills and your main talents, prove that you’re still interested in learning. Programming is not a static career. New techniques, languages, and skills come out all the time. You need to be dynamic to stay on top.

Why this means you can’t get a job 🔗

Let’s assume you are a perfect candidate who has every year of experience, every language they ask for, and who can demonstrate a solid grasp of the fundamentals of computer science. If you still can’t get a programming job, even with everything in your favor, it may be because you haven’t demonstrated you want to learn.

If your resume doesn’t prove that you are still interested in learning new skills, and if you don’t show a passion for gaining knowledge at the interview stage, even if you’re the perfect candidate today, tomorrow you’ll be obsolete.

People who want a career in coding or programming might focus on the hard, technical skills because they’re easier to prove. But if showing a desire to learn is only an afterthought, this might be a reason you can’t get a programming job.

How to solve this problem 🔗

Luckily, most coders and programmers love to learn. You have to, especially if you didn’t get a traditional computer science degree. This is where a more unconventional background can come in handy - by having taken courses or gained certificates, that’s one great way to demonstrate your dedication to learning.

It’s also a good idea to brush up on the latest programming trends. You don’t have to show total mastery of them - and indeed, that would be a waste of your time - but by demonstrating interest in the trends of programming, you can show you enjoy learning and staying current in the computer science field.

Finally, don’t limit yourself to only showing a passion for learning computer science. What else do you enjoy learning? Instruments, spoken languages, watercolor techniques and more can all be ways to showcase your love of learning.

8. You’re ignoring automated filters 🔗

If nothing on this list of mistakes applies to you and you still can’t get a programming job, it might be because technology is working against you. Even though most people applying for programming or coding jobs are deeply technical, it’s easy to overlook the fact that the recruitment process is automated. Take Amazon as an example, who got into trouble back in 2018 when it turned out that their recruitment AI was mistakenly showing bias against women. Many qualified individuals didn’t even have their resumes looked at due to faulty automation.

Setting problematic AI aside, consider the fact that many times, your application doesn’t even get seen by HR or recruiters because they’ve applied filters to minimize their workload to a reasonable number of candidates. By using keywords to shrink the list, they do their best to winnow out the least applicable resumes before they even get looked at by a human.

Why this means you can’t get a programming job 🔗

Many talented programmers are not good at optimizing their resume for keywords. That is a skill in and of itself. While it may make HR’s job easier, it does mean that the reason you can’t get a programming job isn’t due to any deficiency of yours, but because you just didn’t put the right words in the right order on your resume.

Unfortunately, if you’re struggling to get a programming job, you can’t afford to ignore these automated filters and assume your natural talent will shine through. Like it or not, you might have to play the game a bit to get your ideal programming job.

How to solve this problem 🔗

If you suspect this is the reason you can’t get a programming job, there are two methods to ensure you’re not getting overlooked by a machine.

First, and most obvious, is to optimize your resume for keywords. Take another look at the job application, and tick off every bullet that you’ve included in your own resume in the company’s words. The Balance Career’s blog post on resume keywords recommends also ensuring your resume reflects the company’s brand, which is what sets them apart, so try checking their LinkedIn page, as well as the LinkedIns of current employees.

The second method is less intuitive: remember that recruiters are human, too. You can throw your resume on a stack and hope it gets looked at, or you can go the extra mile and find a current employee with a similar job title, a hiring manager, or whoever your boss might be, and send them a short LinkedIn message. You can express enthusiasm for the role, ask questions about current duties, or even just let them know you’ve just applied and are looking forward to hearing back.

It’s a way to put yourself on their radar, and make sure your name is already familiar if your resume does come up. Never forget that a human touch goes a long way.

Final thoughts on why you can’t get a programming job 🔗

It’s possible to get rejected at two potential stages: getting an interview and getting a job offer after the interview. To maximize your chances if you can’t get a programming job, see where you’re struggling and apply the relevant tips there.

Overall, the advice boils down to this: remember human skills are still relevant. Don’t lie. Stick to your strengths. And cover the basics first.

If you can do that, you’ll have solved the primary reasons you can’t get a programming job.

Keep working at it, and remember: employers are as desperate for good programmers as you are for a good job. All you have to do is show them that you’re the candidate they’ve been dreaming of.

Find a problem with this article?

Report an issue on GitHub