In my experience the bad managers are constantly trying to impress their bosses and curry the next promotion. They treat their reports like serfs who are obliged to burnish their image.
The best managers (very few) I've come across are like a mother bear. Protective of their team, running interference and pushing back on out of scope work, etc.
I've only ever had one manager whose calendar was viewable by his team. If he needed a meeting with you, he would ping by email with the subject and any supporting materials and asking you to block out the meeting time in his calendar. Talk about respecting your productive times.
This focuses on what managers should do differently, but not what engineers could do differently to make the relationship better. Improve their communication skills, document and evangelize their work, etc.
When I have a poor manager who doesn’t improve quickly, what I do differently is get a different job. I understand that’s a privileged position to be in, and also that one needs to have a fair bit of experience to identify whether the manager really is the issue. Nevertheless, trying to fix a relationship one-sidedly when someone holds authority over you is not a worthwhile cause.
It's very rare for me to not find a way to work well with most managers I've had. What I find the larger problem is what's lost in communication/translation going up and down the org chart. This isn't usually a problem for small or shallow orgs, or in rare cases larger orgs that have strong technical leadership. What does happen is that there's layer(s) of middle-management that's typically where technical details are lost. The best way to combat this is to have flatter structures, or isolate divisions/units. Microservices is one way of solving this communication/autonomy human problem, by forcing system interfaces to sweat the communication details.
The fact that management issues are so persistently reported and so widespread in tech, should be a strong signal that management practices in tech have failed - measured by the number of non-faang companies that lost their trajectory by copying corrosive FAANG practices.
In my experience the bad managers are constantly trying to impress their bosses and curry the next promotion. They treat their reports like serfs who are obliged to burnish their image.
The best managers (very few) I've come across are like a mother bear. Protective of their team, running interference and pushing back on out of scope work, etc.
I've only ever had one manager whose calendar was viewable by his team. If he needed a meeting with you, he would ping by email with the subject and any supporting materials and asking you to block out the meeting time in his calendar. Talk about respecting your productive times.
This focuses on what managers should do differently, but not what engineers could do differently to make the relationship better. Improve their communication skills, document and evangelize their work, etc.
When I have a poor manager who doesn’t improve quickly, what I do differently is get a different job. I understand that’s a privileged position to be in, and also that one needs to have a fair bit of experience to identify whether the manager really is the issue. Nevertheless, trying to fix a relationship one-sidedly when someone holds authority over you is not a worthwhile cause.
> Breaking the cycle
> The best engineering managers I’ve known — the ones engineers actually like — have figured out a few things:
> 1. They protect focus time like it’s sacred. […]
> 2. They stay technical enough to make informed decisions. […]
> 3. They give credit lavishly and take blame personally. […]
> 4. They make feedback actually meaningful. […]
It's very rare for me to not find a way to work well with most managers I've had. What I find the larger problem is what's lost in communication/translation going up and down the org chart. This isn't usually a problem for small or shallow orgs, or in rare cases larger orgs that have strong technical leadership. What does happen is that there's layer(s) of middle-management that's typically where technical details are lost. The best way to combat this is to have flatter structures, or isolate divisions/units. Microservices is one way of solving this communication/autonomy human problem, by forcing system interfaces to sweat the communication details.
The fact that management issues are so persistently reported and so widespread in tech, should be a strong signal that management practices in tech have failed - measured by the number of non-faang companies that lost their trajectory by copying corrosive FAANG practices.
Were management practices in non-tech fields any better though?
[dead]