“Amateurs talk about tactics, but professionals study logistics.”
– Gen. Robert H. Barrow, USMC (Commandant of the Marine Corps) noted in 1980
Many of you have probably seen the movie Gladiator. A key point near the beginning of the movie is the Roman army, under the command of Maximus, defeats the Germanic horde in a brilliant battle. The tactics are pure Maneuver Warfare as taught by John Boyd, that is, a main force engages and holds the enemy, then a rapid flanking movement comes in and hits them from a second front (a “left hook”).
So the first time I saw this on screen I was of course Shocked and Awed at the brilliant tactics. It was visually very impressive, and drives home the point that Maximus is supposed to be a great military leader and tactician. But over time, thinking about that scene again, I realized the key to the Roman army’s success in that battle was not the flanking tactic, it was the logistics. Which is the bigger challenge, riding some horses in from the side? Or…
- The Roman army was exactly in the place they wanted to be
- …with a bunch of heavy siege equipment
- …and all those horses and men
- …and they were all well fed and equipped
- …and they got all those men and materiel in place, set up, and were rested when the horde charged them
The battle was fought entirely on Maximus’s terms. He chose the battlefield, so he was able to get his troops entrenched properly, all their long-range weapons set up, and found a place to hide his cavalry for the flanking charge. The Roman soldiers were all well equipped, they were clean (at the beginning of the battle at least) and healthy, which implies they were well-fed and well-rested. All of those things probably really increased their morale as well. (I’m sure you know, morale can be a significant force multiplier.)
So the takeaway from all that? The real success in Gen Maximus’s leadership was the logistics, not the tactics. He made sure each soldier in the army had what they needed to win the battle.
So how does this apply to management in software engineering? Say you’re a developer lead. What are your key concerns for your teams? Is it tactics, i.e. “What programming language or framework are we using?”. Do you spend a lot of your time working with the team, micromanaging and questioning every technical decision they make?
Or is it really making sure that the team has:
- Good desks
- Good monitors
- Good coffee
- A quiet work environment
I think a lot of managers, especially if they have moved up from a technical position, just can’t let go and insist on being deeply involved technically. But from a leadership perspective, you have to take a serious look at yourself and ask, “Do I trust my team or not?” And if you do, then you have to let them make those technical decisions and move forward solving problems. Sometimes you won’t think its the right decision or path, and you have to decide how to handle that. If it doesn’t align with the higher strategic goals, then yes you need to intervene (but you definitely need to communicate to the team why you are pushing a decision down on them). But if it does align with your strategy, or is inconsequential to the strategy, then maybe you need to let it go and let the team make the decisions. Or, as Jeff Bezos calls it, “Disagree and Commit”.
This is something I personally had to work on a lot, as I let my ego get in the way. I was, of course, always convinced that my ideas were the best ones so we should all just do everything the way that I think it should be done. But I had to really ask myself, do I trust these engineers or not? If I do, then I should trust their professional and technical judgement. And if I don’t, why did I hire them in the first place?
However, as a manger there are things you CAN do better than the team. Buy them new laptops every three years (yes, the old ones might be “good enough” but big picture, the cost of a new laptop will probably pay for itself in efficiency gains and that aforementioned morale force multiplier). If they want different chairs, get them those different chairs. The cost of a chair is probably less than a day of their salary, and again the efficiency gain will quickly pay for itself. And nowadays, 2 monitors is simply a must-have for developers. If you can get 3, even better. Again, the efficiency gain will be huge. All those little things add up and enable your developers to get more work done (which deep down inside they probably want).
I’m not saying that tactics aren’t important. Maximus wouldn’t have won that battle without that flanking maneuver. But the logistics are in some ways more important. If you’re in a leadership role, maybe focus less on all the small-scale technical decisions and instead make sure the team has what they need to win the battle.