9

Today at my job, I just could not shake the feeling that I screwed up somehow. I work as a software developer and I merged about 10-15 branches into another repository today.

The only problem was that there were several errors and changes (one branch had a relatively major refactoring, whereas another had changes to the original version of that, which caused a large conflict and was very confusing to myself and my boss).

I also was asked about a certain piece of data not being viewable - but I don't remember it ever being in the specifications that it should be viewable for that particular item (not until a later change, which was not merged in yet), and looking back, it doesn't appear like I ever wrote anything to implement that, and the task doesn't include it.

My question is - how do you tell between a process-level error and an individual-level error? And how do you guard against either of them? My goal is to get better at my job, but I'm somewhat lost as to how to know when I'm messing up, when the system is messed up, or a combination of both.

Is there a surefire way to know when you are at fault, and when external factors are at fault? How do you determine fault (not for assigning blame) to fix things and go forward?

  • Not sure if this is the right SE - but is this something that code reviews would help minimise? – user29055 Oct 27 '15 at 22:09
  • Probably. We don't do code reviews though, at least not with any regularity. It's a very small company. – Joe Smentz Oct 27 '15 at 22:22
  • 7
    @RonD Quick answer is then the process is at fault - there should be code reviews :) - also merging 10-15 branches in a day seems like something else is wrong – user151019 Oct 27 '15 at 22:42
  • 5
    Have you tried "5 whys"? You can't remember if something was in the spec. Why? The spec isn't written down. Why? ... and keep going for 5 levels. Often very revealing. – Kate Gregory Oct 28 '15 at 0:33
  • 1
    @KateGregory - I thought I was the only geezer on here who still used the "Five Whys." You just made my day! – Wesley Long Oct 28 '15 at 3:35
7

There's a good rule of thumb that can help to identify if the issue is the process or an individual.

If a reasonable person follows the process properly under the same conditions, will it lead to the same outcome? So if the process was followed, and the issue occurred, the process needs some enhancing. If the process was not followed, or if following the process cannot lead to the same outcome, then it's the individual.

Note: Always assume first that the process is flawed and the person has followed it.

  • 1
    in addition, the not-following may be caused by a flaw (eg for physical processes, the things are too far apart) so even if "not following the process" caused the problem you can see what to change in the process in order to get it followed – Kate Gregory Oct 28 '15 at 10:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.