How To Become A Programmer With No Qualifications
You Don't Need A Degree To Become A Computer Programmer!
Recent years have seen large numbers of people learning to write programming code. A wide variety of websites have popped up which promise to teach you how to write code in any language you are interested in. You can check out my list of recommended online learning resources further down the page if you haven't yet started your journey, and if you can't make up your mind which language to learn then take a look at my 'programming languages for beginners' hub.
I've learned basic programming - now what?
This is a very common question amongst self-directed learners. They will learn basic programming skills from an internet course, but still feel like they cannot land their dream job or create the killer app which they have in their mind.
Although internet courses are very good for learning basic coding, they can only take you so far. Many people will complete one - or even two, three or more of these courses - and then find themselves at a loss as to where to go and what to do next. People who are looking to break into a career in programming often find that all of the jobs require either formal qualifications or extensive experience. If you took up coding to set up your own business then you may find that the course or courses you have taken weren't enough to equip you with the skills you need.
Fortunately I am here to tell you that you have already done the hardest part! If you are willing to continue putting in the time and effort then it is entirely possible to break into a career in programming without a degree or any other formal qualifications - or to develop your skills to the level where you can turn your vision for an awesome app or website into reality.
Online Programming Courses
- Learn to code | Codecademy
Courses in a range of languages, plus APIs.
- Learn by Doing - Code School
Learn to code in the comfort of your browser with video tutorials, programming challenges, and screencasts.
- Advance Your Education With Free College Courses Online - Udacity
Discover online classes taught by top instructors and industry experts. Take courses at your own pace. See what we have to offer.
- Free Resources for Children to Learn Programming
Kids can learn computer programming easily with these free to use websites and software downloads!
- The Best Websites to Take College Courses Online for...
Reviews of the best websites to take college courses online for free, or to get college credits for the lowest possible price.
Make Anything, Play with Everything
One of the main reasons why so many people complete an online programming course but yet still don't feel able to make anything useful or good - and the reason why completing courses like this alone won't be enough to land you a job - is because programming is fundamentally a practical subject. You just can't learn anything more than the very basics in a classroom - you have to learn through experience. You have to learn how to find the answers you need, how to solve problems, how various different things work (or don't work) together, and you have to build up your knowledge base and your own code libraries. You can only do this through experience.
You first step after completing a course should always be to make something. Don't worry if you can't make anything good - just make something rubbish. Many people seem to lose heart and think that they can't make anything after completing a course and then end up giving up. Anyone and everyone can make something! Just because you can't create that awesome app you were dreaming of, or develop a useful consumer product, doesn't mean you can't make anything. You really can't expect the first thing you try to make to end up being any good. if you took up pottery you wouldn't expect your first pot to be a masterpiece would you?
The most important thing you can do is just try to make anything. it doesn't matter how small or useless it is - just make something. It could be a simple text based adventure story game. it could be a very basic calculator. It could be just a single page of a website or a single feature like a contact form. It doesn't matter if you don't need and won't even use the thing you are making. It doesn't even matter if you fail - in fact the best thing to do at this stage is to try to make something which you don't know how to make. Research, ask questions in forums, and know that if you fail you have lost nothing - your program would almost certainly have been rubbish anyway so it doesn't matter if you don't complete it, it only matters that you learn and gain experience.
If you really can't think of anything to make then that doesn't matter either. Get yourself a website script written in your language of choice, or the open source code for a project you are interested in, and just try to make changes. They don't have to be useful changes. Just play around and try to figure out what things do and what you can do.
What Kind of Programming Career Would You Like?
Build a Portfolio Full of Useless Stuff
if you are trying to get a job in programming without a degree or any other qualifications then the most important thing you can do is to build up a portfolio of your work to showcase your skills. This portfolio really does not have to consist of useful things or commercial standard applications. Anything which can demonstrate your skills and creativity will serve you well. Many people like to create fun little stand alone projects.
These projects don't need to have any purpose or any way to make money. They might just make pretty patterns on the screen, or they may just be a simple version of something which is available elsewhere. The stumbleupon.com website is a popular place for budding web developers to share their useless creations with each other and the world. Lots of people just make single page websites to share here - recently I've noticed a lot of people sharing clock pages with various unusual designs, but the possibilities are literally endless. Building up a portfolio full of little projects like this is the best way to prove to potential employers that you can do the job, and will also help you to develop your skills to the point where you can make something more useful if you want to go it alone.
Contribute to Open Source Projects
Ideally you should get at least a bit of experience tackling smaller projects on your own first, but when you are ready then getting involved in open source projects is probably the best way to break into a career in programming for people who don't have any qualifications or work experience.
Open an account on Github and use it to find projects and organize your work. You will find that many employers will pay more attention to your Github account than to your c.v. when you apply for a job. Although many open source projects are quite big and difficult for less experienced programmers to get their head around, some projects are more open to beginners than others. Firefox, the popular open source browser, is a great example of an open source project which explicitly sets out to help less experienced programmers. If you have a bit of knowledge and experience, from completing a free online course and then tinkering with a few experiments of your own for example, then they will assign you a mentor who will support you as you set out to try to fix bugs or make improvements to the Firefox code. Getting a bug fix or some other code accepted and used in the Firefox browser is a great confidence boost and looks good on your c.v. The mentoring system is also an excellent way for solo self-directed learners to benefit from the wisdom and experience of more advanced programmers. For many people working on open source projects such as this is the final step in their learning process, which leads directly into a well paid job.
Get Certified Online for Free
You may not have formal qualifications, but you can still get some form of certification to prove your abilities. Many free internet courses, such as those at Udacity.com, will provide a basic certification of achievement to anyone who completes a free online course. If you are willing to spend just one or two hundred U.S. dollars then you could also get an internationally recognised qualification and U.S. college credits from sites like Udacity or Coursera.
You can even get certified by Microsoft for Windows app or .Net development through the software giant's free Virtual Training Academy!
If you want to become a programmer then you have to be willing to engage in lifelong learning. If you are currently unemployed then you have a great opportunity to use your time to learn more. Learn different frameworks and libraries that are relevant to the career you want. Learn new languages and, learn how to use different APIs. Learn how to do new stuff just for the sake of learning, regardless of whether you think you will ever need it professionally or not. The more you learn the greater the chances are that you will stumble on an opportunity you never thought of before, and the better your c.v. will look to prospective employers.
Although learning a wide variety of different skills or languages can be good, if you can pick an area that you really want to get into and learn everything about that one specialist area then you will have an excellent chance of landing your dream job. If you can specialize in a narrow skill set then you will be competing against a smaller number of other job seekers when you apply for a position, and you will be demonstrating to employers that you have a genuine interest in and talent for the specific business which they are engaged in.
Average Salaries of Programmers from Indeed.com
There are lots of opportunities for freelance programmers working from home. Taking freelance work can be a great alternative to regular full time employment, and it can also be a good way to build up a portfolio which could help you get a more permanent position.
The main problem with freelance programming is that you will be competing against a lot of highly skilled people from places like India - which has a tendency to drive down wages. Despite this, however, it is possible to earn a good wage like this, and even if you do end up taking low paid work it will still serve you well in looking for better paid work in the future.
Specializing in developing on a popular platform such as Wordpress is probably the best way to break into freelancing, as this is where most of the work tends to be. You will definitely need to start out by working for a low wage, but if you are any good then you can still earn a good living from this kind of work. One way to do this, once you have started to build up a good reputation with plenty of positive feedback on freelancing sites, is to build a team. If you are a native English speaker you can do very well out of being a project manager. You can take on clients from the US, UK et.c. and contract out most of the work to cheaper foreign freelancers. You can then provide quality control to make sure that the client gets exactly what they want, solve any problems which arise, build a network of the best people for each of the most common types of job, and provide clients with a point of contact with whom they can communicate effectively whilst still remaining competitive in terms of price.