Simple, interview over phone, then in person. I was selected through a contracting agency, but mainly because of qualifications I had on my resume. For a programming position the main focus was on training, although personality is a bonus, its not the first requirement. You need to be able to self manage and work to deadlines with little or no supervision.