3 ms·
This was also my experience in the Nuclear Navy, wholly disconnected from software development. I was my division’s maintenance planner, among other things, and
by sgarland 3y ago
This was also my experience in the Nuclear Navy, wholly disconnected from software development. I was my division’s maintenance planner, among other things, and so I needed to plan when we would accomplish preventative maintenance on approximately 20 different systems. Planning was usually done a quarter at a time, but there were semi-annual, annual, and greater maintenance items you also had to take into account. Further complicating things, many of the items had specific plant criteria to be met (some are easy, like “the reactor must be shut down”), some of which would only happen once in a given quarter at best. Finally, if you wanted to maximize efficiency, you also should carefully read every maintenance item to determine where there was crossover, so you could use one to partially setup for another.
I made a huge dependency table in Microsoft Project, and generated Gantt charts from that. It worked flawlessly. A few key differences on the people side compared to software:
* No one insisted that I plan for the nominal persons’ abilities. If Petty Officer Schmuckatelli happened to be a savant at a specific maintenance item, guess what, he’s always getting assigned that one. Others would assist (nuclear maintenance is always a two-person operation), but getting the job done correctly and efficiently was priority one.
* I didn’t have to get consensus from a team on how long everything should take. This one is of course quite different from software, in that a lot of software work is novel to an extent; on the other hand, my submarine was of a new class, so there wasn’t a lot of institutional knowledge to fall back on.
* Accountability is actually a thing. If you say something has been done, it’d damn well better be done. If you make a mistake, there is an all stop while you convene a meeting of god and country to hold a retrospective (though we call them critiques). There will be consequences. Not career-ending or anything – it’s quite common to cause a critique or three – but you also don’t get to just skip on out. They’re not blameful in that the point isn’t simply to say, “why do you suck,” but they’re also not oblivious to the fact that often, a person’s inattentiveness is in fact the root cause.
- nradov 3y agoGood points, but sometimes it's better for the organization to assign a less productive employee to a certain task for the sake of cross training. Petty Officer Schmuckatelli won't be around forever and so you need to have a capable backup.
- sgarland 3y agoYes. As I alluded to, there is cross-training, it’s just that given the option, the more competent people will always be the lead on that job. The model doesn’t translate well to civilian work, I think, largely because of contracts and guaranteed knowledge. In the Navy, you’re practically guaranteed that a given person will be attached to your command for at least 4 years, and their departure is planned well in advance. This gives you plenty of time to find people’s competencies and develop them. The guaranteed knowledge comes in from the team structure – every division (team) has a Chief, a senior enlisted person who is generally assumed to have seen everything. If they haven’t, and an issue pops up, they will find how to work the problem. Intrinsic to this assumption is the fact that commands aren’t competitors (not officially, anyway), and you can easily ask a sister boat how they did X.
- deleted 3y ago[deleted]
- testudovictoria 3y agoI truly wish that teams used retrospectives in this manner instead of the shallow conversations that are often devoid of blame. Not that every sprint needs to have a deep, impactful retro, but it's nice to talk about shortcomings, be able to accept blame, and move forward with actionable items. Everyone comes out ahead.
- zdragnar 3y agoAssigning (and accepting) responsibility is, I think, rather different from the "blame" that such retro's try to avoid. You have to have a very safe work environment for that to happen. Otherwise, saying "I was blocked by person X" finding the wrong ears is a great way for person X to wind up on a PIP if the company's management is sufficiently inept. I do miss being able to be honest at work. Edit: rereading my comment, I realized I could have been clearer. What I really was getting at was the motivation: how do we help each other avoid the problem in the future, versus "everyone but person X can feel okay about what happened".
- testudovictoria 3y agoSame with me. By blame, I really meant responsibility. We missed a pretty big deadline not too long ago. In the retro, I accepted a lion's share of the responsibility. I'm a senior dev rather than a team lead, but I had my head down during a lot of the technical discussions and PRs rather than diving deep with the juniors and mid-levels. I apologized for it. I have made myself more available since then. PRs have been under more scrutiny from everyone, and I feel like the constructive feedback and requests for comments have been flowing more openly.
- sgarland 3y agoFully agree. My wife is a Montessori teacher, and her observation has been that people are afraid of failure, even in an environment where failure is an expected part of learning. There are some cultural differences, but she says that it’s a fairly accurate baseline. There’s an excellent talk [0] that discusses why and how blameless has missed the mark. Somewhat compressed version of the same talk by the same person here [1]. [0]: https://youtu.be/gfINfi2K1lE https://youtu.be/gfINfi2K1lE [1]: https://youtu.be/l2CdjZUAmb0 https://youtu.be/l2CdjZUAmb0