4 ms·
I'm a software architect and how I handle this between my teams is: + Set an expectation for teams to raise difficult problems they don't know how to solve for
by vorpalhex 6y ago
I'm a software architect and how I handle this between my teams is:
+ Set an expectation for teams to raise difficult problems they don't know how to solve for guidance
+ Help teams meet and determine standards and contracts together
+ Make sure teams have the power to make bold choices within their own domains
Sometimes these go a bit off the rails or a less optimal choice gets made and frankly... that's fine. Mistakes are where we learn and letting engineers make mistakes and recover from them is part of letting engineers grow.
Being an effective manager often means buying cover for your team to do their work and evolve it organically.
- ISL 6y agoI'm on the hunt for a manager that understands principles like these -- if you need someone with the wide-ranging skills of an experimental physicist, please get in touch. Email is in my HN profile.
- aard 6y agoTotally agree. Reminds me of a quote from Peopleware: "Most managers give themselves excellent grades on knowing when to trust their people and when not to. But in our experience, too many managers err on the side of mistrust. They follow the basic premise that their people may operate completely autonomously, as long as they operate correctly. This amounts to no autonomy at all. The only freedom that has any meaning is the freedom to proceed differently from the way your manager would have proceeded. This is true in a broader sense, too: The right to be right (in your manager’s eyes or in your government’s eyes) is irrelevant; it’s only the right to be wrong that makes you free."
- bigmanwalter 6y ago> Being an effective manager often means buying cover for your team to do their work and evolve it organically. You hit the nail on the head! I might have to print this out and frame it.
- spaetzleesser 6y ago“Sometimes these go a bit off the rails or a less optimal choice gets made and frankly... that's fine. Mistakes are where we learn and letting engineers make mistakes and recover from them is part of letting engineers grow.” So true. I often pity the young people who are starting now with complete micromanagement by JIRA, Scrum, daily stand up and pull requests. When I started out 30 years ago you could often go away and work on something for a month or more, try out stuff, screw up royally, learn from it and become a better programmer. These days it often feels like an assembly line where every step is optimized but no creativity is allowed. There is no better learning experience than to develop a system and after a few requirements changes to learn that the system was misdesigned. Good programmers will work through that and do better. Bad programmers will just shrug their shoulders. Right now my strategy as a tech lead is to of ask mainly if something is holding people up, act on that quickly and be available for discussions, but otherwise I am trying to hold back and let people do their thing even if I don’t agree. But this takes strong nerves with line managers and project managers breathing down your neck.
- dgb23 6y agoI always felt that the best leaders are like this. They keep the general BS away from their team and facilitate trust and courage.