25

I'm currently working on a project with a new programmer. How do I help him speed up his work? He often asks me questions, and I pair programmed with him in backbone.js (a part of the project).

Now I want him to handle the project himself so I can concentrate on other things to speed up the process. He doesn't want to Google things or ask on a forum if a problem comes up. He just comes to me. What should he do? What should I do? When I force him, then he does things quickly. How can I motivate him to do more work on his own?

WebDev
  • 839

10 Answers10

42

Say "I'm a bit busy right now, you can ask on stackoverflow.com if you're really stuck." Eventually he will hopefully get the clue. Also, next time he comes to your desk say "Hmm I don't know, let's Google that and see..." or "Let's check the API docs." The combination of these two has worked for me with co-op students in the past - eventually they see how I search and find information, then they learn how to do it as well.

WebDev
  • 839
23

Much like is required on stackoverflow.com when questions are asked, say "show me what you have so far". If that is a big fat nothing, send him packing, with some hints on what to search for of course, until he has something concrete to ask about.

8

The best way to get someone up to speed is to... well, bring them up to speed. It sounds as if you are being pretty harsh on the person. You should be encouraging questions, not squelching them to get the results you are after. Even great developers do not know everything when they get to a new place. Now if his questions are along the lines of "How do I split a string" (aka, easily google-able), then you can blow him off. But try to appreciate the fact that people cannot be instantly productive at a new job, and you should expect lots and lots of questions.

4

Could it be a confidence problem? If it is possible that he's asking you all these questions because he's scared of failing, it might be good to talk with him about that.

For example, when I mentor interns, I let them know that they are going to fail at some point. Failure is part of the game. But, learning from the failure can happen when they ask themselves questions like, "what have I tried to do so far?" before they come to me for answers is what is really important. When they begin asking themselves questions, and fighting for answers, their knowledge and confidence grows.

David Weiser
  • 615
  • 4
  • 9
3

It could just be an issue of self-confidence, where he doesn't think he's capable enough on his own to produce work that meets your expectations. This is pretty common for new developers that get paired with senior ones.

Perhaps instead of "forcing" him to "go away", try encouraging his work and challenging him to tackle problems on his own. I'd be a pretty safe bet after he successfully completes some tasks without your assistance, he'll grow more accustomed to it and eventually loath coming to you for help.

Brandon Moretz
  • 753
  • 1
  • 8
  • 16
1

Set aside some uninterruptable time for yourself. The pomodoro technique recommends 25 minute intervals. If he shows up in the middle of it, just say you'll come answer his question afterward. If he doesn't really need your help, he will have already found the answer by then. Eventually, he won't bother you for the simple stuff.

Karl Bielefeldt
  • 148,830
0

It seems like you have trained him that he can always come to you for an answer. Furthermore, it seems like trained him to think he can use you as a crutch for things he is not comfortable doing.

Instead you need to let him know that you are not his only resource. Show him some of the ways you would go about finding the answer rather than just giving him the answer. You said he can get work done when pressured, so it might be that he is lazy and you are the easiest solution. Remember, you do not always have to say yes. If you have more important things to do, tell him that you would love to help, but have too much else to work on.

0

If the question has a short answer, then just answer it. If explanation is required, and you are not the authority on the subject, or if you don't know the answer, then tell them where to go look. Eventually you should be able to tell them where to look in a few syllables. "... HTML select?" "Google: select MDN" "How do I ... checkbox?" "MDN". "Oracle time zone conversion?" "RTFM 'at time zone'" If the questions are inappropriately frequent, then you will need to somehow signify that you are unavailable.

kevin cline
  • 33,798
0

Why is he coming to you? Is he afraid of making a mistake and thus comes to you so that you could be used as an excuse if something doesn't work? Is there too much project-specific knowledge you know that he couldn't find easily on his own? You may want to consider why whatever it is that you do is asked here.

You should see how far is he getting on his own and how confident is he in his abilities. How quickly upon having a problem is he coming to you? Have you considered that you could be a mentor to this new programmer and so he is trying to shadow you so that he knows what you do, how you do it and with whom you do it.

JB King
  • 16,775
0

Set a time where questions can be asked without interupting you. It's odd that this person only asks questions that can be Googled and nothing specific to your projects or how your team does things. Start tracking the questions. You frustration may be clouding your perception of the problem.

JeffO
  • 36,956