Earlier quoted context omitted.
I don't know how you get the idea that it's forced. We're known for it, it's part of the interviewing process for Labs and most of R&D. Folks who don't want to pair generally don't apply. Of those who apply, some try it during the interview process and decide it's not for them. That is a good thing. Besides which, solo work is common too. Most of the field org works solo, Spring folks mostly work solo, I love pairing…
>>> Folks who don't want to pair generally don't apply. Of those who apply, some try it during the interview process and decide it's not for them. That... sounds like forced to me?
The art of interrupting software engineers
91–100 of 255 posts
Re: The art of interrupting software engineers
#92I've found the best way to avoid interrupting engineers is to have a daily sync (a.k.a stand up meeting). My team meets for 30 minutes each morning to give an update, have Q&A, and discuss priorities and issues. We're a small team (3 developers) but it works perfectly because folks either had their inquiry answered earlier in the day or can execute good judgement to try to figure it out and if not ask about it tomorr…
A daily sync is way too often on teams that know what they're doing. It feels like busy work and is a waste in throughput and stress. Once a week, with committed items with a true definition of done is all that is needed. Anything in-between should be facilitated by the team members to unblock each other. Anything else is just stakeholder over management and or inexperienced teams. edit: at the most, I think async ar…
Finally! A sane voice appears!
Re: The art of interrupting software engineers
#93Earlier quoted context omitted.
Pivotal doesn't use sprints. Stories are pointed by engineers and ordered by the PM, but they're done when they are done , to the satisfaction of both. Tracker is able to give short-term forecasts of what will be done by when by averaging the last 3 weeks of deliveries (ie, velocity). Personally I think the idea of sprints is a menace. It creates an artificial deadline that leads to either waste or stress. Deadlines…
I think that artificial deadlines and stress exist because the team and management allow it to exist. A story should fit into a sprint, but it may spill into the following sprint, but you shouldn't sacrifice quality just because you tried to finish it within the sprint. And a team should stand up for themselves in this regard, as a team, because a team succeeds and fails together. If you sacrifice quality because of…
With that in mind, sprints can work pretty well, and work "spilling over" to another sprint is generally no problem. It starts falling apart if the artificial deadline becomes a forced deadline, or if the protection part is dropped.
Re: The art of interrupting software engineers
#94First, you have to understand the context. This person is talking about an Extreme Programming team. Speaking as someone who wrote a book about XP, here are some things that are true about by-the-book XP teams:
1) All production programming is done in pairs, all the time.
2) Everybody sits in a shared team room at dedicated "pairing stations."
3) The atmosphere is highly collaborative and friendly, and there's always a low buzz of conversation in the room. Interruptions are normal and expected, as the team's overall performance is valued more highly than individual performance. Due to pairing, interruptions tend not to interrupt flow.
4) Requirements are conveyed verbally, not through written documents. Stories are short "reminders to hold a conversation," not fully-fleshed out.
5) The team values feedback and wants frequent conversations with their on-site customers (including the product manager) to confirm that they're on the right track, particularly about nitpicky details that are difficult to anticipate in advance.
Given this context, the author is talking about how he, as a product manager, does his job of providing business context and customers' points of view.
This material is not meant for people who aren't on an XP team. It's good advice for product managers who are.
Re: The art of interrupting software engineers
#95Earlier quoted context omitted.
> daily sync (a.k.a stand up meeting) *status report > My team meets for 30 minutes each morning That is far too long IMO and IME > We're a small team (3 developers) 30 mins for 3 devs...
It's not just a status report, it's a casual discussion about the work. We collaborate on strategy, talk about any issues, and coordinate with each other. We front load information sharing so that it's rare to have to share information (ie. interrupt) at other times in the day.
Re: The art of interrupting software engineers
#96Re: The art of interrupting software engineers
#97Re: The art of interrupting software engineers
#98Get 1 tangible thing done a day. Ideally it has a visible effect (but don't make this religion- I had to rip out a cache infrastructure last week and replace it with a home-grown one and there was no visible effect other than things not breaking!)
Now, some days, this means you either don't work the full 8 or you go over 8 because the particular piece you're building just won't get built sooner (or you didn't break it up enough). But on average, just having this goal seems to be working.
If interruption would be costly, I take it to a quiet place for a few hours such as a library.
Re: The art of interrupting software engineers
#99If you actually need to know whether something is falling behind schedule every few hours (which seems unusual), of course not everybody is going to provide updates that frequently of their own volition. But most good engineers, under the right circumstances, will have a sense for when something is not on track and can raise their concerns.
If you actually had a good level of trust on the team, you would work to get people to buy into it. Of course, it's probably hard to convince most engineers that you actually need an update twice a day, for good reason.
Re: The art of interrupting software engineers
#100You know what I don't get about status updates? We're all using tools like Jira, Trello, Pivotal Tracker, GitHub issues, etc., where you can see what everyone's working on and the status of each of those tasks. Why do we need frequent status updates like standups and PMs looking over our shoulders if you can just go to the project board and look for yourself? If I'm going to be asked about the status of what I'm doin…