Quote:
Edit for OP: I'm wondering what your first 3-6 months looked like? Were your day structured? Did you have a portfolio on Github of projects you created? Other than the lack of experience, were there other reasons you couldn't get a job? Entry level code-monkey type jobs are constantly popping up in my news feed and all of my friends that are hiring managers say they can't fill them fast enough. They're also saying that the kids coming out of college aren't necessarily ideal candidates because they don't have real-world experience in a corporate environment, so I'm interested in hearing your thoughts on why you couldn't quickly land something.
Good luck to you!
It sounds like you are starting off from a better position than I was as you know more about what you want to do and have more applicable experience.
When I started to learn programming (1 month after I quit), I had never before worked in a Linux/Unix environment (just Windows) and had only basic knowledge of HTML/CSS and some experience with macro/script writing (Word/Visual Basic/perl).
I had a long learning curve just to get up to speed with installing and managing software from the command line. I didn't even know what Github was until 4 months after I quit.
When I did start job hunting for a coding job (9 months after I quit), I had some projects on Github and some apps deployed on Heroku, but while they demonstrated a basic competence, none of them were really impressive. I should have paid or collaborated with a graphic artist/web designer to get a professional look for my apps. I'm more than competent with html/css, but I don't have much interest in or talent for design, and my portfolio was dull.
There are indeed a ton of low level coding jobs out there, and with your background in IT if you can demonstrate some solid coding ability you will not have too much trouble landing a job (if you know servers, look into DevOps...).
What I think was the problem for me was that my background was not obviously applicable to the jobs I was looking for. I had a lot of project management experience, which will ultimately be useful, but that is something more valuable in a sr. dev than a jr. dev -- and possibly might have been seen as a negative (e.g., that I might not be comfortable being "junior").
My sense of why I had so much trouble finding a job in an industry that is desperate to hire people came down to 2 primary reasons:
1. Competence. There were some jobs where I just didn't have the technical chops they required. I remember one interview where I flubbed some SQL questions and another that had a coding challenge that was primarily Test Driven Development with Rspec, which I'm just not that good at. I could have learned either of these fairly quickly given some support, but they wanted someone who could walk in the door with competence in these things, and I could not offer that.
2. Culture Fit. Most of the jobs I interviewed for were at start ups where the average employee age is 15-20 years lower than mine, and where they placed a lot of importance on team bonding. I'm middle-aged, married, and have a kid. I'm not a good culture fit for a startup full of single 22-33 year olds.
Oh, and the reason that most of my interviews were at start ups is that bigger companies tend to weed people out who don't have Computer Science degrees or relevant experience (which your IT work should count as).
As I couldn't do much about #2, I focused on #1 and that was where freelancing really benefited me. Companies are much more willing to take a risk on a freelancer as getting rid of one has almost zero downside. But doing 20-40 hours of freelance work for a company is a much better way to prove your competence to them than a 2-4 hour interview/coding session, and that is what finally happened for me.
So, based on my own experience, I would definitely suggest freelancing as soon as possible and going through the trouble of (1) picking a business name, (2) getting a custom URL, (3) creating your own business website, and (4) getting business cards made (go for non-glossy stock so people can write on them).
On the technical side, if you are thinking of web programming, I have 3 suggestions for you: javascript, javascript, and javascript.
It may change in a year or two, but right now javascript seems to be where all the demand is. Node.js on the server side with Angular or React on the client side.
Some type of database experience is also really valuable. You should have at least a basic working knowledge of MySQL, PostgreSQL, or MongoDB.
You do probably need at least one more language though if you want to do more than front end work.
Python is probably the next most marketable language. I love Ruby, but there doesn't seem to be as much demand for it. PHP/Wordpress is not as cool, but there is plenty of demand for it.
On the personal side, I tried to keep myself structured and focused. For me, the time when my wife was at work and my son was at school was always "work" time. Aside from taking care of some household chores (shopping/cleaning), I would focus those hours on studying, job hunting, networking, and portfolio building.
Most weeknights I would also put in another 1-3 hours after my son went to bed.
Sometimes I took "off" for the weekends, but I frequently would put in 2-6 hours a day on Saturday/Sunday with studying/job hunting.
Last edited by jb9; 03-18-2016 at 09:58 PM.