No degree? No Problem
(some hard knocks may apply)
How to get into Web Development with NO degree and NO debt.
I woke up this morning listening to MPR reporting on 800 newly unemployed workers from the now former Ford Ranger Plant. In that report a couple lamented the end of a time when someone could get a good job, work hard, and achieve the American dream of a nice home, & enough money to raise kids and retire.
Fortunately it’s still possible to get a good job making websites, it’s just not easy, but neither is working on an assembly line so lets suck it up and talk about a plan.
Is Web Development The Right Job For You?
The best advise I can give you here comes from a conversation with Robert Nelson about advise he’d give to a new developer. It went something like this:
There are two parts of this job, the really stressful part, and the really hard part. So you better really love programming or it’s going to be bad.
I can’t recommend enough to that you start playing around making websites as soon as possible. If you’re not fascinated with it, enjoy the complexity, and the terrifying quantity of things to learn, find something else to do. Programming is just not a job you can do and hate it.
I have talked to people who spent 2 years in a Web Development program, got all A’s, learned they did not like programming, and could not do it for a living.
Where To Start
Nobody, other than the Military, is going give you on the job training. You can get a job in Software or Web Quality Assurance (QA) that will give you exposure to people who can answer your questions, point you in the right direction, and get some relevant experience.
You’ll need to be able to follow directions, write well, & use a computer. Your job will be to use a computer to review websites & software to make sure it works & looks correctly. To be effective at the job you’ll need to learn about common mistakes, differences in web browsers, security issues to test for, and environmental factors that effect the user experience. To be good at it you’ll need to write bug reports that take less time to understand than they do to fix and use automated testing tools like Selenium to make yourself more efficient and valuable to your team.
The skills you learn in QA will make you a better Web Developer. You will use them all to write software, and I’ve never heard about them being taught in school so you’re not at a major disadvantage.
This is going to be a hard job to get if you’ve never done it before. If you can’t find a paying gig try for an unpaid internship. Everybody needs more testing of their applications and everybody is cheap. Do it well and in a year you should be making more than $15/hr, learn the automated testing tools, well, and you can get paid as well or better than most developers.
One thing to keep in mind is that bugs hurt developers feelings. Even if we don’t admit it they all sting, so be kind even when you don’t have to be.
Below are some QA Jobs in Minneapolis from my favorite Job site indeed.com, as I write this there are 560 job postings for QA pro’s so get after it.
Making The Transition To Development
It is going to take you at least a year to get really good at QA, it’s better than digging a ditch but finding bugs usually pays less than making bugs. Frontend Web Development like QA is one of those things that most schools ignore or do an AWFUL job of teaching so skipping the student loans and jumping right in is not a disadvantage. Frontend Web Developers usually get a web design in the form of a layered Photoshop Document (PSD) and convert it into HTML & CSS. Photoshop is a ridiculously expensive image editing program that I avoid like the plague, and is usually used by print hacks making bad websites, but that’s the gig.
HTML stands for Hyper Text Markup Language, it defines roughly what goes where on a website, it’s not hard to learn, you should have the basics down in about 8 hours of messing around. I learned HTML on W3Schools using a tutorial much like this one: http://www.w3schools.com/html. This one from Mozilla looks good as well and appears to be more current: https://developer.mozilla.org/en-US/learn/html.
CSS stands for Cascading Style Sheet, these files define what a website looks like. CSS starts simple, but is very hard to keep that way, back in the day when I got started it was MUCH harder, but modern browsers have made cross browser CSS support more consistent. Again W3Schools & Mozilla have some great free tutorials: https://developer.mozilla.org/en-US/learn/css & http://www.w3schools.com/css/. A good resource to see the impressive flexibility of CSS is http://csszengarden.com, it uses one HTML file but allows designers to submit their own images and CSS files to make it look drastically different.
CSS is one of those things that many people claim to be able to do, but very few can do well. It’s hard but writing good CSS is much like writing good applications. It will teach you the value of coding standards, consistency, comments, & reusability. I’m tempted to say so much about how not to write bad CSS but that’s for another blog post.
Your First CMS
So you can write HTML & CSS, but to market those skills you will need to pair them with one or more CMS’s. A CMS is a Content Management System, they allow users to login to a administration interface and write their own content. I’d suggest you get your own WordPress blog and play around with it. There are a TON of learning WordPress sites & resources but start with the source and you’ll be fine http://learn.wordpress.com. Getting really good at WordPress is hard but worth it, and you’ll definitely be able to move up the Web pay scale.
For this you’ll need a host to store it on, and a domain name to use to access it. I’d suggest Dreamhost.com for both, Dreamhost is cheap and allows you to do a lot of things with out knowing much of the details. Dreamhost.com is not very reliable, or fast, but it’s an excellent platform for learning about making websites. Once you know WordPress you can start going out and making websites for people, do this as much as possible. You’ll have to make several websites to get good at it. If you can charge for them, it’s not uncommon for people to pay $2,000 for a basic wordpress site, although $500 to $1000 is much more common.
Again this is going to take a year or more to get good at, many people stop here and make a career of making WordPress sites, but there is more money to be made and bills to pay.
Backend Development is mostly pulling things out of a database and pushing things into them with a bunch of stuff in the middle. There are some great self taught programmers but at this point a few classes will go a long way. I’d strongly recommend a intro to programming class, and a intro do database design class at a technical school like Rasmussen or Hennepin Tech. I got my A.A. in Web Programming from K-State Salina and I believe it was a great value. You don’t need the full technical degree to be productive, but the introductions to programming and databases will be a big help.
As far as languages lets check out Indeed’s Salary Trend data:
The salary graph makes Python & Ruby look great (and they are), but the demand graph below shows ASP to be in more demand.
It’s been my experience that ASP.NET and Microsoft languages pay well and have better tools that the other languages. Also Microsoft has released their excellent development tools in reduced feature set Express editions that are perfect for learning.
I use, and like PHP, however the money is clearly not in PHP.
Becoming a well paid Web Developer is well within the reach of anyone with a good mind and determination. It’s not easy, it’s usually stressful, but if you are crazy enough to like programming it’s a good gig with a ton of jobs all over the world.
If you have questions, any good developer will help you. We like to show off and we are all keenly aware that this stuff is hard, at least the first couple times you did it.