Get an Interview Without Professional Experience in a Particular Language
In my last post about Honestly Evaluating Your Skills, I made the point that the number of years of experience you have in a particular language or technology is only a weak indicator of your level of proficiency in it.
This is an important point and one that has long been well-documented. For example, in the classic book, Code Complete, Steve McConnell explains:
“‘We want a programmer with five years of C programming experience’ is a silly statement. If a programmer hasn't learned C after a year or two, the next three years won't make much difference. This kind of ‘experience’ has little relationship to performance.” (2004, p. 832)
Despite this, experience remains the first thing that most companies look for when recruiting a new developer. It is sometimes even taken to extremes, requiring years of commercial experience with a trivial technology that can be learned in a day or so.
There have been many parodies of this situation, most famously “If carpenters were hired as programmers” written more than a decade ago.
Employers’ tendency to value experience above actual ability is a classic problem in our industry. I don't want to give the impression that you don't need any experience to be a great programmer. Time spent learning to program is vital experience. Unfortunately, unpaid experience is often not given any recognition at all.
Jesse McCulloch contacted me, asking for some advice. What can someone do if they want a job programming in a different language, but they don't have professional experience in that language?
Jesse has been learning C# for more than two years, and enjoys using it, but hasn't had any opportunity to use it in his current job.
Without previous professional experience, it is much harder to get an interview because hiring managers tend to doubt whether you have the required skills. Or to put it another way, your résumé doesn't provide significant evidence that you have the skills that are required for the role.
Even for an entry-level programming job, next to another person's résumé with previous professional experience, you are going to appear much weaker, even if you actually have better skills. If you are using a recruitment agency, they will probably identify this problem immediately and will be much less likely to put you forward for new vacancies.
Although it is more difficult, don't let yourself think that it's impossible. Not every company has these conditions cast in stone, and remember: you only need one job, so don’t be afraid to take a chance and apply.
John Sonmez has another article giving a great answer to a similar question: How Do I Get A Programming Job Without Experience. I recommend watching or reading his response now. In a nutshell, the advice pertains to becoming an entrepreneur. If you don't have experience in any programming language, then I definitely agree this is the best option for you.
If you are, like Jesse, currently employed in the industry but interested in a big change, then becoming an entrepreneur might also be a good idea. However, this is not for everyone, and I am going to discuss some alternative options.
The first thing that you must do is to practice using the language that you are interested in until you can comfortably write good quality programs in it. If you're not convinced in your own abilities, how can you expect to convince others?
Experience which involves working with other developers is important. There are many online projects available on sites such as Github and Codeplex where you can get involved and that will push you to keep learning and improving. If you decide to work on an existing project, you'll get the advantage of receiving feedback from other developers.
Almost any qualifications you can gain can help improve your chances. There are formal certifications such as those offered by Microsoft, Cisco, and Oracle. Many software companies value certifications from well known certifying bodies most highly, so it is worth considering obtaining at least one for yourself.
The main disadvantage of these certifications is they tend to be expensive. Whether it is worth it or not depends on a number of factors. They tend to be worth more earlier on in your career, and will stand you apart from those with equivalent professional experience but no professional qualifications.
Consider the value that you are likely to get from the course as well as the value of the certification. The certification may be what gets you the interview, but any course may also help you to impress interviewers. Almost any course will improve your knowledge, but you will only improve your skills if you spend time practicing them.
There are many more informal qualifications that you can gain for substantially less money. Most online training companies provide assessments on the courses that they provide. Some of the features offered include printing out certificates, creating a profile page featuring all of your qualifications, and adding your certificates to your LinkedIn account.
You have many different training providers to choose from, but I have a lot more information on Making the Most of Pluralsight if you decide to go with them.
Because qualifications are valued very differently from company to company, I recommend calling some recruitment agencies and seeking their advice. They may be able to tell you which qualifications local employers are interested in. Getting on good terms with recruitment agencies also means they can do a lot of your marketing for you.
Whichever certifying body or online provider you use, study hard and practice what you learn. Ultimately the qualifications you earn are likely to matter less than the work you do around them.
The process matters much more than the paper that certifies you, and how much you get out of the experience will vary dramatically according to your attitude and your perseverance when it gets tough.
Once you are at the point where you feel your skills are strong enough, there are two approaches you can take.
A Killer Résumé
The first approach is to add detailed information in your résumé about the work you have done. Include all qualifications, a hyperlink to your best work, and an explanation of the design decisions that were involved and how you resolved challenges. The aim here is to dispel any notion that your lack of professional experience has any bearing on your competencies.
Consider hiring a professional writing service to improve your résumé, or at a minimum, get at least one friend or family member to give you feedback on what else can be improved.
Having a thorough résumé will substantially help your chances if it is seen by a technical manager or developer. You should note that non-technical managers and recruitment agency staff are less able to assess this information and are likely to discard your application based on the simple rule of lack of professional experience.
The traditional document is by far the most common format, but a boring paper document isn’t always strictly required.
If you’re willing to put in the extra effort, an interesting way around this is to use your programming skills to produce your résumé. You can stand out from the crowd by creating an interactive résumé. Creative works, such as this excellent example by Robby Leonardi entertain and impress far more than any Word document can ever hope to.
If the idea of a different kind of résumé appeals to you, you can find some more revolutionary ideas in David Crandall's Anti-Resume Manifesto.
The second, and preferred, approach is to not directly apply for the job in the first place. Instead, you get a friend to recommend you for a position in their company. How can you do this? The key is networking.
There are many things you can do to build up your network, and my post, Reach Out And Grow With Professional Networking, introduces some of these.
I especially recommend meetups in your local area. Here, you'll get to know people with professional experience in the language that you're interested in. If there are more skills you need to learn, you'll find people who are happy to discuss those with you and help you improve.
If your knowledge is strong enough, offer to give a talk on the subject. The thought of doing this is probably terrifying. Public speaking is always difficult at first, especially if it covers a language you've never worked with professionally to be presented to those with more experience. But if you are able to do this, then you have really proven yourself. Think about how impressive it will look. Any attendee would see you as a valuable hire at this point.
If your knowledge isn't strong enough to give a good talk, it is still a great networking opportunity. Ask others where they work and if they are hiring. Even if they aren't hiring now, they might be soon. Follow them on a social network such as Twitter or LinkedIn, and keep in contact with them.
Where to Go From Here?
Job hunting without professional experience can seem like an insurmountable catch-22, but really it is just a hurdle to leap over. There are always many different ways for learning new skills and selling your skill-set to employers. In summary you could:
- Become an entrepreneur – If this option appeals to you, read the advice of entrepreneurs Syed Balkhi and Chris Lema. If you have a Pluralsight subscription I also recommend Dan Appleman’s course So You Want to be an Entrepreneur?
- Gain qualifications – These will show your commitment to your work, teach you valuable information, and make it much easier to sell your skills
- Work on your résumé, adding a multitude of reasons someone should hire you
- Hire a résumé writing service – Professionals Have Professional Looking Resumes
- Develop your own interactive online résumé
- Become known for your open source development work – Many excellent developers consider this to be even more important than your résumé
- Network with many industry professionals, including those whom you want to work with
If you have a copy of Soft Skills, make sure you read Chapter 5 on hacking the interview. The whole of Section 2: Marketing Yourself, and Section 3: Learning, is also highly relevant to improving your chances of getting the job that you're after. Finally, most of the advice in Section 7: Spirit is going to be crucial for you.
Whichever option(s) you choose, your self belief is your biggest asset to getting over this hurdle. Believe in yourself, even in the face of disappointments. Act as the person you want to be, and be the person you want others to see you as.
“I am not who you think I am;
I am not who I think I am;
I am who I think you think I am.” – Thomas M. Cooley
I wish you the best of luck with your job search. Persistence will pay off for you.