4 ms·
I use this knowledge to build hyper effective software teams. In the military I learned just how much the cohesion of a group contributes to its success. Two m
by ryanmarsh 12y ago
I use this knowledge to build hyper effective software teams.
In the military I learned just how much the cohesion of a group contributes to its success. Two major factors of unit cohesion that I observed were pride in the mission, and emotional bonds within the group. The two combined are almost unstoppable. This is a little uncanny as I stopped from booking a flight to my 10 year deployment reunion just to share this thought with you.
Also, I was in Baghdad during an Ashura. It was a vivid sight to behold. The whole neighborhood was definitely alive with a kind of electricity.
- meatcar 12y agoDo you mind expanding on your first statement, perhaps with an example? How do you apply something like fire-walking to a software team without breaking some workplace safety and labour laws?
- ryanmarsh 12y agoLOL, well one night I brought the team over to my house, lit a big fire (I have a huge backyard), burned some steaks (no diet restrictions in that group), and we threw hatchets at an oak tree... That's not really it, but it just goes to show what I'm willing to do. I really pushed them to achieve more than they believed they could. I had several of the guys say they've never worked harder on a project but also never been more proud of what they built. I've heard this many times over the years. The key is to not just crack the whip. That's so demoralizing. Soldiers are human, you can't get people to do what you want if you're constantly pressing on them. It's no different for programmers. You have to play cheerleader, you have to tell them you believe they can do just a little bit more than they think they can, you have to watch the body language and know when the team is beat. You have to employ your unit in accordance with it's capabilities. Never set them up for a failure. You have to make sure they get fed first, they get rest first. You have to insure that they can explain to others how important or meaningful this thing they are doing is. Shareholder value is a disgusting insult, what innate human need do they have that creating this thing will fill? Strike there. Most programmers just want to make a difference in someones life, make something people will use. I arranged for a team to spend time at a package sorting facility on an airfield in the freezing rain so they could feel the pain and frustration of the people using outdated technology. I arranged for another team to spend time with a group of stressed out next-to-tears "release of medical records team" that had mail come in by the truck load. Inspire the team that what they are going to do actually changes lives, then hold them to a high standard (just outside of what they believe is possible) and lead the charge by working harder than any of them. You have to run interference for them, catch 100% of the bullshit. I once inadvertently let a developer listen in on a call while a customer screamed at me and insulted the team (not present), I stood up for them and made the client apologize. The developer saw how incredulous I was, and was amazed at how much shit I took for them. He told the others and it went a long way to build trust. Trust is a big one, in the military I learned about moral authority. It basically means, if you are ALWAYS doing the "right thing" the good moral honest thing by the group when you ask them to do something hard or painful they will do it because they know you aren't asking out of self protection they know you've done everything to protect them from what you are about to ask them to do. How many times have you had a boss that would lay down his career to protect you from having to do something stupid and painful? So yes, I've been fired plenty, I've also been the guy they send in after everything is shot to hell as well. I love being a snake eater. I can't say it's always worked out perfect or that I've always been the model leader. I've grown quite a bit over the years and learned from my mistakes. The principles I learned in combat arms do absolutely translate though. My motto is, get the team to the top of the hill without anyone getting killed. It's a metaphor for doing hard things without it turning into a death march. I could write so much more. Hopefully I've answered your question.
- scoggs 12y agoI love the approach, Ryan. In so many words you've described the basis of what I've liked about my favorite superiors. They read their workers and played ball with them. The worst types seem to be the inhuman ones who can't seem to understand people have lives, good days and bad. Hell, I don't even know you and you almost got me pumped up to work for you. Keep up the good work.
- ryanmarsh 12y agoThank you.
- quotient 12y agoYour package-sorting and medical-record facility examples strike me as pure gold. I wasn't sold at first, but you seem like a great team leader. As another person wrote, you seem to really understand the essence of effective leadership. This sounds like a really good approach. One question: have you ever had subordinates/employees for whom your approach didn't work?
- ryanmarsh 12y agoThank you. At first those projects seemed like pure monotony to everyone involved. There's a human element in every project, you just have to look for it. To your question: Yes, absolutely. But that's part of being a leader (and hopefully growing) I've failed people. Royally fucking failed them. There was one in particular that at the time I blamed and I feel horrible about it now. I mean, every time I talk to a mutual friend or bump into him in the community I just feel terrible inside. I hope he reads this. I've tried to buy him a beer so I can apologize but he doesn't want to go. I sympathize. If I were him I'd hate me too. The best thing I can do is just learn and grow. In the military I learned that no soldier is "untrainable", meaning if they aren't performing you aren't leading them right. Heh, and everyone thinks it's all about yelling and top down control. I've spent the past several years as an Agile Coach. I started out as a developer but I was so sick of how programmers were treated by management. The way we manage software teams in most of the IT industry is demonstrably insane. It makes me sick. Perhaps it's just that these days I often get called in to work with the worst of the worst. We treat programers like they should be at their sewing machines for x hours a day, we measure them on everything except working software, and as they say "the beatings will continue until moral improves". Isn't it interesting how part of the thread immediately jumped to an expression of the pain programmers feel when they have to attend company "team building" functions? Why? Why don't we recognize why as Jason Fried asks "work doesn't get done at work", or "manager time vs. maker time", or the power of introverts? What about this WHY DON'T WE EXPECT MANAGERS BEHAVE LIKE LEADERS??? Why when we talk about leaders don't we envision SERVANT LEADERS? Why does every interaction with HR or Community Managers have to be so damn cringe worthy? Why can't things be real, honest, meaningful, trusting? Sorry for the tirade. It's just insane and it bothers me, because I love developers. They're amazing people who just want to make the world a better place. Edit: Grammar
- dbarlett 12y agoAt least in the U.S., you take them to a Tony Robbins seminar [1] or bring in someone to set it up on the lawn outside [2]. [1] http://www.tonyrobbins.com/events/unleash-the-power-within/ http://www.tonyrobbins.com/events/unleash-the-power-within/ [2] http://firepowerseminars.com/fire-walk/ http://firepowerseminars.com/fire-walk/
- bitwize 12y agoTony Robbins came immediately to mind when I read this because it looks like the mechanism of Robbins and other Large Group Awareness Training (LGAT) seminars is to use the psychological bonding effects of shared harrowing experiences to separate people from their money. Read up on James Arthur Ray for a particularly crooked (and lethally careless!) example of such underhanded manipulation.
- jasode 12y agoIf it worked for your particular team, that's fine but I want to present a different perspective on this: the developers I know despise that type of teambulding activity. As a group, developers often lean more towards the introverted rather than the extroverted and spending more time with coworkers outside of work is not something they hunger for. Therefore, going to the manager's home for a backyard grillout to foster "social cohesion" would be perceived as weird theatrical manipulation. Others have come to the same conclusion[1] For these types of no-nonsense developers, the kinds of activities that really build teams is simply the day-to-day work interactions. E.g. when John checks in his source code or it's released into production servers, the colleagues know it's high quality and their smartphones won't have a zillion text messages about broken builds or devops alerts on Saturday night. All the team outings at the bowling alley, paintball battles, etc of "social cohesion" means nothing when a team member isn't pulling their weight and causing everyone else to stress out. [1]http://www.telegraph.co.uk/news/newstopics/howaboutthat/9063890/Team-building-doesnt-improve-work.html http://www.telegraph.co.uk/news/newstopics/howaboutthat/9063...
- RangerScience 12y agoI take a bit of an issue at the idea that extroversion is nonsense. I also find that teams that function like you describe are terrible for growth, and really only work when everyone's already highly skilled and experienced.
- jasode 12y agoSorry for the confusion. To clarify, extroversion is not nonsense at all. It's a very desirable attribute. However, many of these team outings are perceived as "nonsense" by the types of minds that make up a significant percentage of programmers. It doesn't mean that programmers are anti-social. It's just that they'd rather hang out with people on their own terms instead of a corporate sponsored gathering. Yes, extroverted people are great. Baseball is also great. But going on a team outing to a baseball game might be "nonsense" to them. It's just the way it is. I'm just saying that dev managers need to take personality differences of programmers into account. Instead of team building, the manager is inadvertently causing team members to harbor resentment for wasting their time. >I also find that teams that function like you describe are terrible for growth, Can you explain further what you mean by this? Why is there a belief that devs need to firewalk with their coworkers cheerleading on the sidelines to foster growth? That's not been my experience at all.
- arh68 12y agoHonestly I think you miss the point. The author tries to tie the body of the article to their conclusions at the end, but they largely fail: Marine corps use hellish group training regimes to create unity, street gangs employ death-defying initiations to ensure the loyalty, et cetera only appear at the bottom in quick summary. The thing you seem to miss is that these rituals were not forced on the participants by some manipulative manager trying to observe some group psychological response. The fire-walkers have to choose freely to walk on the coals: it's not like they all get in a line and crack whips at each other, goading one another reluctantly across the coals. It's not forced social cohesion at play here, it's personal determinations of sacrifice. When you decide which sacrifices I make, it's completely different. Do you not see that? When I notice you intentionally schedule our meetings in the freezing rain, what do you think that will make me think? Understand that the military background you come from really, really blurs the line of voluntary. I do not wish to 'enlist' just to work on your software team, buddy. I didn't sign my body away, just my 9-5.
- ryanmarsh 12y agoI don't schedule meetings in the freezing rain. It was a voluntary trip to observe our users. Not everybody decided to go. I recognize you've had bad experiences in the past. I stopped writing code and got into management specifically to not be the kind of manager that burned you.