The key to getting your newbie developer foot in the door is to show potential employers you have what they're looking for. These tips will help you do that.
It can be frustrating to be an entry level developer trying to find work. It seems like every job ad asks for more experience than you have or expertise on tools you have never worked with, at a salary that barely pays back those student loans. While there is not much that can be done to change the employer side of the equation, there are lots of things you can do on your end to make it easier to find a job.
1: Talk to other developers
The best place to hear about new job opportunities is from other developers. Recruiters are great, but developers can give you leads on jobs that might not have gone to a recruiter yet or that the recruiter has been struggling to fill. They may also be able to give you a personal introduction or even a recommendation that will set you apart from the crowd.
2: Be prepared for a long journey
If you want to get work in the development industry, you can't start looking for work a month before you graduate and hope for the best. If you have been working and are looking to change jobs, you still need to understand that entry level developers usually look about the same on paper. Making yourself stand out from the pack is essential if you want to be hired quickly and into a good position. And that is a process. Simply going to the "right school" or working with the "right tools" is not enough. There are zillions of .NET and Java and PHP developers out there with zero to three years of on-the-job experience. If you do not start laying the groundwork in advance, it will be hard to show why you are a better hire than anyone else.
3: Work on an open source or personal project
One of the best ways to differentiate yourself is to show an actual project you have worked on. And if you did it outside the workplace or school, where you have people hounding you to get it done and guiding you, even better. It is easy to say, "I worked on a timesheet application in my first job, but I can't show you the source code." It is rare that someone can come in and give a demo or leave a copy of the code with the interviewers that proves that they can write quality code. And working on your own or in a loose team shows that you do not need someone micromanaging you to get your work done, which is always an employer's concern when hiring entry level developers.
4: Be visible
Working on a project will raise your visibility. So will getting involved in the developer community. Helping people out in forums, attending local user groups, and generally trying to be helpful and friendly both online and offline will go a long way to helping you get hired. Will you be able to answer all the questions people have? No. But by being willing to help out, and doing the things that others may be too busy to do, you'll make an impression and people will remember you. At the various .NET user groups I attend, for example, helping out is a great way to meet recruiters and people who can clue you in to new jobs.
5: Do not be picky
A critical mistake that many entry level developers make is to think they are "above" a certain job or technology. I hate to break it to people, but this is an industry where you have to pay your dues. Yes, working with some technologies or in some industries may be potentially career limiting, but they can give you the experience you need to step up to the next level. For example, one company near me likes to hire people directly from college to work on legacy COBOL applications. While COBOL may not be the most in-demand skill, those folks are learning a lot about the Big Data techniques and the enterprise environment. That kind of experience will be a big help for them to move on to other positions in the future.
6: Understand the market
You should craft a resume and a skill set to best meet your target job. Take a look at job ads and see what kinds of skills are in demand. If you have those skills, highlight them on your resume. If you don't have those skills, learn them. Try to get an idea what other job seekers have as skills and experience and make sure that your resume shows how you are different from them.
7: Understand yourself
People often have a pile of skills and experiences that they do not consider useful but that someone else will find useful. For example, you may be tempted to leave out your work as a shift manager at a convenience store. But in a sea of entry level resumes, a leadership position like that can help you show why you should be hired. Don't go overboard, of course; putting your experience as head of the local Spinal Tap fan club is not going to win you any jobs. But if the experience or skill could be useful in a job (or was used at a job), it is probably worth fitting onto the resume.
8: Learn to interview
Interviewing well is generally something that comes with experience. It combines the toughest parts of a sales job with trying to talk about yourself, which makes it uncomfortable for a lot of people. There are a lot of great tips out there for interviewing, but the best way to learn to interview well is to do a lot of interviews. Role playing with someone else is a great way to get an understanding for what works and what doesn't, especially if you practice with someone who is more experienced in the job market.
9: Fit the resume to the job
Trying to get hired as an entry level developer is all about standing out. If the people reading your resume have to struggle to find what they want, they will quickly move on to the next one in the pile. Before sending your resume in, look carefully at the ad, follow all directions to the letter, and make sure to emphasize the skills and experiences that the ad is looking for.
10: Do not be discouraged
Software development is a tough industry. Competition from overseas and more experienced people who have struggled to find work can make it difficult to find a job right away. The good news is that the market for software developers still seems to be pretty strong. The real issue is that there is a misalignment between the skills employers are looking for and the skills that the available people have. The more that you can show employers that you have what they are looking for, the quicker you can enter the job market.