My programmer underestimates deadlines or is just lazy












5














Since august, I have had a software programmer in my charge and I became the project leader of my area.



She went well with learning things about our area, configuring some tasks, but ever since I started to ask her more complex things (to be specific, complex in the sense, understand sql functions and how the back end of a application works) is when my problems got started



First of all, I think she underestimates the complexity of the tasks, then I believe she became secure and stretches her schedule doing the bare minimum until I ask her how she goes; for example she does not implement her changes in the development environment, she just goes "I'm just testing things here in my sql session" like some query's on the fly without testing the project as a whole (I assured her that she can do and test whatever she wants in development environment)



Wednesdays are the days that new releases are made, so I told her days ago to check with time her development with the entire project, not just use the Monday and Tuesday to adjust things. Today. Friday she implemented her changes and of course, in the development environment everything crashed



This is not the first time she has done this. My specific question is, with that personality should I implement a sort of specific scrum for her? We use waterfall because our projects are small; I'm thinking about sitting with her 15 minutes a day to ask her about her progress.



This is not what we're used to doing, we normally just set deadlines and set a Gantt diagram, I'm not saying every other developer is perfect but her case is very isolated. She only had that task and previously I was assured that she understood how the project works and I tried to respond to her questions as clearly as possible.










share|improve this question
























  • You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
    – Erik
    Dec 1 at 7:20










  • Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
    – Erik
    Dec 1 at 9:51






  • 7




    Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
    – Mawg
    Dec 1 at 11:53






  • 5




    Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
    – Mawg
    Dec 1 at 11:56










  • You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
    – Jack
    Dec 1 at 12:39
















5














Since august, I have had a software programmer in my charge and I became the project leader of my area.



She went well with learning things about our area, configuring some tasks, but ever since I started to ask her more complex things (to be specific, complex in the sense, understand sql functions and how the back end of a application works) is when my problems got started



First of all, I think she underestimates the complexity of the tasks, then I believe she became secure and stretches her schedule doing the bare minimum until I ask her how she goes; for example she does not implement her changes in the development environment, she just goes "I'm just testing things here in my sql session" like some query's on the fly without testing the project as a whole (I assured her that she can do and test whatever she wants in development environment)



Wednesdays are the days that new releases are made, so I told her days ago to check with time her development with the entire project, not just use the Monday and Tuesday to adjust things. Today. Friday she implemented her changes and of course, in the development environment everything crashed



This is not the first time she has done this. My specific question is, with that personality should I implement a sort of specific scrum for her? We use waterfall because our projects are small; I'm thinking about sitting with her 15 minutes a day to ask her about her progress.



This is not what we're used to doing, we normally just set deadlines and set a Gantt diagram, I'm not saying every other developer is perfect but her case is very isolated. She only had that task and previously I was assured that she understood how the project works and I tried to respond to her questions as clearly as possible.










share|improve this question
























  • You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
    – Erik
    Dec 1 at 7:20










  • Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
    – Erik
    Dec 1 at 9:51






  • 7




    Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
    – Mawg
    Dec 1 at 11:53






  • 5




    Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
    – Mawg
    Dec 1 at 11:56










  • You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
    – Jack
    Dec 1 at 12:39














5












5








5







Since august, I have had a software programmer in my charge and I became the project leader of my area.



She went well with learning things about our area, configuring some tasks, but ever since I started to ask her more complex things (to be specific, complex in the sense, understand sql functions and how the back end of a application works) is when my problems got started



First of all, I think she underestimates the complexity of the tasks, then I believe she became secure and stretches her schedule doing the bare minimum until I ask her how she goes; for example she does not implement her changes in the development environment, she just goes "I'm just testing things here in my sql session" like some query's on the fly without testing the project as a whole (I assured her that she can do and test whatever she wants in development environment)



Wednesdays are the days that new releases are made, so I told her days ago to check with time her development with the entire project, not just use the Monday and Tuesday to adjust things. Today. Friday she implemented her changes and of course, in the development environment everything crashed



This is not the first time she has done this. My specific question is, with that personality should I implement a sort of specific scrum for her? We use waterfall because our projects are small; I'm thinking about sitting with her 15 minutes a day to ask her about her progress.



This is not what we're used to doing, we normally just set deadlines and set a Gantt diagram, I'm not saying every other developer is perfect but her case is very isolated. She only had that task and previously I was assured that she understood how the project works and I tried to respond to her questions as clearly as possible.










share|improve this question















Since august, I have had a software programmer in my charge and I became the project leader of my area.



She went well with learning things about our area, configuring some tasks, but ever since I started to ask her more complex things (to be specific, complex in the sense, understand sql functions and how the back end of a application works) is when my problems got started



First of all, I think she underestimates the complexity of the tasks, then I believe she became secure and stretches her schedule doing the bare minimum until I ask her how she goes; for example she does not implement her changes in the development environment, she just goes "I'm just testing things here in my sql session" like some query's on the fly without testing the project as a whole (I assured her that she can do and test whatever she wants in development environment)



Wednesdays are the days that new releases are made, so I told her days ago to check with time her development with the entire project, not just use the Monday and Tuesday to adjust things. Today. Friday she implemented her changes and of course, in the development environment everything crashed



This is not the first time she has done this. My specific question is, with that personality should I implement a sort of specific scrum for her? We use waterfall because our projects are small; I'm thinking about sitting with her 15 minutes a day to ask her about her progress.



This is not what we're used to doing, we normally just set deadlines and set a Gantt diagram, I'm not saying every other developer is perfect but her case is very isolated. She only had that task and previously I was assured that she understood how the project works and I tried to respond to her questions as clearly as possible.







performance employees deadlines






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 1 at 9:31









Kilisi

112k61248433




112k61248433










asked Dec 1 at 3:19









Naty Bizz

1512




1512












  • You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
    – Erik
    Dec 1 at 7:20










  • Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
    – Erik
    Dec 1 at 9:51






  • 7




    Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
    – Mawg
    Dec 1 at 11:53






  • 5




    Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
    – Mawg
    Dec 1 at 11:56










  • You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
    – Jack
    Dec 1 at 12:39


















  • You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
    – Erik
    Dec 1 at 7:20










  • Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
    – Erik
    Dec 1 at 9:51






  • 7




    Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
    – Mawg
    Dec 1 at 11:53






  • 5




    Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
    – Mawg
    Dec 1 at 11:56










  • You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
    – Jack
    Dec 1 at 12:39
















You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
– Erik
Dec 1 at 7:20




You can't do anything Scrum related if it's just you in charge and her. Scrum is a way to organize team projects.
– Erik
Dec 1 at 7:20












Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
– Erik
Dec 1 at 9:51




Does this programmer have a team? Or at least some peers to work with? What's their experience level? Does your company do a lot of software development, or is this outside the norm?
– Erik
Dec 1 at 9:51




7




7




Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
– Mawg
Dec 1 at 11:53




Don't forget Hofstadter's law - "It always takes longer than you expect, even when you take into account Hofstadter's Law"
– Mawg
Dec 1 at 11:53




5




5




Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
– Mawg
Dec 1 at 11:56




Does she have any expereince in SQL & backend? Or has she been thrown in at the deepend? Is she new to the company? if not, how did she do on previous projects? Sounds like you are new to being prohect leader - no offence, but could that have anythng to do with it?
– Mawg
Dec 1 at 11:56












You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
– Jack
Dec 1 at 12:39




You should remove all references to gender. It seems that you are getting downvoted for mentioning the employee is female by some sensitive people.
– Jack
Dec 1 at 12:39










6 Answers
6






active

oldest

votes


















12














You might have been describing a young me. Estimating the time required for a task is a skill that takes some time to learn. When asked for an estimate, she probably thinks of how long it will take in a perfect world with no distractions and where nothing goes wrong, and maybe adds a tiny buffer to it. She then feels that she should be able to complete the task in that amount of time, and is embarassed to offer a more realistic time frame because it might make her appear incompetent or lazy. Having given her estimate, she now believes it, and thinks she has time to spare.



Next time an estimate is required from her, I would sit down with her and analyse the estimate, breaking it down into several smaller sub-tasks. For example, if she says she can add this feature by a certain date, ask her how long it will take to analyse the requirements, how long to write the tests, how long to write the code, how long to run the tests and fix any bugs. At several points, ask her if she wants to revise her estimate. Remind her that things seldom go perfectly smoothly, and that you're looking for a realistic estimate. I'd do this for the next few estimates until she starts to get the hang of things.



This approach will accomplish several things. It will show her a systematic approach to coming up with an estimate. And when one of the smaller subtasks takes longer than expected, it will make her realise that she is in danger of missing the deadline (and give you advance notice). It will help her notice patterns in her estimates.






share|improve this answer

















  • 9




    In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
    – Simon B
    Dec 2 at 0:23



















4














First up, humans suck at task estimation time. I mean, Really Really Suck.



They did one study where they got participants to estimate how long it'd be before they were 50% sure they'd be done (aka, an average be-done-by time.) A second group was asked to do the same with a 75% certainty. And the third, a 99% certainty (aka, I'm almost positive I'll be done by this time.)



The results? Only 13% of the first group was done in time, not half. And of that 99%-certain group? Only 45% were done. Aka, people were being pessimistic, trying to give a safe conservative answer, and they STILL underestimated.



So they did a follow up, to figure out why we suck at task estimation. One group was asked to guess how long something would take. One group was asked to guess how long it would take best case, if everything went right. And one group was asked how long it would take worst case, if everything went wrong. And they found that the first two groups gave nearly identical times. Basically, people naturally plan as if everything will go perfectly. And it doesn't - it almost never does - and our estimates are bad because of it.



So, right off the bat: people naturally suck at task estimation. I'd highly suggest reading about the Planning Fallacy a bit to get some more (interesting, imho) information on the subject.



So! What can you do about it?



Door #1: Story Points



Well, Agile groups typically don't use 'Time' as an estimate for how long something will take. Why? Because, well, people suck at task estimation. The minute you ask how long something will take, it sweeps them into bad-task-estimation-mindset.



Instead, they use Story Points. Instead of estimating how long something will take, they estimate how complicated something will be. This can often help bypass people's overly-optimistic nature.



Door #2: Time Translation



There are some people that when they say something will take "4 days", you mentally have to translate to "2 weeks." Yeah, the person should hopefully get better with task estimation as things go forward, but you might have to get into the habit of figuring out the relationship between how long they say it'll take, versus how long it actually takes - and then do some mental calculation when their estimates come up.



Now, as for the Possibly-Lazy issue?



You'll have to take special care at figuring out whether it's actually laziness or if they're just not the most familiar at what you're asking them to do. There have been times that I've been in the weeds for a project, with no clear visibility on what I'm doing, what I'm supposed to be doing, and how exactly things are supposed to be done - and it sucks.



If they're in the weeds? You're either going to have to give them some slack to get things figured out, or have someone get more involved in helping them out. Pair programming can actually be a god-send in these types of situations.



And if they're just lazy? You're probably going to have to get more involved - daily task goals, or something with more rapid feedback that don't allow them to slouch for days at a time. (Again, make absolutely sure it's a laziness issue before treating it as such.)



EDIT: A link was requested - but the easiest thing is to google Planning Fallacy or go to the wikipedia page. The article itself is behind a paywall. It's: Buehler, Roger; Dale Griffin; Michael Ross (1995). "It's about time: Optimistic predictions in work and love". European Review of Social Psychology. American Psychological Association






share|improve this answer























  • Can you provide a link/reference to that study you mentioned? Thanks in advance.
    – CPHPython
    Dec 4 at 11:37



















1














Best practices in software development include some testing methodology. It can follow an official definition such as Test Driven Development or Behavior Driven Development. Or it can some personal method. What matters is an organized approach to writing software where clear, repeatable tests are an integral part in the process.



If you have a developer who doesn’t apply these best practices, he/she is either inexperienced or somehow survived in previous positions despite this issue. In any case, this approach won’t work long term.



Such a developer needs to be taught proper programming practices by a senior dev, which shouldn’t take very long. Furthermore, examine the culture in your company - are best practices encouraged/enforced? Do your devs share knowledge? Do the managers (you) understand these things and nourish a conducive environment?



As for time estimates, you need an organized approach which is beyond the scope of your question. But from the info you gave, it sounds like you are using waterfall, which may not be the best method for software development.






share|improve this answer





























    0














    If you think it is appropriate given her experience and place in the team you can have the occasional, separate, short and informal meeting with her.



    You need to be careful however not to strain her too much by your attempt to mentor her or figuring out her strengths and weaknesses.



    Plus, let your team members know the priorities for their tasks.



    Also, pace the complexity of assignments, especially for juniors and
    reassure her that using the dev environment is not only allowed but part of the protocol (if that indeed is the case).



    As you see, she struggles to manage her tasks, so help her by assigning them priorities and remind her of company procedures regarding local testing and global dev environments.



    This is not to say you're at fault but anything you ask of her or mention, even if just in passing, may become a priority to a young or inexperienced (as a worker in general) employee.



    They might want to impress you with their capabilities.
    It is easy to forget time management, even for senior employees in that mindset.



    She ends up trying to please you in all areas you mentioned and won't have a chance to succeed in any properly.



    It is commendable that you want to assist in her development, it will benefit your team and her alike.



    Don't classify the meetings in any way (especially not in a separate format) or she might feel singled out or pressured to prevent your impending negative impression about her performance.






    share|improve this answer































      -1














      You need to iron out procedures and expectations, then explain them to everyone.



      Most importantly you then monitor and enforce them, using disciplinary action if necessary. Crashing the environment without good reason and ignoring procedures once would be grounds for a warning, more often and you would need to look at disciplining her.



      You do not change procedures for a single staff member if they're fine for all the rest without risking morale issues in the team.



      Do not single her out at this point though, explain the procedures and expectations to everyone. Make sure they understand it's not a suggestion, there are issues with procedure not being followed and you will be monitoring.






      share|improve this answer



















      • 2




        To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
        – Simon B
        Dec 2 at 0:15






      • 1




        @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
        – Kilisi
        Dec 2 at 0:42












      • @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
        – David Thornley
        Dec 5 at 15:47



















      -11














      The things you mentioned are basics in programming. Obviously, you don't have a strong programmer in the team. No development model can solve incompetence.



      You need to get more funding, terminate her contract and hire a better programmer by paying more. No more money? Replace her with a strong but cheap overseas Indian freelancer.






      share|improve this answer



















      • 7




        There are competent devs in India, but they cost the same as their western counterparts :)
        – Juha Untinen
        Dec 1 at 8:52






      • 4




        this answer is wrong on so many levels...
        – Claudiu Creanga
        Dec 2 at 18:12






      • 1




        @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
        – David Thornley
        Dec 5 at 15:51











      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',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      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%2f123772%2fmy-programmer-underestimates-deadlines-or-is-just-lazy%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown




















      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();
      }
      }
      });
      });






      6 Answers
      6






      active

      oldest

      votes








      6 Answers
      6






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      12














      You might have been describing a young me. Estimating the time required for a task is a skill that takes some time to learn. When asked for an estimate, she probably thinks of how long it will take in a perfect world with no distractions and where nothing goes wrong, and maybe adds a tiny buffer to it. She then feels that she should be able to complete the task in that amount of time, and is embarassed to offer a more realistic time frame because it might make her appear incompetent or lazy. Having given her estimate, she now believes it, and thinks she has time to spare.



      Next time an estimate is required from her, I would sit down with her and analyse the estimate, breaking it down into several smaller sub-tasks. For example, if she says she can add this feature by a certain date, ask her how long it will take to analyse the requirements, how long to write the tests, how long to write the code, how long to run the tests and fix any bugs. At several points, ask her if she wants to revise her estimate. Remind her that things seldom go perfectly smoothly, and that you're looking for a realistic estimate. I'd do this for the next few estimates until she starts to get the hang of things.



      This approach will accomplish several things. It will show her a systematic approach to coming up with an estimate. And when one of the smaller subtasks takes longer than expected, it will make her realise that she is in danger of missing the deadline (and give you advance notice). It will help her notice patterns in her estimates.






      share|improve this answer

















      • 9




        In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
        – Simon B
        Dec 2 at 0:23
















      12














      You might have been describing a young me. Estimating the time required for a task is a skill that takes some time to learn. When asked for an estimate, she probably thinks of how long it will take in a perfect world with no distractions and where nothing goes wrong, and maybe adds a tiny buffer to it. She then feels that she should be able to complete the task in that amount of time, and is embarassed to offer a more realistic time frame because it might make her appear incompetent or lazy. Having given her estimate, she now believes it, and thinks she has time to spare.



      Next time an estimate is required from her, I would sit down with her and analyse the estimate, breaking it down into several smaller sub-tasks. For example, if she says she can add this feature by a certain date, ask her how long it will take to analyse the requirements, how long to write the tests, how long to write the code, how long to run the tests and fix any bugs. At several points, ask her if she wants to revise her estimate. Remind her that things seldom go perfectly smoothly, and that you're looking for a realistic estimate. I'd do this for the next few estimates until she starts to get the hang of things.



      This approach will accomplish several things. It will show her a systematic approach to coming up with an estimate. And when one of the smaller subtasks takes longer than expected, it will make her realise that she is in danger of missing the deadline (and give you advance notice). It will help her notice patterns in her estimates.






      share|improve this answer

















      • 9




        In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
        – Simon B
        Dec 2 at 0:23














      12












      12








      12






      You might have been describing a young me. Estimating the time required for a task is a skill that takes some time to learn. When asked for an estimate, she probably thinks of how long it will take in a perfect world with no distractions and where nothing goes wrong, and maybe adds a tiny buffer to it. She then feels that she should be able to complete the task in that amount of time, and is embarassed to offer a more realistic time frame because it might make her appear incompetent or lazy. Having given her estimate, she now believes it, and thinks she has time to spare.



      Next time an estimate is required from her, I would sit down with her and analyse the estimate, breaking it down into several smaller sub-tasks. For example, if she says she can add this feature by a certain date, ask her how long it will take to analyse the requirements, how long to write the tests, how long to write the code, how long to run the tests and fix any bugs. At several points, ask her if she wants to revise her estimate. Remind her that things seldom go perfectly smoothly, and that you're looking for a realistic estimate. I'd do this for the next few estimates until she starts to get the hang of things.



      This approach will accomplish several things. It will show her a systematic approach to coming up with an estimate. And when one of the smaller subtasks takes longer than expected, it will make her realise that she is in danger of missing the deadline (and give you advance notice). It will help her notice patterns in her estimates.






      share|improve this answer












      You might have been describing a young me. Estimating the time required for a task is a skill that takes some time to learn. When asked for an estimate, she probably thinks of how long it will take in a perfect world with no distractions and where nothing goes wrong, and maybe adds a tiny buffer to it. She then feels that she should be able to complete the task in that amount of time, and is embarassed to offer a more realistic time frame because it might make her appear incompetent or lazy. Having given her estimate, she now believes it, and thinks she has time to spare.



      Next time an estimate is required from her, I would sit down with her and analyse the estimate, breaking it down into several smaller sub-tasks. For example, if she says she can add this feature by a certain date, ask her how long it will take to analyse the requirements, how long to write the tests, how long to write the code, how long to run the tests and fix any bugs. At several points, ask her if she wants to revise her estimate. Remind her that things seldom go perfectly smoothly, and that you're looking for a realistic estimate. I'd do this for the next few estimates until she starts to get the hang of things.



      This approach will accomplish several things. It will show her a systematic approach to coming up with an estimate. And when one of the smaller subtasks takes longer than expected, it will make her realise that she is in danger of missing the deadline (and give you advance notice). It will help her notice patterns in her estimates.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered Dec 1 at 12:38









      mhwombat

      3,44311517




      3,44311517








      • 9




        In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
        – Simon B
        Dec 2 at 0:23














      • 9




        In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
        – Simon B
        Dec 2 at 0:23








      9




      9




      In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
      – Simon B
      Dec 2 at 0:23




      In my organization, managers get estimation training as part of their management training programme. But whenever they want to know how long something will take, they ask the engineers, who haven't had any estimation training.
      – Simon B
      Dec 2 at 0:23













      4














      First up, humans suck at task estimation time. I mean, Really Really Suck.



      They did one study where they got participants to estimate how long it'd be before they were 50% sure they'd be done (aka, an average be-done-by time.) A second group was asked to do the same with a 75% certainty. And the third, a 99% certainty (aka, I'm almost positive I'll be done by this time.)



      The results? Only 13% of the first group was done in time, not half. And of that 99%-certain group? Only 45% were done. Aka, people were being pessimistic, trying to give a safe conservative answer, and they STILL underestimated.



      So they did a follow up, to figure out why we suck at task estimation. One group was asked to guess how long something would take. One group was asked to guess how long it would take best case, if everything went right. And one group was asked how long it would take worst case, if everything went wrong. And they found that the first two groups gave nearly identical times. Basically, people naturally plan as if everything will go perfectly. And it doesn't - it almost never does - and our estimates are bad because of it.



      So, right off the bat: people naturally suck at task estimation. I'd highly suggest reading about the Planning Fallacy a bit to get some more (interesting, imho) information on the subject.



      So! What can you do about it?



      Door #1: Story Points



      Well, Agile groups typically don't use 'Time' as an estimate for how long something will take. Why? Because, well, people suck at task estimation. The minute you ask how long something will take, it sweeps them into bad-task-estimation-mindset.



      Instead, they use Story Points. Instead of estimating how long something will take, they estimate how complicated something will be. This can often help bypass people's overly-optimistic nature.



      Door #2: Time Translation



      There are some people that when they say something will take "4 days", you mentally have to translate to "2 weeks." Yeah, the person should hopefully get better with task estimation as things go forward, but you might have to get into the habit of figuring out the relationship between how long they say it'll take, versus how long it actually takes - and then do some mental calculation when their estimates come up.



      Now, as for the Possibly-Lazy issue?



      You'll have to take special care at figuring out whether it's actually laziness or if they're just not the most familiar at what you're asking them to do. There have been times that I've been in the weeds for a project, with no clear visibility on what I'm doing, what I'm supposed to be doing, and how exactly things are supposed to be done - and it sucks.



      If they're in the weeds? You're either going to have to give them some slack to get things figured out, or have someone get more involved in helping them out. Pair programming can actually be a god-send in these types of situations.



      And if they're just lazy? You're probably going to have to get more involved - daily task goals, or something with more rapid feedback that don't allow them to slouch for days at a time. (Again, make absolutely sure it's a laziness issue before treating it as such.)



      EDIT: A link was requested - but the easiest thing is to google Planning Fallacy or go to the wikipedia page. The article itself is behind a paywall. It's: Buehler, Roger; Dale Griffin; Michael Ross (1995). "It's about time: Optimistic predictions in work and love". European Review of Social Psychology. American Psychological Association






      share|improve this answer























      • Can you provide a link/reference to that study you mentioned? Thanks in advance.
        – CPHPython
        Dec 4 at 11:37
















      4














      First up, humans suck at task estimation time. I mean, Really Really Suck.



      They did one study where they got participants to estimate how long it'd be before they were 50% sure they'd be done (aka, an average be-done-by time.) A second group was asked to do the same with a 75% certainty. And the third, a 99% certainty (aka, I'm almost positive I'll be done by this time.)



      The results? Only 13% of the first group was done in time, not half. And of that 99%-certain group? Only 45% were done. Aka, people were being pessimistic, trying to give a safe conservative answer, and they STILL underestimated.



      So they did a follow up, to figure out why we suck at task estimation. One group was asked to guess how long something would take. One group was asked to guess how long it would take best case, if everything went right. And one group was asked how long it would take worst case, if everything went wrong. And they found that the first two groups gave nearly identical times. Basically, people naturally plan as if everything will go perfectly. And it doesn't - it almost never does - and our estimates are bad because of it.



      So, right off the bat: people naturally suck at task estimation. I'd highly suggest reading about the Planning Fallacy a bit to get some more (interesting, imho) information on the subject.



      So! What can you do about it?



      Door #1: Story Points



      Well, Agile groups typically don't use 'Time' as an estimate for how long something will take. Why? Because, well, people suck at task estimation. The minute you ask how long something will take, it sweeps them into bad-task-estimation-mindset.



      Instead, they use Story Points. Instead of estimating how long something will take, they estimate how complicated something will be. This can often help bypass people's overly-optimistic nature.



      Door #2: Time Translation



      There are some people that when they say something will take "4 days", you mentally have to translate to "2 weeks." Yeah, the person should hopefully get better with task estimation as things go forward, but you might have to get into the habit of figuring out the relationship between how long they say it'll take, versus how long it actually takes - and then do some mental calculation when their estimates come up.



      Now, as for the Possibly-Lazy issue?



      You'll have to take special care at figuring out whether it's actually laziness or if they're just not the most familiar at what you're asking them to do. There have been times that I've been in the weeds for a project, with no clear visibility on what I'm doing, what I'm supposed to be doing, and how exactly things are supposed to be done - and it sucks.



      If they're in the weeds? You're either going to have to give them some slack to get things figured out, or have someone get more involved in helping them out. Pair programming can actually be a god-send in these types of situations.



      And if they're just lazy? You're probably going to have to get more involved - daily task goals, or something with more rapid feedback that don't allow them to slouch for days at a time. (Again, make absolutely sure it's a laziness issue before treating it as such.)



      EDIT: A link was requested - but the easiest thing is to google Planning Fallacy or go to the wikipedia page. The article itself is behind a paywall. It's: Buehler, Roger; Dale Griffin; Michael Ross (1995). "It's about time: Optimistic predictions in work and love". European Review of Social Psychology. American Psychological Association






      share|improve this answer























      • Can you provide a link/reference to that study you mentioned? Thanks in advance.
        – CPHPython
        Dec 4 at 11:37














      4












      4








      4






      First up, humans suck at task estimation time. I mean, Really Really Suck.



      They did one study where they got participants to estimate how long it'd be before they were 50% sure they'd be done (aka, an average be-done-by time.) A second group was asked to do the same with a 75% certainty. And the third, a 99% certainty (aka, I'm almost positive I'll be done by this time.)



      The results? Only 13% of the first group was done in time, not half. And of that 99%-certain group? Only 45% were done. Aka, people were being pessimistic, trying to give a safe conservative answer, and they STILL underestimated.



      So they did a follow up, to figure out why we suck at task estimation. One group was asked to guess how long something would take. One group was asked to guess how long it would take best case, if everything went right. And one group was asked how long it would take worst case, if everything went wrong. And they found that the first two groups gave nearly identical times. Basically, people naturally plan as if everything will go perfectly. And it doesn't - it almost never does - and our estimates are bad because of it.



      So, right off the bat: people naturally suck at task estimation. I'd highly suggest reading about the Planning Fallacy a bit to get some more (interesting, imho) information on the subject.



      So! What can you do about it?



      Door #1: Story Points



      Well, Agile groups typically don't use 'Time' as an estimate for how long something will take. Why? Because, well, people suck at task estimation. The minute you ask how long something will take, it sweeps them into bad-task-estimation-mindset.



      Instead, they use Story Points. Instead of estimating how long something will take, they estimate how complicated something will be. This can often help bypass people's overly-optimistic nature.



      Door #2: Time Translation



      There are some people that when they say something will take "4 days", you mentally have to translate to "2 weeks." Yeah, the person should hopefully get better with task estimation as things go forward, but you might have to get into the habit of figuring out the relationship between how long they say it'll take, versus how long it actually takes - and then do some mental calculation when their estimates come up.



      Now, as for the Possibly-Lazy issue?



      You'll have to take special care at figuring out whether it's actually laziness or if they're just not the most familiar at what you're asking them to do. There have been times that I've been in the weeds for a project, with no clear visibility on what I'm doing, what I'm supposed to be doing, and how exactly things are supposed to be done - and it sucks.



      If they're in the weeds? You're either going to have to give them some slack to get things figured out, or have someone get more involved in helping them out. Pair programming can actually be a god-send in these types of situations.



      And if they're just lazy? You're probably going to have to get more involved - daily task goals, or something with more rapid feedback that don't allow them to slouch for days at a time. (Again, make absolutely sure it's a laziness issue before treating it as such.)



      EDIT: A link was requested - but the easiest thing is to google Planning Fallacy or go to the wikipedia page. The article itself is behind a paywall. It's: Buehler, Roger; Dale Griffin; Michael Ross (1995). "It's about time: Optimistic predictions in work and love". European Review of Social Psychology. American Psychological Association






      share|improve this answer














      First up, humans suck at task estimation time. I mean, Really Really Suck.



      They did one study where they got participants to estimate how long it'd be before they were 50% sure they'd be done (aka, an average be-done-by time.) A second group was asked to do the same with a 75% certainty. And the third, a 99% certainty (aka, I'm almost positive I'll be done by this time.)



      The results? Only 13% of the first group was done in time, not half. And of that 99%-certain group? Only 45% were done. Aka, people were being pessimistic, trying to give a safe conservative answer, and they STILL underestimated.



      So they did a follow up, to figure out why we suck at task estimation. One group was asked to guess how long something would take. One group was asked to guess how long it would take best case, if everything went right. And one group was asked how long it would take worst case, if everything went wrong. And they found that the first two groups gave nearly identical times. Basically, people naturally plan as if everything will go perfectly. And it doesn't - it almost never does - and our estimates are bad because of it.



      So, right off the bat: people naturally suck at task estimation. I'd highly suggest reading about the Planning Fallacy a bit to get some more (interesting, imho) information on the subject.



      So! What can you do about it?



      Door #1: Story Points



      Well, Agile groups typically don't use 'Time' as an estimate for how long something will take. Why? Because, well, people suck at task estimation. The minute you ask how long something will take, it sweeps them into bad-task-estimation-mindset.



      Instead, they use Story Points. Instead of estimating how long something will take, they estimate how complicated something will be. This can often help bypass people's overly-optimistic nature.



      Door #2: Time Translation



      There are some people that when they say something will take "4 days", you mentally have to translate to "2 weeks." Yeah, the person should hopefully get better with task estimation as things go forward, but you might have to get into the habit of figuring out the relationship between how long they say it'll take, versus how long it actually takes - and then do some mental calculation when their estimates come up.



      Now, as for the Possibly-Lazy issue?



      You'll have to take special care at figuring out whether it's actually laziness or if they're just not the most familiar at what you're asking them to do. There have been times that I've been in the weeds for a project, with no clear visibility on what I'm doing, what I'm supposed to be doing, and how exactly things are supposed to be done - and it sucks.



      If they're in the weeds? You're either going to have to give them some slack to get things figured out, or have someone get more involved in helping them out. Pair programming can actually be a god-send in these types of situations.



      And if they're just lazy? You're probably going to have to get more involved - daily task goals, or something with more rapid feedback that don't allow them to slouch for days at a time. (Again, make absolutely sure it's a laziness issue before treating it as such.)



      EDIT: A link was requested - but the easiest thing is to google Planning Fallacy or go to the wikipedia page. The article itself is behind a paywall. It's: Buehler, Roger; Dale Griffin; Michael Ross (1995). "It's about time: Optimistic predictions in work and love". European Review of Social Psychology. American Psychological Association







      share|improve this answer














      share|improve this answer



      share|improve this answer








      edited Dec 5 at 14:35

























      answered Dec 3 at 16:02









      Kevin

      2,182515




      2,182515












      • Can you provide a link/reference to that study you mentioned? Thanks in advance.
        – CPHPython
        Dec 4 at 11:37


















      • Can you provide a link/reference to that study you mentioned? Thanks in advance.
        – CPHPython
        Dec 4 at 11:37
















      Can you provide a link/reference to that study you mentioned? Thanks in advance.
      – CPHPython
      Dec 4 at 11:37




      Can you provide a link/reference to that study you mentioned? Thanks in advance.
      – CPHPython
      Dec 4 at 11:37











      1














      Best practices in software development include some testing methodology. It can follow an official definition such as Test Driven Development or Behavior Driven Development. Or it can some personal method. What matters is an organized approach to writing software where clear, repeatable tests are an integral part in the process.



      If you have a developer who doesn’t apply these best practices, he/she is either inexperienced or somehow survived in previous positions despite this issue. In any case, this approach won’t work long term.



      Such a developer needs to be taught proper programming practices by a senior dev, which shouldn’t take very long. Furthermore, examine the culture in your company - are best practices encouraged/enforced? Do your devs share knowledge? Do the managers (you) understand these things and nourish a conducive environment?



      As for time estimates, you need an organized approach which is beyond the scope of your question. But from the info you gave, it sounds like you are using waterfall, which may not be the best method for software development.






      share|improve this answer


























        1














        Best practices in software development include some testing methodology. It can follow an official definition such as Test Driven Development or Behavior Driven Development. Or it can some personal method. What matters is an organized approach to writing software where clear, repeatable tests are an integral part in the process.



        If you have a developer who doesn’t apply these best practices, he/she is either inexperienced or somehow survived in previous positions despite this issue. In any case, this approach won’t work long term.



        Such a developer needs to be taught proper programming practices by a senior dev, which shouldn’t take very long. Furthermore, examine the culture in your company - are best practices encouraged/enforced? Do your devs share knowledge? Do the managers (you) understand these things and nourish a conducive environment?



        As for time estimates, you need an organized approach which is beyond the scope of your question. But from the info you gave, it sounds like you are using waterfall, which may not be the best method for software development.






        share|improve this answer
























          1












          1








          1






          Best practices in software development include some testing methodology. It can follow an official definition such as Test Driven Development or Behavior Driven Development. Or it can some personal method. What matters is an organized approach to writing software where clear, repeatable tests are an integral part in the process.



          If you have a developer who doesn’t apply these best practices, he/she is either inexperienced or somehow survived in previous positions despite this issue. In any case, this approach won’t work long term.



          Such a developer needs to be taught proper programming practices by a senior dev, which shouldn’t take very long. Furthermore, examine the culture in your company - are best practices encouraged/enforced? Do your devs share knowledge? Do the managers (you) understand these things and nourish a conducive environment?



          As for time estimates, you need an organized approach which is beyond the scope of your question. But from the info you gave, it sounds like you are using waterfall, which may not be the best method for software development.






          share|improve this answer












          Best practices in software development include some testing methodology. It can follow an official definition such as Test Driven Development or Behavior Driven Development. Or it can some personal method. What matters is an organized approach to writing software where clear, repeatable tests are an integral part in the process.



          If you have a developer who doesn’t apply these best practices, he/she is either inexperienced or somehow survived in previous positions despite this issue. In any case, this approach won’t work long term.



          Such a developer needs to be taught proper programming practices by a senior dev, which shouldn’t take very long. Furthermore, examine the culture in your company - are best practices encouraged/enforced? Do your devs share knowledge? Do the managers (you) understand these things and nourish a conducive environment?



          As for time estimates, you need an organized approach which is beyond the scope of your question. But from the info you gave, it sounds like you are using waterfall, which may not be the best method for software development.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Dec 1 at 9:52









          frankhond

          63217




          63217























              0














              If you think it is appropriate given her experience and place in the team you can have the occasional, separate, short and informal meeting with her.



              You need to be careful however not to strain her too much by your attempt to mentor her or figuring out her strengths and weaknesses.



              Plus, let your team members know the priorities for their tasks.



              Also, pace the complexity of assignments, especially for juniors and
              reassure her that using the dev environment is not only allowed but part of the protocol (if that indeed is the case).



              As you see, she struggles to manage her tasks, so help her by assigning them priorities and remind her of company procedures regarding local testing and global dev environments.



              This is not to say you're at fault but anything you ask of her or mention, even if just in passing, may become a priority to a young or inexperienced (as a worker in general) employee.



              They might want to impress you with their capabilities.
              It is easy to forget time management, even for senior employees in that mindset.



              She ends up trying to please you in all areas you mentioned and won't have a chance to succeed in any properly.



              It is commendable that you want to assist in her development, it will benefit your team and her alike.



              Don't classify the meetings in any way (especially not in a separate format) or she might feel singled out or pressured to prevent your impending negative impression about her performance.






              share|improve this answer




























                0














                If you think it is appropriate given her experience and place in the team you can have the occasional, separate, short and informal meeting with her.



                You need to be careful however not to strain her too much by your attempt to mentor her or figuring out her strengths and weaknesses.



                Plus, let your team members know the priorities for their tasks.



                Also, pace the complexity of assignments, especially for juniors and
                reassure her that using the dev environment is not only allowed but part of the protocol (if that indeed is the case).



                As you see, she struggles to manage her tasks, so help her by assigning them priorities and remind her of company procedures regarding local testing and global dev environments.



                This is not to say you're at fault but anything you ask of her or mention, even if just in passing, may become a priority to a young or inexperienced (as a worker in general) employee.



                They might want to impress you with their capabilities.
                It is easy to forget time management, even for senior employees in that mindset.



                She ends up trying to please you in all areas you mentioned and won't have a chance to succeed in any properly.



                It is commendable that you want to assist in her development, it will benefit your team and her alike.



                Don't classify the meetings in any way (especially not in a separate format) or she might feel singled out or pressured to prevent your impending negative impression about her performance.






                share|improve this answer


























                  0












                  0








                  0






                  If you think it is appropriate given her experience and place in the team you can have the occasional, separate, short and informal meeting with her.



                  You need to be careful however not to strain her too much by your attempt to mentor her or figuring out her strengths and weaknesses.



                  Plus, let your team members know the priorities for their tasks.



                  Also, pace the complexity of assignments, especially for juniors and
                  reassure her that using the dev environment is not only allowed but part of the protocol (if that indeed is the case).



                  As you see, she struggles to manage her tasks, so help her by assigning them priorities and remind her of company procedures regarding local testing and global dev environments.



                  This is not to say you're at fault but anything you ask of her or mention, even if just in passing, may become a priority to a young or inexperienced (as a worker in general) employee.



                  They might want to impress you with their capabilities.
                  It is easy to forget time management, even for senior employees in that mindset.



                  She ends up trying to please you in all areas you mentioned and won't have a chance to succeed in any properly.



                  It is commendable that you want to assist in her development, it will benefit your team and her alike.



                  Don't classify the meetings in any way (especially not in a separate format) or she might feel singled out or pressured to prevent your impending negative impression about her performance.






                  share|improve this answer














                  If you think it is appropriate given her experience and place in the team you can have the occasional, separate, short and informal meeting with her.



                  You need to be careful however not to strain her too much by your attempt to mentor her or figuring out her strengths and weaknesses.



                  Plus, let your team members know the priorities for their tasks.



                  Also, pace the complexity of assignments, especially for juniors and
                  reassure her that using the dev environment is not only allowed but part of the protocol (if that indeed is the case).



                  As you see, she struggles to manage her tasks, so help her by assigning them priorities and remind her of company procedures regarding local testing and global dev environments.



                  This is not to say you're at fault but anything you ask of her or mention, even if just in passing, may become a priority to a young or inexperienced (as a worker in general) employee.



                  They might want to impress you with their capabilities.
                  It is easy to forget time management, even for senior employees in that mindset.



                  She ends up trying to please you in all areas you mentioned and won't have a chance to succeed in any properly.



                  It is commendable that you want to assist in her development, it will benefit your team and her alike.



                  Don't classify the meetings in any way (especially not in a separate format) or she might feel singled out or pressured to prevent your impending negative impression about her performance.







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited Dec 5 at 15:45

























                  answered Dec 5 at 15:34









                  DigitalBlade969

                  4,7091420




                  4,7091420























                      -1














                      You need to iron out procedures and expectations, then explain them to everyone.



                      Most importantly you then monitor and enforce them, using disciplinary action if necessary. Crashing the environment without good reason and ignoring procedures once would be grounds for a warning, more often and you would need to look at disciplining her.



                      You do not change procedures for a single staff member if they're fine for all the rest without risking morale issues in the team.



                      Do not single her out at this point though, explain the procedures and expectations to everyone. Make sure they understand it's not a suggestion, there are issues with procedure not being followed and you will be monitoring.






                      share|improve this answer



















                      • 2




                        To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                        – Simon B
                        Dec 2 at 0:15






                      • 1




                        @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                        – Kilisi
                        Dec 2 at 0:42












                      • @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                        – David Thornley
                        Dec 5 at 15:47
















                      -1














                      You need to iron out procedures and expectations, then explain them to everyone.



                      Most importantly you then monitor and enforce them, using disciplinary action if necessary. Crashing the environment without good reason and ignoring procedures once would be grounds for a warning, more often and you would need to look at disciplining her.



                      You do not change procedures for a single staff member if they're fine for all the rest without risking morale issues in the team.



                      Do not single her out at this point though, explain the procedures and expectations to everyone. Make sure they understand it's not a suggestion, there are issues with procedure not being followed and you will be monitoring.






                      share|improve this answer



















                      • 2




                        To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                        – Simon B
                        Dec 2 at 0:15






                      • 1




                        @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                        – Kilisi
                        Dec 2 at 0:42












                      • @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                        – David Thornley
                        Dec 5 at 15:47














                      -1












                      -1








                      -1






                      You need to iron out procedures and expectations, then explain them to everyone.



                      Most importantly you then monitor and enforce them, using disciplinary action if necessary. Crashing the environment without good reason and ignoring procedures once would be grounds for a warning, more often and you would need to look at disciplining her.



                      You do not change procedures for a single staff member if they're fine for all the rest without risking morale issues in the team.



                      Do not single her out at this point though, explain the procedures and expectations to everyone. Make sure they understand it's not a suggestion, there are issues with procedure not being followed and you will be monitoring.






                      share|improve this answer














                      You need to iron out procedures and expectations, then explain them to everyone.



                      Most importantly you then monitor and enforce them, using disciplinary action if necessary. Crashing the environment without good reason and ignoring procedures once would be grounds for a warning, more often and you would need to look at disciplining her.



                      You do not change procedures for a single staff member if they're fine for all the rest without risking morale issues in the team.



                      Do not single her out at this point though, explain the procedures and expectations to everyone. Make sure they understand it's not a suggestion, there are issues with procedure not being followed and you will be monitoring.







                      share|improve this answer














                      share|improve this answer



                      share|improve this answer








                      edited Dec 1 at 12:21

























                      answered Dec 1 at 12:15









                      Kilisi

                      112k61248433




                      112k61248433








                      • 2




                        To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                        – Simon B
                        Dec 2 at 0:15






                      • 1




                        @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                        – Kilisi
                        Dec 2 at 0:42












                      • @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                        – David Thornley
                        Dec 5 at 15:47














                      • 2




                        To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                        – Simon B
                        Dec 2 at 0:15






                      • 1




                        @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                        – Kilisi
                        Dec 2 at 0:42












                      • @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                        – David Thornley
                        Dec 5 at 15:47








                      2




                      2




                      To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                      – Simon B
                      Dec 2 at 0:15




                      To me, the statement "I assured her that she can do and test whatever she wants in development environment" is not compatible with disciplining someone for crashing the development environment.
                      – Simon B
                      Dec 2 at 0:15




                      1




                      1




                      @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                      – Kilisi
                      Dec 2 at 0:42






                      @SimonB released on wrong day, didn't follow procedures,. it's a combination of issues rather than one, and the persistence of the same issues... very clearly stated, but you can pull half a sentence out here and there and make a case for anything... but thanks for the dv
                      – Kilisi
                      Dec 2 at 0:42














                      @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                      – David Thornley
                      Dec 5 at 15:47




                      @Kilisi It sounds from the question as if the production releases are done on Wednesdays, which says nothing about when development environment changes are made. Indeed, if you can't change the development environment except on a rigid schedule, you make it a lot less useful as a testbed.
                      – David Thornley
                      Dec 5 at 15:47











                      -11














                      The things you mentioned are basics in programming. Obviously, you don't have a strong programmer in the team. No development model can solve incompetence.



                      You need to get more funding, terminate her contract and hire a better programmer by paying more. No more money? Replace her with a strong but cheap overseas Indian freelancer.






                      share|improve this answer



















                      • 7




                        There are competent devs in India, but they cost the same as their western counterparts :)
                        – Juha Untinen
                        Dec 1 at 8:52






                      • 4




                        this answer is wrong on so many levels...
                        – Claudiu Creanga
                        Dec 2 at 18:12






                      • 1




                        @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                        – David Thornley
                        Dec 5 at 15:51
















                      -11














                      The things you mentioned are basics in programming. Obviously, you don't have a strong programmer in the team. No development model can solve incompetence.



                      You need to get more funding, terminate her contract and hire a better programmer by paying more. No more money? Replace her with a strong but cheap overseas Indian freelancer.






                      share|improve this answer



















                      • 7




                        There are competent devs in India, but they cost the same as their western counterparts :)
                        – Juha Untinen
                        Dec 1 at 8:52






                      • 4




                        this answer is wrong on so many levels...
                        – Claudiu Creanga
                        Dec 2 at 18:12






                      • 1




                        @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                        – David Thornley
                        Dec 5 at 15:51














                      -11












                      -11








                      -11






                      The things you mentioned are basics in programming. Obviously, you don't have a strong programmer in the team. No development model can solve incompetence.



                      You need to get more funding, terminate her contract and hire a better programmer by paying more. No more money? Replace her with a strong but cheap overseas Indian freelancer.






                      share|improve this answer














                      The things you mentioned are basics in programming. Obviously, you don't have a strong programmer in the team. No development model can solve incompetence.



                      You need to get more funding, terminate her contract and hire a better programmer by paying more. No more money? Replace her with a strong but cheap overseas Indian freelancer.







                      share|improve this answer














                      share|improve this answer



                      share|improve this answer








                      edited Dec 1 at 9:25









                      Kilisi

                      112k61248433




                      112k61248433










                      answered Dec 1 at 7:34









                      SmallChess

                      1,2394621




                      1,2394621








                      • 7




                        There are competent devs in India, but they cost the same as their western counterparts :)
                        – Juha Untinen
                        Dec 1 at 8:52






                      • 4




                        this answer is wrong on so many levels...
                        – Claudiu Creanga
                        Dec 2 at 18:12






                      • 1




                        @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                        – David Thornley
                        Dec 5 at 15:51














                      • 7




                        There are competent devs in India, but they cost the same as their western counterparts :)
                        – Juha Untinen
                        Dec 1 at 8:52






                      • 4




                        this answer is wrong on so many levels...
                        – Claudiu Creanga
                        Dec 2 at 18:12






                      • 1




                        @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                        – David Thornley
                        Dec 5 at 15:51








                      7




                      7




                      There are competent devs in India, but they cost the same as their western counterparts :)
                      – Juha Untinen
                      Dec 1 at 8:52




                      There are competent devs in India, but they cost the same as their western counterparts :)
                      – Juha Untinen
                      Dec 1 at 8:52




                      4




                      4




                      this answer is wrong on so many levels...
                      – Claudiu Creanga
                      Dec 2 at 18:12




                      this answer is wrong on so many levels...
                      – Claudiu Creanga
                      Dec 2 at 18:12




                      1




                      1




                      @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                      – David Thornley
                      Dec 5 at 15:51




                      @SmallChess Estimation is not basic to programming, and programmer estimates usually suck. There's a difference between a competent junior developer and a competent senior developer, and nothing OP says is in any way incompatible with her being a competent junior developer. There's no reason to let her go. Hiring a freelancer overseas comes with its own set of headaches, and it's unlikely to be cheaper than hiring another developer locally.
                      – David Thornley
                      Dec 5 at 15:51


















                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to The Workplace Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.





                      Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                      Please pay close attention to the following guidance:


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fworkplace.stackexchange.com%2fquestions%2f123772%2fmy-programmer-underestimates-deadlines-or-is-just-lazy%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown











                      Popular posts from this blog

                      AnyDesk - Fatal Program Failure

                      How to calibrate 16:9 built-in touch-screen to a 4:3 resolution?

                      QoS: MAC-Priority for clients behind a repeater