Paul Verbeek: Developing Developers
Paul Verbeek (@heirow) was speaking at Side View about finding developer talent, these are my notes from his talk.
We're having touble finding developers because we're trying to hire experts. Start looking for ambitious beginners, people with a pasion. If you are self taught then it's harder to understand the value of an apprenticeship. It's harder to learn front end these days.
Look for someone who isn't a developer - if they are already a dev then they already know too much. They need the ambition and drive to work through an apprentiship. Interns are looking for a career, apprentices have chosen a career. When you start teaching you start to question how you do things - why am I doing things this way? Don't be afraid of this, learn with the apprentice. You can teach the apprentice what's important to you but give them what they need. Apprenticeship should only take a couple of months, they better know what they are doing after that as they will be working with you.
Make sure you will be a good coach - you need to put time into it. A good coach knows the subject, seeks out new information, is a motivator, knows the apprentice, is an effective communicator, is a good listener, is disciplined, leads by example and displays commitment. Should also be a good student.
Don't use recruiters, communicate with the community and apprentices will find you. Make sure they know what they are getting into and that you will get on with them. 40 hours a week is necessary. Find out what their ambitions are, make sure you can offer what they are looking for. Once you've chosen someone then find out what they know. Learn from how people answer, not just what they answer.
Work out how you are going to teach, how you learned is not the best way to learn - tech what you wished you had been taught. Pair programming is good for this, especially if you are the one doing the coding and they are asking questions. This will be very slow to start with but a fresh view is enlightening. Keep questions going in both directions. The most important thing about teaching is being patient.
Basics of front end: Structure of an HTML document. Ignore the head and focus on the body. Don't explain the history - start with the new. Teach how to find the right information. Webplatform.org have beginner's guides. Books make good homework. Conferences and local meetups are good places to learn and meet new people. Show them how to get the most out of twitter and GitHub.
Learn from other fields, if you have other experts at your company then have them spend time with them. Join company meetings to see how to deal with communicating in these situations. Make a joint checklist of what should be learned and keep reviewing that.
If you make the right impression then you will be able to find a place to be an apprentice - just be yourself, not what you think they want you to be. When you get it work hard.