Are you interested in a career as a computer programmer? Here's the scoop on what you need to get started including education and experience requirements, where to find job listings, and tips for acing an interview.
Education and Training Requirements for Programmers
Most computer programmers have a bachelor's degree with a major or concentration of coursework in computer science or information technology. Some programmers earn an associate's degree in a computer-related discipline. A few programmers may only have a high school degree, but in these cases, they have accomplished a significant amount of programming work.
Programmers can earn certifications from software companies or product vendors to demonstrate proficiency in various computer languages or programming on certain platforms.
Computer programmers need strong analytical skills to generate the code to automate complex processes. They must be able to interview clients or end users to determine their technology needs and communicate options for programs in a language that non-technical users can easily comprehend. Problem-solving skills are required to troubleshoot issues when programs don't function optimally. Programmers must be detail oriented and precise to create code to exact specifications or find minor problems in long streams of code.
High school and college students aiming for programming jobs should consider creating applications for digital devices as a way to demonstrate their programming acumen and creativity. Most high schools now offer programming courses which can be an excellent testing ground for aspiring programmers.
Research the programming languages and skills in highest demand by searching Google with phrases like "best computer programming skills" or "most important computer programming skills." Write programs that showcase these skills with the help of online tutorials, books, and courses.
How to Find a Job as a Computer Programmer
Candidates who can show prospective employers actual programs which they have created will have the easiest time landing jobs. Programmers should create a web-based portfolio of their programming projects which can be easily shared with employers and networking contacts. Obtain alumni contacts through your career office or from your faculty.
Reconnect with previous employers where you worked as an intern or even as a basic service employee, and ask for introductions to computer professionals whom they know. Reach out to family friends and Facebook contacts and ask for referrals to the computer types whom they know.
Approach these contacts to schedule meetings to get some feedback about your portfolio and advice about your job search. These informational interviews will give your contacts a chance to gain an appreciation for your skills and can often lead to referrals for job interviews.
Utilize specialized IT websites like Dice.com to generate a list of job leads. Search job sites like Indeed.com, Simplyhired.com, and LinkUp.com by keywords like "programmer" or "computer programmer" and by your favorite computer languages to expand your list of job targets.
If you're a college student or graduate, check with your career office for job listings and recruiting opportunities.
Check out IT job fairs, like UNCUBED, which focuses on jobs at startups, in your preferred locations for employment. Dream a little. Generate a list of your ideal IT employers, visit their jobs websites and apply for jobs. Review lists like Forbes "Best Companies to Work For" to generate some ideas.
Interviewing for Programmer Jobs
Interviews for programmers tend to be quite different from the standard interview process. Interviewers will ask typical behavioral questions to determine if candidates can reference examples of problem-solving, troubleshooting, communication with clients, and users and tolerance for frustration.
Recruiters will also test the technical knowledge of candidates by asking them to explain and define programming terms and processes.
Some interviewers will pose hypothetical problem-solving questions which will test the thought processes of candidates. For example, you might be asked to figure out how many cars pass over the George Washington Bridge on a typical day. Employers will be interested in your logical reasoning skills rather than a right answer.
You may be asked to create a sample program using pseudo code to solve a hypothetical problem on a whiteboard. Employers will be looking for you to demonstrate a logical approach to programming.
Your emphasis should be on your process and how you explain your method. Interviewers sometimes ask programming candidates to review the code for a program to identify and correct any errors.
Check Company Websites
Many large tech companies have interviewing advice specific to their company available online. For example, Google has a Hangout on Air where Googlers talk about how they interview candidates at Google and share advice on the best way to prepare for a technical interview.
Amazon has a list of FAQs including information on the interview process, what to wear, and what you will need to provide.
Follow Up After the Interview
Effective follow up after your job interview is critical. Compose a thank you email immediately after the interview and clearly convey your enthusiasm for the job and why you think it is an excellent fit, as well as your gratitude for the opportunity to interview.
When you are asked to send in some reference letters from former employers, you'd know your chances of being hired are high. Don't blow the chance. Reach out to trustworthy former managers and coworkers and ask them to write positive recommendations for you. If they need some guidance on what to include in their letters, here are some helpful tips you can send them.