Struggling to find a job

Finding a backend job

I’ve been applying for back end and full stack jobs for 4 months now and have sent out about 140 applications in total. I crafted a custom cover letter for each application and for some I emailed a person in the company directly. I’ve applied for junior and mid level positions all across the United States.

I’ve gotten 3 phone interviews with recruiters that never made it anywhere, and I was able to make it to the second interview with one startup but I’m not going to lay all my eggs in one basket.

Note that I have no professional experience or formal education. Completely self taught

Honestly, I try to avoid applying for senior positions because they end up contacting me without looking at my resume or portfolio and then are surprised to find out I’m a junior developer!

I’ve attached links to my portfolio, and GitHub as well as my resume.

What am I doing wrong. Why am I not getting interviews.


Resume - Phone and email removed for FreeCodeCamp
Blog - Working on restyling it


Yup, your experiences are about the same as mine.

Yeah, recruiters are all but worthless. They just look for keywords and then mail bomb anyone with that keyword.

IMHO, your portfolio looks pretty good. I might want to see more activity on your github - some people look to see if you have a lot of green up there. Try and push something every day.

Is that your pdf resume? I might have a separate online resume and a printable one - anyone that tries to print it is going to use up a lot of toner. I would also want more quantifiable data on your resume - What is your education? What is your work experience? Where do you live? What type of position are you looking for? What is your real phone and email? Also, I don’t know where you are, but in the US, we usually don’t put photos on resumes. If you have an online one, I guess it’s OK, but if you make a printable one, I’d leave it off. Do you have a linkedin presence? I’d google “web developer resume” and look at some examples.

Other than that, just keep at it. It’s a numbers game. You can fail 500 times, you only need to succeed once.


Thank you very much. I never considered constant GitHub activity as a bonus. I usually only upload to GitHub when my projects (personal projects) are completely finished and tested.

I used to have a “web developer portfolio” as you say. Without much color or an image but I felt that I needed something to stand out so that they wouldn’t just gloss over me. Given that I’m applying online, should I really consider the consequences of someone having to print my resume?

Get rid of those skills progress bar.

All it tells the prospective employer is you don’t know these tech (Node, JS, Mongo, etc…) well enough.


I usually only upload to GitHub when my projects (personal projects) are completely finished and tested.

But github is more than just a place to store things when you’re done. It is part of the modern workflow. Learn to branch and merge and all the things that can be done. Learn to push every night. A coder I know that used to supervise other coders says, “What do you tell a coder that tells you that they just accidentally lost three days of coding? You tell them they’re fired.” There’s no reason not to be storing things as you go. I would go so far as to say that if you are a coder and you aren’t doing something on github a few times a week, then you’re not using it right. An active coder might be adding/committing a few times a day. Remeber, afaik, the github activity monitor (green boxes) are based on add/commit times, not pushes. But you should still be pushing at least every few days, if not every night.

Given that I’m applying online, should I really consider the consequences of someone having to print my resume?

I think you should give them the option of a printer friendly version. Some people like having things on paper in front of them. I used to work for a manager that had his secretary print out all his emails every morning. Insane, but true. I’d have a web version if you want, with color, etc., but then I’d have a more traditional printable pdf. And maybe it’s just me, but that just doesn’t look like a resume. Part of it is the color. But that may not be an issue if you include some more traditional details. Like I said, take a look at what others have done.


Your portfolio site certainly looks impressive, and I noticed that you wrote it in React as well. The only rhetorical question I would ask about it is: what’s the connection with the “choxjs” name and your real name? There seems to be no connection, so it’s confusing. Also, the immediate viewport further adds to the confusion—what’s the connection with the background image showing the satellite dish? All of the content on your site needs to make sense when fit together and not confuse your viewer or provoke any questions that you don’t want them to think about.

Moving on to your resume:

  1. Delete your photo. That’s not a normal practice on resumes in the US, and can be cause for unconscious bias. The place to have a photo is on your LinkedIn profile—speaking of which, isn’t linked anywhere on your resume. If you don’t have a LinkedIn profile, you should set that up immediately. The vast majority of hiring personnel that see your resume will also look you up on LinkedIn, and some won’t even bother checking out your GitHub or portfolio site, so you need to make sure that your LinkedIn profile is always up-to-date.
  2. Your full name should be featured at the top of the resume. Not your first name and last initial. Hiring personnel scan resumes in 6 seconds, which means that some may miss your last name in the first paragraph—and you definitely don’t want that to happen.
  3. The icon for your GitHub link should be the GitHub logo, not some generic “G”. There are also established common icons for web links as well, so don’t use a “W” for that. Google “web icon” to see a few examples. You could use Font Awesome’s icons as it has standard icons for just about everything—phone, e-mail, web links, GitHub, LinkedIn, and way more.
  4. I noticed a variety of punctuation, capitalization, and spelling errors throughout your resume, all of which you should fix. Hyphenate all words that need to be hyphenated, capitalize all proper nouns, DEcapitalize anything that shouldn’t be capitalized, and use apostrophes where necessary. Double-check your spelling. This is all easy to do with any word processing software (like Microsoft Word), or online tools if you don’t have a word processing app.
  5. It looks like all of the main content is just projects? It’s confusing how the projects in the “Other” section differ from the ones above. Either put them all under a single “Projects” label, or come up with a different label for “Other” instead. Your icons for those also make no sense—why does Projects have a person icon next to it, and why does Other have a lightbulb icon next to it?
  6. I echo the above post on deleting your skills progress bars. In general, anything that’s a “gauge” is something you should avoid. You either know something or you don’t, and you should only list skills on your resume that you’re confident in using and could answer a question about if you progress to the interview stage.
  7. Node JS, Mongo, and React should always be typed out exactly how their creators typed them out, don’t insert spaces or leave things out. It should always be “Node.js” and “MongoDB”, and while you can use “React” since that’s now the official moniker, it may be worth adding “React.js” as well.
  8. Delete your personal skills. That sends a message that you really should avoid sending and could be an immediate turn-off for a lot of hiring personnel. Rating yourself highly on personal skills can also imply arrogance.
  9. Your color scheme would be ok for a website, but you should seriously consider inverting your colors so it’s black text on a white (or off-white) background. As already mentioned, resumes are sometimes printed (usually on black & white printers), but even if they’re not, most people reading a resume expect to see a white or very-light background on a resume, not a dark-grey background. The goal for your resume is to make it viewable for anyone who might want to print it out and doesn’t own a color printer. You can still use color on your resume, but it shouldn’t dominate so much that if someone were to print it out on a black & white printer it’d become unreadable.
  10. Keep in mind that the vast majority of people reading your resume are hiring personnel—usually a human resources employee or hiring manager, or other similar person. Not other developers. While you can use common terminologies, like REST APIs for example, you should limit using them because average people don’t know what they are. Average people understand numbers and dollars—try to quantify anything you’ve done in those terms. Explain your projects as if you’re explaining them to a random person off the street that you just met.
  11. If you’re applying to large companies, you should seriously consider reformatting your resume to follow a strict top-down layout because their automated systems don’t scan left to right. In the case of your resume in particular, an automated resume system would never catch your contact info and skills—which you certainly don’t want to happen, right?

Also, your strategy in applying for jobs can make a significant difference in getting results. If you’re doing a “scattershot” approach to every single company small to large, that’s not going to work. Limit your applications to specific types or sizes of companies, and go deep—try to find people who work at the companies you want to work at, either with Google, LinkedIn, or the old-fashioned approach in actually meeting people in real-life. Attend networking events, career fairs, etc. Do more than just blindly applying to companies, because statistically, it’s the least effective method.

If you live in a decent-sized city, it’s worth checking out the available tech meetups in your area on—just plug every single language or library/framework you know into their search box (along with the name of your city of course), and I’d bet you’ll find tons of Meetup groups that way.

And if you’re applying nationwide, you definitely need to add your location (city & state) to your resume. Otherwise it’s guaranteed that your resume will get quickly discarded.

Also, in lieu of your lack of formal education, have you taken Harvard’s CS50X on edX? It’s a worthy free alternative to the first year of a computer science degree, and contains material that many companies will want you to know as a developer.


What about networking? Have you tried that? It is not necessarily going to land you a job, but it might be worth trying. Probably not a job but you can get a lot of it for sure.

If you already finished the certs, it would be also useful to explore some freelancing meanwhile.

I just finished this analysis:

Please don’t take it totally as a recipe. It is not. There are aspect likely related to your context that should be taken in consideration and that it is something that the analysis didn’t cover.

But probably something useful? Hope so… :slight_smile:


@evaristoc Great Medium post and data. From what I gather from your Medium post, going the unconventional route helps a lot, such as sending direct emails, and as previous posters have stated, attending meet ups. Networking and community participation certainly would not hurt either.

Going with the advice of previous posters and some online research, I’ll take the fallowing actions. :arrow_down:

I’m going to re-design my portfolio along the fallowing guidelines

  • Create 2 resumes.
    A simple one for large companies that may be using ATS software.
    An artistic one for small companies and in person.
  • Easier to skim
  • Less color polluted (has some color, but small and in good taste)
  • Contains links to my online presences as well as correct graphic labels (GitHub, LinkedIn, portfolio)
  • Properly spell and grammar checked (I’ll use Grammarly)
  • Shorter intro/about section
  • Better grouping/organization of projects
  • Project descriptions that can be read by both HR personnel (technically incompetent) and developers. (if this is even possible?)
  • Removal of skill progress bars (though a short list of my primary skills might still be nice to have)
  • Top down layout (and some other changes to accommodate ATS software wile sill being pleasing to the eyes)
  • Add my general location (city, state)
    I’m going to keep the picture as I feel it makes me stand out/catches their eye.

Sit down and force my-self to sigh up for at least 1-3 meetups in my area, what ever it may be, just to get started. I’ve attended a meetup in the past but I felt that my time would be better spent working on projects and applying for jobs.

@kevinSmith Daily github pushes
I’ve started making regular pushes on GitHub for a project I’m currently working on.
Besides being good practice in general, daily/regular commits may look better to employer than infrequent monolithic commits.

I’ve done 75% of cs50 and some part of another course on edx but I found it easier to learn using other resources. While not my top priority right now, being able to list a bunch of relevant edx courses on my resume and portfolio may be a benefit to me (what do you guys think).

I’m considering allotting a 4 day period to just knock out CS50 (again!) so I can put it on my resume.

Re-check my portfolio for spelling, grammar, punctuation, and other mistakes.

Thank you for the advice and help. If you have any other pointers or advice, please share it, for myself and the other campers.

While that’s your decision to make, it’s really not a good idea. The links below all support not having a photo on your resume.

Btw, my comment on CS50X on edX was for you to gain the knowledge that’s in the course because it’s foundational knowledge to most software jobs, and not really for you to put it on your resume. Especially because in the real world, CS50X isn’t going to be an educational credential that’s going to be recognized by most people—i.e., so adding it to your resume won’t really help with anything, and it certainly wouldn’t be remotely comparable to say, having a CS degree from Harvard, who offers that course. CS50X is a self-paced MOOC, but the students at Harvard who take CS50 are often doing that course in approximately 3 months or so.


I took the picture out anyways. Simplified the resume, takes up space.

I’m going to repeat something @astv99 mentioned…

Make sure all your correspondence is reviewed for the above. If you need to, use word processing software to write your text-copy and then copy/paste it into your website, profile, email or wherever you are using it.

Thanks. I’m using grammarly (free version), and I integrated it with MS Word. Absolutely amazing!
EVERYTHING job search related goes through grammarly or ms word (with grammarly)

1 Like

another thing:

Triplebite and codefights

have you tried them?

I-d try the first and after I get good and solve sufficient challenges, will go for triplebyte.

1 Like try getting experience with small jobs.

I am so Happy to see your positive criticism. This will really help him and others who see this post.

I got tech jobs by walking in the door and asking about positions. I have even got interviews right on the spot doing this and jobs. It is a little nerve racking, but if you are honest and are willing to learn they may just take you in.

Research the company at least a little before walking it. You could drive up to their parking lot do a google search about them, then walk in. Make sure to have a resume with you about your tech skills.

You can go to the a local college or high school even and ask them to look at your resume online and your printed one (for grammar errors and layout issues, etc.)

Also, Linkedin - Network with everybody in every company you might want to join. It is simple as asking people how they became a programmer in their company and how could you become one there? Learn about the companies you are looking at.

1 Like

Might have to try this soon. Though it may feel kind of strange just walking in the door to a random company, that might not even be working off Node.js, but the results are probably better than doing nothing at all.

It feels kind of overwhelming with all the advice and so many different things I should be doing along with a job, but going in in person definitely seems like its worth it (although quite time consuming).

1 Like

Think of it this way.

You get an email:
Hi Sir , could you hire me, I am only a figment of your imagination.


Glad to shake your hand - I love this work, I am willing to go the distance to be your best employee you have ever seen. This work is my love, and if you hire me, you won’t regret it.

Be honest, confident, positive, respectful. People love that. Go on and look at interview questions to get you prepared a little bit. It is more about how confident, happy, and respectful you are than always what you say.


Your concern is same as the majority of graduates these days. But in such a scenario, you can’t do anything except attempting more interviews or trying something different which can make you a living. As there is no confirmation about when you will get the job, its always better to keep a safer side by trying some other earning methods like doing occasional events or freelancing. However, these things may also take time (depends on your region and market), but who knows what will happen next. A lot of freelancers have started the same way and now they are doing good.

Below is the list of various freelance websites. I think you should atleast give few of them a try:

Agreed. I think your advice is solid.