My programmer underestimates deadlines or is just lazy
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty{ margin-bottom:0;
}
up vote
5
down vote
favorite
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
|
show 2 more comments
up vote
5
down vote
favorite
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
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
|
show 2 more comments
up vote
5
down vote
favorite
up vote
5
down vote
favorite
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
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
performance employees deadlines
edited Dec 1 at 9:31
Kilisi
110k61246426
110k61246426
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
|
show 2 more comments
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
|
show 2 more comments
7 Answers
7
active
oldest
votes
up vote
12
down vote
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.
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
add a comment |
up vote
2
down vote
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
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
add a comment |
up vote
1
down vote
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.
add a comment |
up vote
-1
down vote
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.
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
12 hours ago
add a comment |
up vote
-1
down vote
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.
add a comment |
up vote
-6
down vote
You don_t have a programmer - you have someone incompetent for the job, to start with. Replace programming with cooking and then ask whether a cook - one working in that profession - would have problems with complex stuff like making pasta. SQL functions ARE basic. Not saying most programmers re not competent, particularly if they work for a manager with limited skillset - they may even get into senior positions then.
Second, you have a really not too good development cycle. Wednesday release is not bad, but there should be cut offs, different test environments etc. - and what does not make it, goes into the next release.
Third, you miss a fundamental of SCRUM - people have to be consistent with their estimates, NOT RIGHT. You THEN adjust speed based on how good or bad the estimates are. I.e. maybe they get only 10 hours done per week - but that is it. You do NOT change estimates because PEOPLE ARE BAD AT ESTIMATING. If we have learned anything about IT projects in the last 80 years or so - you can not properly estimate them, estimates always shoot low.
That said, the fact that you DO use a waterfall process is a VERY strong indication you have NOT learned anything about IT projects in the last 80 years. They generally do NOT work - unless you have
- very specific requirements
- very specific deadlines
spend a lot on planning
have very strong legal requirements that are ok with wasting a ton of money on overheads (which i.e. governments love)
None of that is normally true in business, and the whole idea of modern software development is NOT to do waterfall.
And again, from what you say, she is not a programmer. She is - a beginner lacking the fundamental basics. Deal with it, or replace her with someone competent. Given she is the only programmer, there is no one to mentor her. Not good.
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
add a comment |
up vote
-11
down vote
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.
6
There are competent devs in India, but they cost the same as their western counterparts :)
– Juha Untinen
Dec 1 at 8:52
3
this answer is wrong on so many levels...
– Claudiu Creanga
Dec 2 at 18:12
@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
11 hours ago
add a comment |
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();
}
}
});
});
7 Answers
7
active
oldest
votes
7 Answers
7
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
12
down vote
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.
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
add a comment |
up vote
12
down vote
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.
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
add a comment |
up vote
12
down vote
up vote
12
down vote
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.
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.
answered Dec 1 at 12:38
mhwombat
3,43311517
3,43311517
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
add a comment |
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
add a comment |
up vote
2
down vote
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
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
add a comment |
up vote
2
down vote
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
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
add a comment |
up vote
2
down vote
up vote
2
down vote
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
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
edited 13 hours ago
answered 2 days ago
Kevin
1,418312
1,418312
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
add a comment |
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
Can you provide a link/reference to that study you mentioned? Thanks in advance.
– CPHPython
yesterday
add a comment |
up vote
1
down vote
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.
add a comment |
up vote
1
down vote
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.
add a comment |
up vote
1
down vote
up vote
1
down vote
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.
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.
answered Dec 1 at 9:52
frankhond
63217
63217
add a comment |
add a comment |
up vote
-1
down vote
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.
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
12 hours ago
add a comment |
up vote
-1
down vote
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.
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
12 hours ago
add a comment |
up vote
-1
down vote
up vote
-1
down vote
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.
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.
edited Dec 1 at 12:21
answered Dec 1 at 12:15
Kilisi
110k61246426
110k61246426
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
12 hours ago
add a comment |
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
12 hours ago
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
12 hours ago
@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
12 hours ago
add a comment |
up vote
-1
down vote
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.
add a comment |
up vote
-1
down vote
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.
add a comment |
up vote
-1
down vote
up vote
-1
down vote
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.
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.
edited 12 hours ago
answered 12 hours ago
DigitalBlade969
2,8151314
2,8151314
add a comment |
add a comment |
up vote
-6
down vote
You don_t have a programmer - you have someone incompetent for the job, to start with. Replace programming with cooking and then ask whether a cook - one working in that profession - would have problems with complex stuff like making pasta. SQL functions ARE basic. Not saying most programmers re not competent, particularly if they work for a manager with limited skillset - they may even get into senior positions then.
Second, you have a really not too good development cycle. Wednesday release is not bad, but there should be cut offs, different test environments etc. - and what does not make it, goes into the next release.
Third, you miss a fundamental of SCRUM - people have to be consistent with their estimates, NOT RIGHT. You THEN adjust speed based on how good or bad the estimates are. I.e. maybe they get only 10 hours done per week - but that is it. You do NOT change estimates because PEOPLE ARE BAD AT ESTIMATING. If we have learned anything about IT projects in the last 80 years or so - you can not properly estimate them, estimates always shoot low.
That said, the fact that you DO use a waterfall process is a VERY strong indication you have NOT learned anything about IT projects in the last 80 years. They generally do NOT work - unless you have
- very specific requirements
- very specific deadlines
spend a lot on planning
have very strong legal requirements that are ok with wasting a ton of money on overheads (which i.e. governments love)
None of that is normally true in business, and the whole idea of modern software development is NOT to do waterfall.
And again, from what you say, she is not a programmer. She is - a beginner lacking the fundamental basics. Deal with it, or replace her with someone competent. Given she is the only programmer, there is no one to mentor her. Not good.
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
add a comment |
up vote
-6
down vote
You don_t have a programmer - you have someone incompetent for the job, to start with. Replace programming with cooking and then ask whether a cook - one working in that profession - would have problems with complex stuff like making pasta. SQL functions ARE basic. Not saying most programmers re not competent, particularly if they work for a manager with limited skillset - they may even get into senior positions then.
Second, you have a really not too good development cycle. Wednesday release is not bad, but there should be cut offs, different test environments etc. - and what does not make it, goes into the next release.
Third, you miss a fundamental of SCRUM - people have to be consistent with their estimates, NOT RIGHT. You THEN adjust speed based on how good or bad the estimates are. I.e. maybe they get only 10 hours done per week - but that is it. You do NOT change estimates because PEOPLE ARE BAD AT ESTIMATING. If we have learned anything about IT projects in the last 80 years or so - you can not properly estimate them, estimates always shoot low.
That said, the fact that you DO use a waterfall process is a VERY strong indication you have NOT learned anything about IT projects in the last 80 years. They generally do NOT work - unless you have
- very specific requirements
- very specific deadlines
spend a lot on planning
have very strong legal requirements that are ok with wasting a ton of money on overheads (which i.e. governments love)
None of that is normally true in business, and the whole idea of modern software development is NOT to do waterfall.
And again, from what you say, she is not a programmer. She is - a beginner lacking the fundamental basics. Deal with it, or replace her with someone competent. Given she is the only programmer, there is no one to mentor her. Not good.
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
add a comment |
up vote
-6
down vote
up vote
-6
down vote
You don_t have a programmer - you have someone incompetent for the job, to start with. Replace programming with cooking and then ask whether a cook - one working in that profession - would have problems with complex stuff like making pasta. SQL functions ARE basic. Not saying most programmers re not competent, particularly if they work for a manager with limited skillset - they may even get into senior positions then.
Second, you have a really not too good development cycle. Wednesday release is not bad, but there should be cut offs, different test environments etc. - and what does not make it, goes into the next release.
Third, you miss a fundamental of SCRUM - people have to be consistent with their estimates, NOT RIGHT. You THEN adjust speed based on how good or bad the estimates are. I.e. maybe they get only 10 hours done per week - but that is it. You do NOT change estimates because PEOPLE ARE BAD AT ESTIMATING. If we have learned anything about IT projects in the last 80 years or so - you can not properly estimate them, estimates always shoot low.
That said, the fact that you DO use a waterfall process is a VERY strong indication you have NOT learned anything about IT projects in the last 80 years. They generally do NOT work - unless you have
- very specific requirements
- very specific deadlines
spend a lot on planning
have very strong legal requirements that are ok with wasting a ton of money on overheads (which i.e. governments love)
None of that is normally true in business, and the whole idea of modern software development is NOT to do waterfall.
And again, from what you say, she is not a programmer. She is - a beginner lacking the fundamental basics. Deal with it, or replace her with someone competent. Given she is the only programmer, there is no one to mentor her. Not good.
You don_t have a programmer - you have someone incompetent for the job, to start with. Replace programming with cooking and then ask whether a cook - one working in that profession - would have problems with complex stuff like making pasta. SQL functions ARE basic. Not saying most programmers re not competent, particularly if they work for a manager with limited skillset - they may even get into senior positions then.
Second, you have a really not too good development cycle. Wednesday release is not bad, but there should be cut offs, different test environments etc. - and what does not make it, goes into the next release.
Third, you miss a fundamental of SCRUM - people have to be consistent with their estimates, NOT RIGHT. You THEN adjust speed based on how good or bad the estimates are. I.e. maybe they get only 10 hours done per week - but that is it. You do NOT change estimates because PEOPLE ARE BAD AT ESTIMATING. If we have learned anything about IT projects in the last 80 years or so - you can not properly estimate them, estimates always shoot low.
That said, the fact that you DO use a waterfall process is a VERY strong indication you have NOT learned anything about IT projects in the last 80 years. They generally do NOT work - unless you have
- very specific requirements
- very specific deadlines
spend a lot on planning
have very strong legal requirements that are ok with wasting a ton of money on overheads (which i.e. governments love)
None of that is normally true in business, and the whole idea of modern software development is NOT to do waterfall.
And again, from what you say, she is not a programmer. She is - a beginner lacking the fundamental basics. Deal with it, or replace her with someone competent. Given she is the only programmer, there is no one to mentor her. Not good.
edited Dec 1 at 9:25
Kilisi
110k61246426
110k61246426
answered Dec 1 at 8:33
TomTom
3,8822816
3,8822816
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
add a comment |
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
Much SQL is basic. There's a lot of SQL queries that I've seen that I'd have problems with, and I'm very experienced and have used SQL off and on for decades. I've seen competent people make SQL mistakes. Without knowing what the SQL is, I can't say whether the developer is incompetent.
– David Thornley
5 hours ago
add a comment |
up vote
-11
down vote
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.
6
There are competent devs in India, but they cost the same as their western counterparts :)
– Juha Untinen
Dec 1 at 8:52
3
this answer is wrong on so many levels...
– Claudiu Creanga
Dec 2 at 18:12
@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
11 hours ago
add a comment |
up vote
-11
down vote
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.
6
There are competent devs in India, but they cost the same as their western counterparts :)
– Juha Untinen
Dec 1 at 8:52
3
this answer is wrong on so many levels...
– Claudiu Creanga
Dec 2 at 18:12
@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
11 hours ago
add a comment |
up vote
-11
down vote
up vote
-11
down vote
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.
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.
edited Dec 1 at 9:25
Kilisi
110k61246426
110k61246426
answered Dec 1 at 7:34
SmallChess
1,3193621
1,3193621
6
There are competent devs in India, but they cost the same as their western counterparts :)
– Juha Untinen
Dec 1 at 8:52
3
this answer is wrong on so many levels...
– Claudiu Creanga
Dec 2 at 18:12
@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
11 hours ago
add a comment |
6
There are competent devs in India, but they cost the same as their western counterparts :)
– Juha Untinen
Dec 1 at 8:52
3
this answer is wrong on so many levels...
– Claudiu Creanga
Dec 2 at 18:12
@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
11 hours ago
6
6
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
3
3
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
@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
11 hours ago
@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
11 hours ago
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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