Overcoming a lack of experience

Hello friends,

I’ve been applying for jobs and trying to get my foot in the door of nearly every company that comes into my inbox for the past six months. However, I’ve only been in two interviews and every application seems to require a minimum of several years worth of professional experience that I simply don’t have. How do I get past that?

3 Likes

Hey @tlannoye11! The application process is pretty tough :confused:

Some general advice:

  1. Make sure your resume is up to par – I’d be happy to review it if you’d like, but be sure to get it in front of other software engineers
  2. Where are you located? And are you willing to locate? It’ll be easier to give advice if you give general information (city vs suburb, what country, etc.)
  3. Be sure to network! There’s a lot of options here but you could attend local meetups, or go on Twitter/LinkedIn and start making connections
  4. Keep making personal projects – pick up new things to learn and build out apps start to finish and document/publish your process.
  5. Apply apply apply – Even if you don’t obviously fit the job, if it says < 3 years of experience required, go ahead and throw your hat into the ring. Search on all sites, including Glassdoor, LinkedIn, Indeed, etc.

Let me know if you have any questions about any of these!

5 Likes
  1. Certainly! Where can I send it?
  2. I’m located in Madison, WI and unfortunately that isn’t going to change anytime soon. I have a young family and a newly renovated house, so I can’t afford to move.
  3. I’ve kept a log of all my applications to make sure I don’t overlap. I get over a dozen job emails every day, and at least one unsolicited recruiter call every week (which I also log). I’m also on LinkedIn, Twitter, Indeed, Dice, ZipRecruiter, and Monster.
  4. I’m in the middle of rebuilding my personal website, I’m taking a Udemy course on React, and I have another React and an Angular course paid for one Udemy.
  5. As I said above, I’ve logged all of my applications for the past six months on a spreadsheet, which I routinely share with recruiters.

@tlannoye11 I have not seen your personal website, but I would suggest making a few projects that are really polished looking. Strive for quality over quantity, make sure they look good on mobile as well as desktop, test them on multiple browsers and monitor sizes if possible. Put your projects on your resume at the top, explain the challenges you faced in creating them and the technologies you used. Post your projects in the “Project Feedback” category and you can get valuable feedback.

1 Like

Contributing to open source is a great way to overcome the experience hurdle. You’re committing production code to a real working software project. You learn how to use source control in a team environment, how to write tests, collaboration with other software engineers, etc. There are a lot of stories out there of people being hired because they collaborated on an open source project.

There are several sites designed to help people find the right project. Try https://www.codetriage.com/ for starters.

2 Likes

I mean everyone here at some point was in your shoes or currently in your shoes. If you have the skills and can demonstrate them you should just apply to as many as you can.

The interview process will give you good feedback as to what you should be improving on.

2 Likes

This sounds like a reasonable idea, but it quickly turned into a huge rabbit hole.

I went to the Code Triage site you mentioned…
…from there, I created an account and started to look at the projects…
…but then quickly realized that I don’t know how to contribute to a project…
…so I started Googling that subject, and then realized that I don’t know how to use GitHub…
…so I started Googling THAT subject, and realized that there are whole courses on that subject…
…and I’m already drowning in courses that I’ve started but not finished…
…not to mention I still haven’t finished re-doing my personal website…
…and now I’m starting to question whether or not I have the time or the ability to learn all of these things…
…which led me to even more questions: How do I know which skills I need to prioritize over others? What happens if I try to learn one skill and the next person tells me to learn the one I didn’t pick? How do I know if I’m missing something important?

Good grief, this is spiraling out of control! :frowning:

2 Likes

Look at Fastest Way To become a web dev by Codedrip. This video speaks directly to some of your comments. Hang in there you will make it! It’s a video on YouTube.

Oh boy. I know how overwhelming all of this can be at first. Using git is a lot easier than it sounds. I’d compare the amount of knowledge it takes to get up and running with git to be about the same as it takes to make a simple static HTML site with only a few tags. Also, basically only one person (Linus Torvalds, the creator of git and Linux) really understands it. See this relevant XKCD.

git

Just kidding, obviously but you don’t have to be a genius to figure it out. As for the importance of learning to use source control, I’d say it’s a must have skill. Every professional developer that works on a team, and most who work alone uses source control, and the vast majority use git. I would argue it’s as important as knowing HTML to a frontend dev.

As for learning to cut through the noise and decide which skills to prioritize, that is a skill in itself which will take a lot of work. Coders have strong opinions and LOVE to argue about the superiority of their chosen tool. There’s no such thing as a perfect skillset. I would talk to a few successful people in the coding discipline you want to get into and and pick the skills you wanna learn from their advice. Maybe they are missing a thing or two but that’s okay because you’re gonna be constantly learning and growing as a coder anyway. Try meetups, reaching out on linkedin, coffee chat, forums like this one, twitter @ mentions, etc etc.

If you have any specific questions I can do my best to help. I’m not a software engineer but i do a decent amount of coding in my role and I’ve been in the software industry for a while.

1 Like

Do freelancing, either on a site like Upwork or by networking or finding businesses in your community that need a web site or web app (I would recommend the latter if possible). This way, you will have “real world experience” to put on your resume.

2 Likes

there are companies which cannot afford train junior developers (small companies, startups), but large company can and do, but what do they require - ability to learn fast and motivation (to earn money BIG - is bad motivation, at least for recruiters), so my advice - show some passion to code (even if you don’t), motivation.

all that “contribute to open source” stuff - doesn’t work, people have facebook/google behind them, and give f*** about other PRs - my advice, don’t waste time on it.

udemy/pet projects - works

and don’t give up!

I’ve been where you are.
My two cents:

General Tips

  • Write out goals, or things you need to accomplish as next steps in the projects you work on. It is very difficult to feel like you are moving forward when you see the mountain of what you don’t know in front of you (btw this mountain will likely always exist even years down the road). However when you accomplish something, even if it is really small cross it off the list. When you see a list of a bunch of items crossed out you can visibly see your progress.

  • Compare yourself, to yourself yesterday, not others. We can sometimes compare ourselves to others who have years of development experience beyond us and get upset when we feel we are not as smart or accomplished. Make a big list of all you’ve accomplished and look at that instead of someone else.

Projects
Personal projects you work on are huge. I cannot emphasize this enough. I have been the interviewee and interviewer and personal projects are an extremely powerful tool in the interview. Many interviewers may just question you on your projects as it is such a tangible piece of evidence that you CAN in fact write code. For me, I’d say the reason I got into, and got new Programming jobs was mainly through personal projects. Pick something you enjoy building because that will help you keep coming back to work on it. For me it was games like programming chess.

Schedule
get on a schedule for coding atleast 3-4 days a week for 1-2 hours, or longer if you can take it. I personally did this by twitch streaming my coding. I didn’t get tons of viewers but it gave me an audience of people to keep me accountable. If you really want to be a programmer you have to keep coming back and practicing your code. You don’t have to be really smart to be a developer, just persistent. For anyone seeking a coding job, this is really good news. You will have bad days where you doubt everything and think you’ll never make it, but when it all feels like too much and you’re overwhelmed quit for that day and come back the next day. You’ll soon find that learning a lot is hard and that when you’re doubting everything and feel dumb it’s actually a good sign that you are growing and you are right where you should be.

Good luck man. If you really want it and do what I say above, You’ll get there.

2 Likes

The best way to get experience is to go out and build stuff. If jobs require X Y and Z knowledge, go see if you can build something with X Y and Z. Its probably hard, require a ton of work and time, but that goes for everything worth learning, and is the “cost”.

This is the field in general. There wont be a day where you go “Ah I know 100% of everything about that!”. If you ever get to that point it probably means you aren’t learning anything worth learning.

So I assume you spent maybe 20 minutes or so going through this list and you learned maybe 5 different things you could learn, and roughly why you would want to learn them. The first step of learning anything is figuring out what you don’t know. The simple task of trying to do 1 thing opened up a bunch stuff you just realized you didn’t know. I’m sure there are some things in there you might not really want or need to know, but it is a start.

Its ok you don’t know all of it, that is to be expected when starting out!


The other thing I usually recommend when it comes to getting experience is spending your time wisely. You can take 50 courses and learn less about X than if you just started trying to use X and fighting your way to getting stuff to work. (Google is your friend)

The best quote on the topic is simply “Experience is experience”. Experience in failing is arguably more valuable than going through a tutorial walk-through where you don’t run into issues, and just trying to memorize everything you’ve seen.

Your the judge of what you need, not someone else, and it depends 100% on your own personal goals. I could say “go learn React, its the best thing ever!”, and you can go skim over what its about, how its used, and see if it aligns with what you want to do. If it is something you want to learn you can dig a little more into it to see if there are per-requisits to learning it.

Only after doing such, you can personally gauge what you should really dive into next. Don’t jump around and learn stuff if you have no personal interest in it, or seem to need it at the time. An example would be cryptocurrency, which was all the rage when bitcoin was worth a ton of $$$, but odds are you don’t need to go learn it right now.

When I say “learn” there are different levels. The first level is just becoming aware with what something is. For example, I recommend knowing what webpack is, but I don’t recommend trying to learn 100% of its api and how to use it unless you actually need it. The second level is the one where you go actually use it. I believe most tutorials go into the first level with varying degrees, but they will never get you to the second level no matter what

Finally, I want to bring up how anyone can gain experience with development/coding, as you only need three things. Time, grit and an internet connection. You need time to read, learn, struggle, succeed, build and destroy. You need grit to stick it out when you do get stuck, when you do fail, and when you just can’t get stuff going. Having an internet connection means you gain access to tons upon tons of resources for free.

Good luck, keep up the grind, and get that experience!

1 Like

There are some good ideas in this article by Laurence Bradford at Learn to Code with Me:

Also take a look at the Skillcrush blog. They often post articles and videos on getting your first job in tech (especially if you have zero experience or haven’t a CS degree), such as:

1 Like

Hi,

Everything said above is generally true.
Most of the people in the domain passed in the same route.
What’s happening with you is normal.
Having passion and persistence (i.e. GRIT) will shorten the trip may be a lot.
Just concentrate on one technology path and keep going.
You have to be in a position to prove that you will be definitely useful to the recruiters.

Good luck.

It’s not an easy process. It is very difficult to get your start. Here is a doc I wrote up on my thoughts/experiences.

You’ve received a lot of advice in this thread already, but there is one thing that jumped out at me when I read your post.

You say you are receiveing and responding to lots of job emails, which is great, but it’s also a fairly limited way to see what jobs are available in your area.

Job boards list lots of opportunities, but they are usually used by companies that think the primary way to hire a candidate is to go through a job board. To me this suggests they are pretty unimaginitive, under-resourced, and/or passive - these are not typically companies that take a ‘risk’ on unexperienced, self-taught developers despite the many benefits a company can get from hiring someone so obviously motivated and tenacious!

There is another market of ‘hidden’ jobs where companies either avoid these types of job boards, or use other methods to find talent. Typically, companies with more unconventional recruitment methods are more open to hiring unconventional candidates.

To this end, I would recommend attending meetups as @lekha suggested above (incidentally this is how I landed my first job). And also do some research into the companies that seem to have an exciting mission, interesting product, or company values you really connect with and reach out to them to ask what someone in your position could do to land a position at a company like theirs in the not too distant future or whether they ever take on interns.

None of this is guaranteed to work, but it puts a bit more power in your hands and shows that you are more proactive and passionate than the average job board responder.

Also, learn git!

It’s not that hard to do the everyday stuff with, but it is almost universally used in dev jobs.

Good luck!

1 Like