Getting a junior developer to be more self-reliant

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty margin-bottom:0;







up vote
12
down vote

favorite
1












I'm a developer working alongside a young junior developer. Jimmy (not his real name) is reasonably astute, but always comes to me when he experiences minor obstacles. I understand, that nobody can be expected to know everything and needs help from more experienced people occasionally, but Jimmy is constantly distracting me with questions like "Why doesn't this work?",
and if I reply "Have you run it through the debugger and found the line that's causing the exception?",
He'll usually say "No, I thought you might know what's wrong"
In short, he's coming to me as first resort rather than a last resort and this is taking up my time. He doesn't seem to get that experience doesn't mean you know everything, it means you're more able to figure out a solution. I've tried explaining this, but he is still giving up at the first hurdle. I want him to know that he can come to me for help, but he needs to really try to figure things for himself as much as possible. Any advice would be welcome.



in response to Pay, by junior, I mean a fully employed young adult who is inexperienced.



Muffin Man - You've highlighted my concern about not wanting to become unapproachable. It's important that he does seek my help with stuff he can't be expected to grasp. As a little bit of background, he recently made some changes that fixed one thing, but broke something else and could have been very costly if it hadn't been spotted by the testers. After this, I said I wanted to review his code before it's checked it in to main branch. This isn't a punitive measure but he may now be feeling wary of doing anything. I'm asking how to deal with him in a manner that will give him more confidence in his own abilities rather than less.







share|improve this question

















  • 1




    Did you try telling him this?
    – Martin Tournoij
    Sep 1 '16 at 17:03






  • 1




    Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
    – Dan
    Sep 1 '16 at 17:17






  • 3




    So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
    – TessellatingHeckler
    Sep 1 '16 at 19:08






  • 2




    @Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
    – The Muffin Man
    Sep 1 '16 at 19:16










  • Related: workplace.stackexchange.com/q/9623/325
    – Monica Cellio♦
    Sep 2 '16 at 3:44
















up vote
12
down vote

favorite
1












I'm a developer working alongside a young junior developer. Jimmy (not his real name) is reasonably astute, but always comes to me when he experiences minor obstacles. I understand, that nobody can be expected to know everything and needs help from more experienced people occasionally, but Jimmy is constantly distracting me with questions like "Why doesn't this work?",
and if I reply "Have you run it through the debugger and found the line that's causing the exception?",
He'll usually say "No, I thought you might know what's wrong"
In short, he's coming to me as first resort rather than a last resort and this is taking up my time. He doesn't seem to get that experience doesn't mean you know everything, it means you're more able to figure out a solution. I've tried explaining this, but he is still giving up at the first hurdle. I want him to know that he can come to me for help, but he needs to really try to figure things for himself as much as possible. Any advice would be welcome.



in response to Pay, by junior, I mean a fully employed young adult who is inexperienced.



Muffin Man - You've highlighted my concern about not wanting to become unapproachable. It's important that he does seek my help with stuff he can't be expected to grasp. As a little bit of background, he recently made some changes that fixed one thing, but broke something else and could have been very costly if it hadn't been spotted by the testers. After this, I said I wanted to review his code before it's checked it in to main branch. This isn't a punitive measure but he may now be feeling wary of doing anything. I'm asking how to deal with him in a manner that will give him more confidence in his own abilities rather than less.







share|improve this question

















  • 1




    Did you try telling him this?
    – Martin Tournoij
    Sep 1 '16 at 17:03






  • 1




    Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
    – Dan
    Sep 1 '16 at 17:17






  • 3




    So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
    – TessellatingHeckler
    Sep 1 '16 at 19:08






  • 2




    @Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
    – The Muffin Man
    Sep 1 '16 at 19:16










  • Related: workplace.stackexchange.com/q/9623/325
    – Monica Cellio♦
    Sep 2 '16 at 3:44












up vote
12
down vote

favorite
1









up vote
12
down vote

favorite
1






1





I'm a developer working alongside a young junior developer. Jimmy (not his real name) is reasonably astute, but always comes to me when he experiences minor obstacles. I understand, that nobody can be expected to know everything and needs help from more experienced people occasionally, but Jimmy is constantly distracting me with questions like "Why doesn't this work?",
and if I reply "Have you run it through the debugger and found the line that's causing the exception?",
He'll usually say "No, I thought you might know what's wrong"
In short, he's coming to me as first resort rather than a last resort and this is taking up my time. He doesn't seem to get that experience doesn't mean you know everything, it means you're more able to figure out a solution. I've tried explaining this, but he is still giving up at the first hurdle. I want him to know that he can come to me for help, but he needs to really try to figure things for himself as much as possible. Any advice would be welcome.



in response to Pay, by junior, I mean a fully employed young adult who is inexperienced.



Muffin Man - You've highlighted my concern about not wanting to become unapproachable. It's important that he does seek my help with stuff he can't be expected to grasp. As a little bit of background, he recently made some changes that fixed one thing, but broke something else and could have been very costly if it hadn't been spotted by the testers. After this, I said I wanted to review his code before it's checked it in to main branch. This isn't a punitive measure but he may now be feeling wary of doing anything. I'm asking how to deal with him in a manner that will give him more confidence in his own abilities rather than less.







share|improve this question













I'm a developer working alongside a young junior developer. Jimmy (not his real name) is reasonably astute, but always comes to me when he experiences minor obstacles. I understand, that nobody can be expected to know everything and needs help from more experienced people occasionally, but Jimmy is constantly distracting me with questions like "Why doesn't this work?",
and if I reply "Have you run it through the debugger and found the line that's causing the exception?",
He'll usually say "No, I thought you might know what's wrong"
In short, he's coming to me as first resort rather than a last resort and this is taking up my time. He doesn't seem to get that experience doesn't mean you know everything, it means you're more able to figure out a solution. I've tried explaining this, but he is still giving up at the first hurdle. I want him to know that he can come to me for help, but he needs to really try to figure things for himself as much as possible. Any advice would be welcome.



in response to Pay, by junior, I mean a fully employed young adult who is inexperienced.



Muffin Man - You've highlighted my concern about not wanting to become unapproachable. It's important that he does seek my help with stuff he can't be expected to grasp. As a little bit of background, he recently made some changes that fixed one thing, but broke something else and could have been very costly if it hadn't been spotted by the testers. After this, I said I wanted to review his code before it's checked it in to main branch. This isn't a punitive measure but he may now be feeling wary of doing anything. I'm asking how to deal with him in a manner that will give him more confidence in his own abilities rather than less.









share|improve this question












share|improve this question




share|improve this question








edited Sep 1 '16 at 20:14
























asked Sep 1 '16 at 16:59









Dave

24119




24119







  • 1




    Did you try telling him this?
    – Martin Tournoij
    Sep 1 '16 at 17:03






  • 1




    Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
    – Dan
    Sep 1 '16 at 17:17






  • 3




    So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
    – TessellatingHeckler
    Sep 1 '16 at 19:08






  • 2




    @Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
    – The Muffin Man
    Sep 1 '16 at 19:16










  • Related: workplace.stackexchange.com/q/9623/325
    – Monica Cellio♦
    Sep 2 '16 at 3:44












  • 1




    Did you try telling him this?
    – Martin Tournoij
    Sep 1 '16 at 17:03






  • 1




    Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
    – Dan
    Sep 1 '16 at 17:17






  • 3




    So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
    – TessellatingHeckler
    Sep 1 '16 at 19:08






  • 2




    @Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
    – The Muffin Man
    Sep 1 '16 at 19:16










  • Related: workplace.stackexchange.com/q/9623/325
    – Monica Cellio♦
    Sep 2 '16 at 3:44







1




1




Did you try telling him this?
– Martin Tournoij
Sep 1 '16 at 17:03




Did you try telling him this?
– Martin Tournoij
Sep 1 '16 at 17:03




1




1




Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
– Dan
Sep 1 '16 at 17:17




Perhaps he doesn't know he's supposed to run it through the debugger but doesn't want to say that directly.
– Dan
Sep 1 '16 at 17:17




3




3




So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
– TessellatingHeckler
Sep 1 '16 at 19:08




So, uhh, what resources have you looked at, what have you tried, and what happened? You're not just running to workplace.stackexchange.com as your first resort, are you? ;)
– TessellatingHeckler
Sep 1 '16 at 19:08




2




2




@Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
– The Muffin Man
Sep 1 '16 at 19:16




@Carpetsmoker I've found that using the direct approach only works on certain personality types. Those who are somewhat insecure will stop asking you for help at all even as a last resort and those who are both insecure and passive aggressive will make a dumb comment about why they stopped coming to you for help when you ask them about it.
– The Muffin Man
Sep 1 '16 at 19:16












Related: workplace.stackexchange.com/q/9623/325
– Monica Cellio♦
Sep 2 '16 at 3:44




Related: workplace.stackexchange.com/q/9623/325
– Monica Cellio♦
Sep 2 '16 at 3:44










5 Answers
5






active

oldest

votes

















up vote
17
down vote













Make a list.



I've worked with people like this before and in my experience, the best thing you can do is make him a list. Spend a few minutes thinking of all the things that he should generally try before bugging you. Include "have you searched for the error" and so on.



Once you have the list, explain how it's going to work. You're not going to answer him until he's done everything on that list. That way you can say "Have you tried ____ ?" and he'll know already that you're going down the list.



And here's the key:



Never stop what you're doing to answer him. I'm not kidding. Unless there's an emergency or he's under a hot deadline (which Juniors generally don't have anyway), you put him off. Even if you actually have time and aren't doing anything important you still should put him off. Set a time that is at least 15 minutes in the future, if not 30. Don't say "Come back in 15 minutes" but rather "I'm in the middle of something right now, come back at 1:30 and we'll go over it".



This does several things.



  1. It teaches him that you (and everyone else) aren't at his disposal and to respect other's time.

  2. It makes it so it's not easier to bug you than to try to figure it out himself.

  3. It encourages him to figure it out himself since that will be likely be faster and he has time to kill anyway.

Basically, you have someone who is trying to get you to do his work for him. If you make it harder for him to ask you (and formalize the process so it can't be a "hey, can you help me right now?" sort of thing he will start to hammer at it himself.



That's what we all do. We hammer at problems because we often don't have a choice and can't be rescued. When you stop rescuing him and force him to hammer at it until he's genuinely as stumped as anyone else would be, he'll grow and be the programmer he should be.



EDIT: He needs to learn what it truly means to be "stuck" and obviously, he doesn't yet. This will help teach him.






share|improve this answer






























    up vote
    13
    down vote














    In short, he's coming to me as first resort rather than a last resort
    and this is taking up my time. He doesn't seem to get that experience
    doesn't mean you know everything, it means you're more able to figure
    out a solution.




    If you just keep making it easy on him, he'll keep coming to you. That's just human nature.



    Next time he comes to you, just repeat this simple question:



    What have you tried so far?



    If he says he hasn't tried anything then just tell him to come back when he's tried X, Y, and Z (whatever is appropriate for the problem at hand). Make sure he has done the relevant amount of work before you actually dig in and help.



    After a while, if he still comes to you, ask the question again, and when he tells you he hasn't tried anything, just look at him until he remembers what he is supposed to do.



    Eventually, he'll get the message. Or if he doesn't, that's when you need to have a chat with your boss about Junior.






    share|improve this answer



















    • 3




      Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
      – Wesley Long
      Sep 1 '16 at 17:26










    • @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
      – Broots Waymb
      Sep 1 '16 at 22:00






    • 1




      The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
      – simbabque
      Sep 2 '16 at 10:50










    • Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
      – Caleb
      Sep 2 '16 at 18:25

















    up vote
    1
    down vote













    Start by scheduling a time and place to ask you questions. Just because you're the mentor doesn't mean you have to be available whenever he feels like it. At this point, set 2-3 a day.



    Next, push back on his questions by asking what has he tried. You're trying to teach a process on how to go about finding solutions. Give him time, he's spent many years in educational systems where teachers wait a few seconds and if no one comes up with an answer, the teacher just gives it to them. It's an old habit to break.



    Make him take notes. Part of his training is to build his own "Help." This puts him on notice that you don't expect him to keep asking the same questions over and over.



    Encourage him to come up with the worst hacks ever. So what? You'll work with him on other solutions. Good teachers let students fail longer than normal, but make an effort not to discourage them. This is easier said than done which is why teaching is so difficult.






    share|improve this answer




























      up vote
      1
      down vote













      How I handle this situation



      1. I know the answer to the question that I was asked immediately

        • Answer it


      2. I don't know the answer, but I think I might know and I have time to help

        • I help


      3. I don't know the answer, I think I might know but I'm in the middle of something

        • Offer a quick bit of advice that might get them in the right direction. Explain I'm currently busy looking into something and that I'll stop by later in order to help.


      4. I don't know the answer, I have no reason to think that I can actually provide assistance, but I think I know who they should ask

        • I tell them they need to ask that person who should be able to help them.


      5. I forgot to go back to the person. It's been a couple of hours. They are still stuck and they come back for help.

        • This is my bad. Unless I'm literally so buried that I can't spend 20 minutes to an hour trying to help this person, I should attempt to help them.



      My personal opinion on how you can help this person become a better coworker



      Just let him know explicitly your expectations. If he comes to you and asks "Why doesn't this work" and you try and help them and find that he hasn't tried anything. Tell him that you expect that he has put a reasonable effort into solving the problem on his own. Give examples of what you feel that is. Explain to him what you explained to us. Explicitly tell him that you don't know everything and he shouldn't assume you do. Finally, again, tell him what you told us. You don't want to discourage him from asking for help, but you want to make sure he spends a little time trying before waving the white flag.



      Finally, you need to identify what your responsibility is. Are you the mentor? Is management expecting that you are to mentor this person? If so, helping him is part of your job. Good management should realize that this takes away from your bandwidth. You should realize that ideally, your goal is to help him become self sufficient, and he buying your time on credit. Hopefully it gets paid back with dividends.






      share|improve this answer




























        up vote
        -1
        down vote













        OMG, I'm dealing with this RIGHT NOW, with someone who was actually hired in a senior-level position. (As it turns out, he was never tested coming through the door.)



        If it's not company-specific "tribal knowledge", my standard response is "Google". I've also had to have a conversation with my supervisor, because there have been situations where this person has literally bugged me all day long. My supervisor agreed that it's important at this point to flush out how well this guy (who was hired as a "senior") can do independently. I also learned that my boss suspects that this person's been able to hide this skills lapse behind my predecessors - but agrees that this behavior will be unfit for the projects we have on-board for the future.



        At one point I spent time on directing the guy to use solution "A" for a problem, but he got the jitters over whether we were authorized to use such an approach (but refuse to ask our boss), and did something else anyway. After that, I was done. I don't have the authority to direct his work, so it's foolish for me to take implicit responsibility for what he does.






        share|improve this answer





















          Your Answer







          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "423"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          convertImagesToLinks: false,
          noModals: false,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          bindNavPrevention: true,
          postfix: "",
          noCode: true, onDemand: false,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );








           

          draft saved


          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f75256%2fgetting-a-junior-developer-to-be-more-self-reliant%23new-answer', 'question_page');

          );

          Post as a guest

























          StackExchange.ready(function ()
          $("#show-editor-button input, #show-editor-button button").click(function ()
          var showEditor = function()
          $("#show-editor-button").hide();
          $("#post-form").removeClass("dno");
          StackExchange.editor.finallyInit();
          ;

          var useFancy = $(this).data('confirm-use-fancy');
          if(useFancy == 'True')
          var popupTitle = $(this).data('confirm-fancy-title');
          var popupBody = $(this).data('confirm-fancy-body');
          var popupAccept = $(this).data('confirm-fancy-accept-button');

          $(this).loadPopup(
          url: '/post/self-answer-popup',
          loaded: function(popup)
          var pTitle = $(popup).find('h2');
          var pBody = $(popup).find('.popup-body');
          var pSubmit = $(popup).find('.popup-submit');

          pTitle.text(popupTitle);
          pBody.html(popupBody);
          pSubmit.val(popupAccept).click(showEditor);

          )
          else
          var confirmText = $(this).data('confirm-text');
          if (confirmText ? confirm(confirmText) : true)
          showEditor();


          );
          );






          5 Answers
          5






          active

          oldest

          votes








          5 Answers
          5






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          up vote
          17
          down vote













          Make a list.



          I've worked with people like this before and in my experience, the best thing you can do is make him a list. Spend a few minutes thinking of all the things that he should generally try before bugging you. Include "have you searched for the error" and so on.



          Once you have the list, explain how it's going to work. You're not going to answer him until he's done everything on that list. That way you can say "Have you tried ____ ?" and he'll know already that you're going down the list.



          And here's the key:



          Never stop what you're doing to answer him. I'm not kidding. Unless there's an emergency or he's under a hot deadline (which Juniors generally don't have anyway), you put him off. Even if you actually have time and aren't doing anything important you still should put him off. Set a time that is at least 15 minutes in the future, if not 30. Don't say "Come back in 15 minutes" but rather "I'm in the middle of something right now, come back at 1:30 and we'll go over it".



          This does several things.



          1. It teaches him that you (and everyone else) aren't at his disposal and to respect other's time.

          2. It makes it so it's not easier to bug you than to try to figure it out himself.

          3. It encourages him to figure it out himself since that will be likely be faster and he has time to kill anyway.

          Basically, you have someone who is trying to get you to do his work for him. If you make it harder for him to ask you (and formalize the process so it can't be a "hey, can you help me right now?" sort of thing he will start to hammer at it himself.



          That's what we all do. We hammer at problems because we often don't have a choice and can't be rescued. When you stop rescuing him and force him to hammer at it until he's genuinely as stumped as anyone else would be, he'll grow and be the programmer he should be.



          EDIT: He needs to learn what it truly means to be "stuck" and obviously, he doesn't yet. This will help teach him.






          share|improve this answer



























            up vote
            17
            down vote













            Make a list.



            I've worked with people like this before and in my experience, the best thing you can do is make him a list. Spend a few minutes thinking of all the things that he should generally try before bugging you. Include "have you searched for the error" and so on.



            Once you have the list, explain how it's going to work. You're not going to answer him until he's done everything on that list. That way you can say "Have you tried ____ ?" and he'll know already that you're going down the list.



            And here's the key:



            Never stop what you're doing to answer him. I'm not kidding. Unless there's an emergency or he's under a hot deadline (which Juniors generally don't have anyway), you put him off. Even if you actually have time and aren't doing anything important you still should put him off. Set a time that is at least 15 minutes in the future, if not 30. Don't say "Come back in 15 minutes" but rather "I'm in the middle of something right now, come back at 1:30 and we'll go over it".



            This does several things.



            1. It teaches him that you (and everyone else) aren't at his disposal and to respect other's time.

            2. It makes it so it's not easier to bug you than to try to figure it out himself.

            3. It encourages him to figure it out himself since that will be likely be faster and he has time to kill anyway.

            Basically, you have someone who is trying to get you to do his work for him. If you make it harder for him to ask you (and formalize the process so it can't be a "hey, can you help me right now?" sort of thing he will start to hammer at it himself.



            That's what we all do. We hammer at problems because we often don't have a choice and can't be rescued. When you stop rescuing him and force him to hammer at it until he's genuinely as stumped as anyone else would be, he'll grow and be the programmer he should be.



            EDIT: He needs to learn what it truly means to be "stuck" and obviously, he doesn't yet. This will help teach him.






            share|improve this answer

























              up vote
              17
              down vote










              up vote
              17
              down vote









              Make a list.



              I've worked with people like this before and in my experience, the best thing you can do is make him a list. Spend a few minutes thinking of all the things that he should generally try before bugging you. Include "have you searched for the error" and so on.



              Once you have the list, explain how it's going to work. You're not going to answer him until he's done everything on that list. That way you can say "Have you tried ____ ?" and he'll know already that you're going down the list.



              And here's the key:



              Never stop what you're doing to answer him. I'm not kidding. Unless there's an emergency or he's under a hot deadline (which Juniors generally don't have anyway), you put him off. Even if you actually have time and aren't doing anything important you still should put him off. Set a time that is at least 15 minutes in the future, if not 30. Don't say "Come back in 15 minutes" but rather "I'm in the middle of something right now, come back at 1:30 and we'll go over it".



              This does several things.



              1. It teaches him that you (and everyone else) aren't at his disposal and to respect other's time.

              2. It makes it so it's not easier to bug you than to try to figure it out himself.

              3. It encourages him to figure it out himself since that will be likely be faster and he has time to kill anyway.

              Basically, you have someone who is trying to get you to do his work for him. If you make it harder for him to ask you (and formalize the process so it can't be a "hey, can you help me right now?" sort of thing he will start to hammer at it himself.



              That's what we all do. We hammer at problems because we often don't have a choice and can't be rescued. When you stop rescuing him and force him to hammer at it until he's genuinely as stumped as anyone else would be, he'll grow and be the programmer he should be.



              EDIT: He needs to learn what it truly means to be "stuck" and obviously, he doesn't yet. This will help teach him.






              share|improve this answer















              Make a list.



              I've worked with people like this before and in my experience, the best thing you can do is make him a list. Spend a few minutes thinking of all the things that he should generally try before bugging you. Include "have you searched for the error" and so on.



              Once you have the list, explain how it's going to work. You're not going to answer him until he's done everything on that list. That way you can say "Have you tried ____ ?" and he'll know already that you're going down the list.



              And here's the key:



              Never stop what you're doing to answer him. I'm not kidding. Unless there's an emergency or he's under a hot deadline (which Juniors generally don't have anyway), you put him off. Even if you actually have time and aren't doing anything important you still should put him off. Set a time that is at least 15 minutes in the future, if not 30. Don't say "Come back in 15 minutes" but rather "I'm in the middle of something right now, come back at 1:30 and we'll go over it".



              This does several things.



              1. It teaches him that you (and everyone else) aren't at his disposal and to respect other's time.

              2. It makes it so it's not easier to bug you than to try to figure it out himself.

              3. It encourages him to figure it out himself since that will be likely be faster and he has time to kill anyway.

              Basically, you have someone who is trying to get you to do his work for him. If you make it harder for him to ask you (and formalize the process so it can't be a "hey, can you help me right now?" sort of thing he will start to hammer at it himself.



              That's what we all do. We hammer at problems because we often don't have a choice and can't be rescued. When you stop rescuing him and force him to hammer at it until he's genuinely as stumped as anyone else would be, he'll grow and be the programmer he should be.



              EDIT: He needs to learn what it truly means to be "stuck" and obviously, he doesn't yet. This will help teach him.







              share|improve this answer















              share|improve this answer



              share|improve this answer








              edited Sep 2 '16 at 17:21


























              answered Sep 1 '16 at 17:16









              Chris E

              40.4k22129166




              40.4k22129166






















                  up vote
                  13
                  down vote














                  In short, he's coming to me as first resort rather than a last resort
                  and this is taking up my time. He doesn't seem to get that experience
                  doesn't mean you know everything, it means you're more able to figure
                  out a solution.




                  If you just keep making it easy on him, he'll keep coming to you. That's just human nature.



                  Next time he comes to you, just repeat this simple question:



                  What have you tried so far?



                  If he says he hasn't tried anything then just tell him to come back when he's tried X, Y, and Z (whatever is appropriate for the problem at hand). Make sure he has done the relevant amount of work before you actually dig in and help.



                  After a while, if he still comes to you, ask the question again, and when he tells you he hasn't tried anything, just look at him until he remembers what he is supposed to do.



                  Eventually, he'll get the message. Or if he doesn't, that's when you need to have a chat with your boss about Junior.






                  share|improve this answer



















                  • 3




                    Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                    – Wesley Long
                    Sep 1 '16 at 17:26










                  • @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                    – Broots Waymb
                    Sep 1 '16 at 22:00






                  • 1




                    The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                    – simbabque
                    Sep 2 '16 at 10:50










                  • Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                    – Caleb
                    Sep 2 '16 at 18:25














                  up vote
                  13
                  down vote














                  In short, he's coming to me as first resort rather than a last resort
                  and this is taking up my time. He doesn't seem to get that experience
                  doesn't mean you know everything, it means you're more able to figure
                  out a solution.




                  If you just keep making it easy on him, he'll keep coming to you. That's just human nature.



                  Next time he comes to you, just repeat this simple question:



                  What have you tried so far?



                  If he says he hasn't tried anything then just tell him to come back when he's tried X, Y, and Z (whatever is appropriate for the problem at hand). Make sure he has done the relevant amount of work before you actually dig in and help.



                  After a while, if he still comes to you, ask the question again, and when he tells you he hasn't tried anything, just look at him until he remembers what he is supposed to do.



                  Eventually, he'll get the message. Or if he doesn't, that's when you need to have a chat with your boss about Junior.






                  share|improve this answer



















                  • 3




                    Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                    – Wesley Long
                    Sep 1 '16 at 17:26










                  • @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                    – Broots Waymb
                    Sep 1 '16 at 22:00






                  • 1




                    The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                    – simbabque
                    Sep 2 '16 at 10:50










                  • Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                    – Caleb
                    Sep 2 '16 at 18:25












                  up vote
                  13
                  down vote










                  up vote
                  13
                  down vote










                  In short, he's coming to me as first resort rather than a last resort
                  and this is taking up my time. He doesn't seem to get that experience
                  doesn't mean you know everything, it means you're more able to figure
                  out a solution.




                  If you just keep making it easy on him, he'll keep coming to you. That's just human nature.



                  Next time he comes to you, just repeat this simple question:



                  What have you tried so far?



                  If he says he hasn't tried anything then just tell him to come back when he's tried X, Y, and Z (whatever is appropriate for the problem at hand). Make sure he has done the relevant amount of work before you actually dig in and help.



                  After a while, if he still comes to you, ask the question again, and when he tells you he hasn't tried anything, just look at him until he remembers what he is supposed to do.



                  Eventually, he'll get the message. Or if he doesn't, that's when you need to have a chat with your boss about Junior.






                  share|improve this answer
















                  In short, he's coming to me as first resort rather than a last resort
                  and this is taking up my time. He doesn't seem to get that experience
                  doesn't mean you know everything, it means you're more able to figure
                  out a solution.




                  If you just keep making it easy on him, he'll keep coming to you. That's just human nature.



                  Next time he comes to you, just repeat this simple question:



                  What have you tried so far?



                  If he says he hasn't tried anything then just tell him to come back when he's tried X, Y, and Z (whatever is appropriate for the problem at hand). Make sure he has done the relevant amount of work before you actually dig in and help.



                  After a while, if he still comes to you, ask the question again, and when he tells you he hasn't tried anything, just look at him until he remembers what he is supposed to do.



                  Eventually, he'll get the message. Or if he doesn't, that's when you need to have a chat with your boss about Junior.







                  share|improve this answer















                  share|improve this answer



                  share|improve this answer








                  edited Sep 2 '16 at 17:16


























                  answered Sep 1 '16 at 17:04









                  Joe Strazzere

                  221k101648912




                  221k101648912







                  • 3




                    Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                    – Wesley Long
                    Sep 1 '16 at 17:26










                  • @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                    – Broots Waymb
                    Sep 1 '16 at 22:00






                  • 1




                    The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                    – simbabque
                    Sep 2 '16 at 10:50










                  • Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                    – Caleb
                    Sep 2 '16 at 18:25












                  • 3




                    Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                    – Wesley Long
                    Sep 1 '16 at 17:26










                  • @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                    – Broots Waymb
                    Sep 1 '16 at 22:00






                  • 1




                    The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                    – simbabque
                    Sep 2 '16 at 10:50










                  • Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                    – Caleb
                    Sep 2 '16 at 18:25







                  3




                  3




                  Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                  – Wesley Long
                  Sep 1 '16 at 17:26




                  Should be mandatory reading for all new hires: blog.codinghorror.com/rubber-duck-problem-solving - from the font of StackExchange, directly.
                  – Wesley Long
                  Sep 1 '16 at 17:26












                  @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                  – Broots Waymb
                  Sep 1 '16 at 22:00




                  @WesleyLong - Agreed. At the very least, everyone should write down their question first. I always do before I IM my boss and I end up deleting a fair amount of them before they are ever sent.
                  – Broots Waymb
                  Sep 1 '16 at 22:00




                  1




                  1




                  The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                  – simbabque
                  Sep 2 '16 at 10:50




                  The guy sitting next to me has an actual tiny 1 inch rubber duck stuck to his screen.
                  – simbabque
                  Sep 2 '16 at 10:50












                  Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                  – Caleb
                  Sep 2 '16 at 18:25




                  Don't tell him what X, Y, and Z are, though -- help him to figure it out for himself.
                  – Caleb
                  Sep 2 '16 at 18:25










                  up vote
                  1
                  down vote













                  Start by scheduling a time and place to ask you questions. Just because you're the mentor doesn't mean you have to be available whenever he feels like it. At this point, set 2-3 a day.



                  Next, push back on his questions by asking what has he tried. You're trying to teach a process on how to go about finding solutions. Give him time, he's spent many years in educational systems where teachers wait a few seconds and if no one comes up with an answer, the teacher just gives it to them. It's an old habit to break.



                  Make him take notes. Part of his training is to build his own "Help." This puts him on notice that you don't expect him to keep asking the same questions over and over.



                  Encourage him to come up with the worst hacks ever. So what? You'll work with him on other solutions. Good teachers let students fail longer than normal, but make an effort not to discourage them. This is easier said than done which is why teaching is so difficult.






                  share|improve this answer

























                    up vote
                    1
                    down vote













                    Start by scheduling a time and place to ask you questions. Just because you're the mentor doesn't mean you have to be available whenever he feels like it. At this point, set 2-3 a day.



                    Next, push back on his questions by asking what has he tried. You're trying to teach a process on how to go about finding solutions. Give him time, he's spent many years in educational systems where teachers wait a few seconds and if no one comes up with an answer, the teacher just gives it to them. It's an old habit to break.



                    Make him take notes. Part of his training is to build his own "Help." This puts him on notice that you don't expect him to keep asking the same questions over and over.



                    Encourage him to come up with the worst hacks ever. So what? You'll work with him on other solutions. Good teachers let students fail longer than normal, but make an effort not to discourage them. This is easier said than done which is why teaching is so difficult.






                    share|improve this answer























                      up vote
                      1
                      down vote










                      up vote
                      1
                      down vote









                      Start by scheduling a time and place to ask you questions. Just because you're the mentor doesn't mean you have to be available whenever he feels like it. At this point, set 2-3 a day.



                      Next, push back on his questions by asking what has he tried. You're trying to teach a process on how to go about finding solutions. Give him time, he's spent many years in educational systems where teachers wait a few seconds and if no one comes up with an answer, the teacher just gives it to them. It's an old habit to break.



                      Make him take notes. Part of his training is to build his own "Help." This puts him on notice that you don't expect him to keep asking the same questions over and over.



                      Encourage him to come up with the worst hacks ever. So what? You'll work with him on other solutions. Good teachers let students fail longer than normal, but make an effort not to discourage them. This is easier said than done which is why teaching is so difficult.






                      share|improve this answer













                      Start by scheduling a time and place to ask you questions. Just because you're the mentor doesn't mean you have to be available whenever he feels like it. At this point, set 2-3 a day.



                      Next, push back on his questions by asking what has he tried. You're trying to teach a process on how to go about finding solutions. Give him time, he's spent many years in educational systems where teachers wait a few seconds and if no one comes up with an answer, the teacher just gives it to them. It's an old habit to break.



                      Make him take notes. Part of his training is to build his own "Help." This puts him on notice that you don't expect him to keep asking the same questions over and over.



                      Encourage him to come up with the worst hacks ever. So what? You'll work with him on other solutions. Good teachers let students fail longer than normal, but make an effort not to discourage them. This is easier said than done which is why teaching is so difficult.







                      share|improve this answer













                      share|improve this answer



                      share|improve this answer











                      answered Sep 2 '16 at 20:28







                      user8365



























                          up vote
                          1
                          down vote













                          How I handle this situation



                          1. I know the answer to the question that I was asked immediately

                            • Answer it


                          2. I don't know the answer, but I think I might know and I have time to help

                            • I help


                          3. I don't know the answer, I think I might know but I'm in the middle of something

                            • Offer a quick bit of advice that might get them in the right direction. Explain I'm currently busy looking into something and that I'll stop by later in order to help.


                          4. I don't know the answer, I have no reason to think that I can actually provide assistance, but I think I know who they should ask

                            • I tell them they need to ask that person who should be able to help them.


                          5. I forgot to go back to the person. It's been a couple of hours. They are still stuck and they come back for help.

                            • This is my bad. Unless I'm literally so buried that I can't spend 20 minutes to an hour trying to help this person, I should attempt to help them.



                          My personal opinion on how you can help this person become a better coworker



                          Just let him know explicitly your expectations. If he comes to you and asks "Why doesn't this work" and you try and help them and find that he hasn't tried anything. Tell him that you expect that he has put a reasonable effort into solving the problem on his own. Give examples of what you feel that is. Explain to him what you explained to us. Explicitly tell him that you don't know everything and he shouldn't assume you do. Finally, again, tell him what you told us. You don't want to discourage him from asking for help, but you want to make sure he spends a little time trying before waving the white flag.



                          Finally, you need to identify what your responsibility is. Are you the mentor? Is management expecting that you are to mentor this person? If so, helping him is part of your job. Good management should realize that this takes away from your bandwidth. You should realize that ideally, your goal is to help him become self sufficient, and he buying your time on credit. Hopefully it gets paid back with dividends.






                          share|improve this answer

























                            up vote
                            1
                            down vote













                            How I handle this situation



                            1. I know the answer to the question that I was asked immediately

                              • Answer it


                            2. I don't know the answer, but I think I might know and I have time to help

                              • I help


                            3. I don't know the answer, I think I might know but I'm in the middle of something

                              • Offer a quick bit of advice that might get them in the right direction. Explain I'm currently busy looking into something and that I'll stop by later in order to help.


                            4. I don't know the answer, I have no reason to think that I can actually provide assistance, but I think I know who they should ask

                              • I tell them they need to ask that person who should be able to help them.


                            5. I forgot to go back to the person. It's been a couple of hours. They are still stuck and they come back for help.

                              • This is my bad. Unless I'm literally so buried that I can't spend 20 minutes to an hour trying to help this person, I should attempt to help them.



                            My personal opinion on how you can help this person become a better coworker



                            Just let him know explicitly your expectations. If he comes to you and asks "Why doesn't this work" and you try and help them and find that he hasn't tried anything. Tell him that you expect that he has put a reasonable effort into solving the problem on his own. Give examples of what you feel that is. Explain to him what you explained to us. Explicitly tell him that you don't know everything and he shouldn't assume you do. Finally, again, tell him what you told us. You don't want to discourage him from asking for help, but you want to make sure he spends a little time trying before waving the white flag.



                            Finally, you need to identify what your responsibility is. Are you the mentor? Is management expecting that you are to mentor this person? If so, helping him is part of your job. Good management should realize that this takes away from your bandwidth. You should realize that ideally, your goal is to help him become self sufficient, and he buying your time on credit. Hopefully it gets paid back with dividends.






                            share|improve this answer























                              up vote
                              1
                              down vote










                              up vote
                              1
                              down vote









                              How I handle this situation



                              1. I know the answer to the question that I was asked immediately

                                • Answer it


                              2. I don't know the answer, but I think I might know and I have time to help

                                • I help


                              3. I don't know the answer, I think I might know but I'm in the middle of something

                                • Offer a quick bit of advice that might get them in the right direction. Explain I'm currently busy looking into something and that I'll stop by later in order to help.


                              4. I don't know the answer, I have no reason to think that I can actually provide assistance, but I think I know who they should ask

                                • I tell them they need to ask that person who should be able to help them.


                              5. I forgot to go back to the person. It's been a couple of hours. They are still stuck and they come back for help.

                                • This is my bad. Unless I'm literally so buried that I can't spend 20 minutes to an hour trying to help this person, I should attempt to help them.



                              My personal opinion on how you can help this person become a better coworker



                              Just let him know explicitly your expectations. If he comes to you and asks "Why doesn't this work" and you try and help them and find that he hasn't tried anything. Tell him that you expect that he has put a reasonable effort into solving the problem on his own. Give examples of what you feel that is. Explain to him what you explained to us. Explicitly tell him that you don't know everything and he shouldn't assume you do. Finally, again, tell him what you told us. You don't want to discourage him from asking for help, but you want to make sure he spends a little time trying before waving the white flag.



                              Finally, you need to identify what your responsibility is. Are you the mentor? Is management expecting that you are to mentor this person? If so, helping him is part of your job. Good management should realize that this takes away from your bandwidth. You should realize that ideally, your goal is to help him become self sufficient, and he buying your time on credit. Hopefully it gets paid back with dividends.






                              share|improve this answer













                              How I handle this situation



                              1. I know the answer to the question that I was asked immediately

                                • Answer it


                              2. I don't know the answer, but I think I might know and I have time to help

                                • I help


                              3. I don't know the answer, I think I might know but I'm in the middle of something

                                • Offer a quick bit of advice that might get them in the right direction. Explain I'm currently busy looking into something and that I'll stop by later in order to help.


                              4. I don't know the answer, I have no reason to think that I can actually provide assistance, but I think I know who they should ask

                                • I tell them they need to ask that person who should be able to help them.


                              5. I forgot to go back to the person. It's been a couple of hours. They are still stuck and they come back for help.

                                • This is my bad. Unless I'm literally so buried that I can't spend 20 minutes to an hour trying to help this person, I should attempt to help them.



                              My personal opinion on how you can help this person become a better coworker



                              Just let him know explicitly your expectations. If he comes to you and asks "Why doesn't this work" and you try and help them and find that he hasn't tried anything. Tell him that you expect that he has put a reasonable effort into solving the problem on his own. Give examples of what you feel that is. Explain to him what you explained to us. Explicitly tell him that you don't know everything and he shouldn't assume you do. Finally, again, tell him what you told us. You don't want to discourage him from asking for help, but you want to make sure he spends a little time trying before waving the white flag.



                              Finally, you need to identify what your responsibility is. Are you the mentor? Is management expecting that you are to mentor this person? If so, helping him is part of your job. Good management should realize that this takes away from your bandwidth. You should realize that ideally, your goal is to help him become self sufficient, and he buying your time on credit. Hopefully it gets paid back with dividends.







                              share|improve this answer













                              share|improve this answer



                              share|improve this answer











                              answered Sep 2 '16 at 21:15









                              Triplell89

                              1618




                              1618




















                                  up vote
                                  -1
                                  down vote













                                  OMG, I'm dealing with this RIGHT NOW, with someone who was actually hired in a senior-level position. (As it turns out, he was never tested coming through the door.)



                                  If it's not company-specific "tribal knowledge", my standard response is "Google". I've also had to have a conversation with my supervisor, because there have been situations where this person has literally bugged me all day long. My supervisor agreed that it's important at this point to flush out how well this guy (who was hired as a "senior") can do independently. I also learned that my boss suspects that this person's been able to hide this skills lapse behind my predecessors - but agrees that this behavior will be unfit for the projects we have on-board for the future.



                                  At one point I spent time on directing the guy to use solution "A" for a problem, but he got the jitters over whether we were authorized to use such an approach (but refuse to ask our boss), and did something else anyway. After that, I was done. I don't have the authority to direct his work, so it's foolish for me to take implicit responsibility for what he does.






                                  share|improve this answer

























                                    up vote
                                    -1
                                    down vote













                                    OMG, I'm dealing with this RIGHT NOW, with someone who was actually hired in a senior-level position. (As it turns out, he was never tested coming through the door.)



                                    If it's not company-specific "tribal knowledge", my standard response is "Google". I've also had to have a conversation with my supervisor, because there have been situations where this person has literally bugged me all day long. My supervisor agreed that it's important at this point to flush out how well this guy (who was hired as a "senior") can do independently. I also learned that my boss suspects that this person's been able to hide this skills lapse behind my predecessors - but agrees that this behavior will be unfit for the projects we have on-board for the future.



                                    At one point I spent time on directing the guy to use solution "A" for a problem, but he got the jitters over whether we were authorized to use such an approach (but refuse to ask our boss), and did something else anyway. After that, I was done. I don't have the authority to direct his work, so it's foolish for me to take implicit responsibility for what he does.






                                    share|improve this answer























                                      up vote
                                      -1
                                      down vote










                                      up vote
                                      -1
                                      down vote









                                      OMG, I'm dealing with this RIGHT NOW, with someone who was actually hired in a senior-level position. (As it turns out, he was never tested coming through the door.)



                                      If it's not company-specific "tribal knowledge", my standard response is "Google". I've also had to have a conversation with my supervisor, because there have been situations where this person has literally bugged me all day long. My supervisor agreed that it's important at this point to flush out how well this guy (who was hired as a "senior") can do independently. I also learned that my boss suspects that this person's been able to hide this skills lapse behind my predecessors - but agrees that this behavior will be unfit for the projects we have on-board for the future.



                                      At one point I spent time on directing the guy to use solution "A" for a problem, but he got the jitters over whether we were authorized to use such an approach (but refuse to ask our boss), and did something else anyway. After that, I was done. I don't have the authority to direct his work, so it's foolish for me to take implicit responsibility for what he does.






                                      share|improve this answer













                                      OMG, I'm dealing with this RIGHT NOW, with someone who was actually hired in a senior-level position. (As it turns out, he was never tested coming through the door.)



                                      If it's not company-specific "tribal knowledge", my standard response is "Google". I've also had to have a conversation with my supervisor, because there have been situations where this person has literally bugged me all day long. My supervisor agreed that it's important at this point to flush out how well this guy (who was hired as a "senior") can do independently. I also learned that my boss suspects that this person's been able to hide this skills lapse behind my predecessors - but agrees that this behavior will be unfit for the projects we have on-board for the future.



                                      At one point I spent time on directing the guy to use solution "A" for a problem, but he got the jitters over whether we were authorized to use such an approach (but refuse to ask our boss), and did something else anyway. After that, I was done. I don't have the authority to direct his work, so it's foolish for me to take implicit responsibility for what he does.







                                      share|improve this answer













                                      share|improve this answer



                                      share|improve this answer











                                      answered Sep 2 '16 at 18:02









                                      Xavier J

                                      26.3k104797




                                      26.3k104797






















                                           

                                          draft saved


                                          draft discarded


























                                           


                                          draft saved


                                          draft discarded














                                          StackExchange.ready(
                                          function ()
                                          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f75256%2fgetting-a-junior-developer-to-be-more-self-reliant%23new-answer', 'question_page');

                                          );

                                          Post as a guest

















































































                                          Comments

                                          Popular posts from this blog

                                          What does second last employer means? [closed]

                                          List of Gilmore Girls characters

                                          Confectionery