As a manager that does weekly 1:1s, I agree with that statement. But I do need 1:1s to check on progress, uncover blockers that people haven’t surfaced on their own, make continuous small decisions, offer support, assess performance, collect status information for my manager, and last but not least give employees the opportunity to share feelings frequently. They do, and it’s not very often, but it’s important to have a dedicated place for it otherwise devs often don’t share until damage is being done.
I’ve also watched devs who didn’t have weekly check-ins go pretty far off the rails. One dev I remember would go off by himself for weeks designing clever code and over-engineering things that weren’t needed. I thought to myself that someone should be checking in with him, and then months later I got stuck doing overtime before a delivery deadline with dozens of other devs on a weekend chasing an intermittent release-only runtime crash that turns out he caused by trying to get tricky with copy constructors. A quick 1:1 could have prevented this bug that ended up costing tens or hundreds of thousands before it ever happened.
BTW, the best managers I’ve ever had were technical contributors, and they tended to be more relaxed about check-ins than the non-technical managers, in part because they had a better sense of where things sat. Personally I also feel like a better manager when I’m contributing technically to a project, and devs seem to respect that more.
> uncover blockers that people haven’t surfaced on their own
I constantly reiterate to people, whether they're reporting to me or not, that they need to speak up when there's a blocker. I feel its a very telling skill of engineers whether or not they can communicate issues in an effective manner urgently and figure out the best course of action to unblock.
I've heard tales of 300k/yr engineers that just sit there and wait for a manager to ask if they're blocked, or just sit there until they're told what to do.
> I've heard tales of 300k/yr engineers that just sit there and wait for a manager to ask if they're blocked, or just sit there until they're told what to do.
This is widely presumed to reflect reality within a 1-2 degrees of separation from myself as well as from many of the people I speak to. Part of the problem is that there is always plausible deniability. Like the adage of how unwise it is to fire custodians just because you never see a mess and therefore you never actually see the custodians do anything, it may be "unwise" to lose the presence of these 300k/yr engineers just because they somehow actually keep things going smoothly.
> I constantly reiterate to people, whether they're reporting to me or not, that they need to speak up when there's a blocker.
This is presuming a particular/healthy culture where open communication is valued, appreciated, and not punished. This is not always the case, and an "objective description of a blocker" could result in some bruised egos where it transforms into blame upon some person or team for being or causing the blocker. People who experienced these cultures may be waiting for private conversations (such as 1-on-1s) that minimizes the risk, and they may be waiting to identify you (or whomever they are talking to) as a person who could make communicate the nature of the blockage in a politically favorable or neutral manner. All of this may be happening without the people involved consciously aware of this behavior of pushing out information through private conversations. And this maintains plausible deniability for ALL parties. The person who is blocked is never identified. The person who may have been the blocker is never identified. And hopefully everything gets fixed before anything is actually worth escalating.
> Like the adage of how unwise it is to fire custodians just because you never see a mess and therefore you never actually see the custodians do anything, it may be "unwise" to lose the presence of these 300k/yr engineers just because they somehow actually keep things going smoothly.
so you should keep people on pay-roll because they "might actually be doing something if you look hard enough" ...? don't think so
> People who experienced these cultures may be waiting for private conversations
the error is the "waiting" - if you have a problem it is your responsibility to do something about it
> so you should keep people on pay-roll because they "might actually be doing something if you look hard enough" ...? don't think so
The point was that you might be making incorrect assumptions that they aren’t doing work, and you might be making incorrect assumptions that replacing them will cost less. Looking busy and knowing what to do are two different things.
> I feel its a very telling skill of engineers whether or not they can communicate issues in an effective manner urgently and figure out the best course of action to unblock.
I could be this person that appears not communicate, but the reason is because I've never had a manager that could unblock me faster than if I didn't tell anyone and just did it myself. For the longest time, every manager I've ever had was mostly useless (for unblocking some issue), it took quite a few years before I got an EM that actually makes shit happen. Only then did it become a habit I had to break.
It doesn't make sense to tell someone who can't or won't help you that you're blocked on something. Eventually you just default to never asking.
Read other comments: Even engineers with 10+ years of experience don't know how to do this, think they have it all under control, then complain that management only hindered them. And if we are talking from experience, based on mine, only 2/10 good engineers actually know how to communicate results besides just delivering code/artifacts.
In some particular cases and SMALL groups I do think a Manager by itself is unnecessary, especially if everything is working out and they are responsible enough to present usable information to others in the hierarchy, but if not, please stop this fighting and only complain when the Manager is really annoying.
If you think they are robbing you of valuable time, time it. Time it and tell them with hard data you're being robbed of at least a certain % of your working time, which means you can probably deliver less if they want X action from you.
Yes exactly! Devs resist asking for help when they need it, and this is why as a manager I have to insist on asking questions to discover blockers.
I can see why this happens, and I was (and still sometimes I am) guilty of thinking as long as I have a little more time, I can solve the problem myself. We are all capable of figuring out how things work, we all want to learn, and we all have fears that admitting spending time spinning our wheels might reflect poorly or reveal weaknesses, and/or might be used against us in reviews.
Part of making people feel comfortable surfacing blockers is making sure the environment is supporting that behavior. Devs need to be rewarded for working together, and rewarded for being proactive about telling their manager or the team they need help on something. If these highly paid engineers have had negative experiences in the past, they might have learned not to bring otherwise important issues to light. Occasionally there are also people who learn what they can get away with and will optimize for the minimum.
IMO, the environment also needs to allow devs some space to go slow for a while, solve unfamiliar problems, and learn new things - so for me there’s a certain amount of being okay with blockers, when people are still being proactive. I’d rather talk about them than not and make a conscious decision, but I do try to be sensitive to what I label as blocker.
> But I do need 1:1s to check on progress, uncover blockers that people haven’t surfaced on their own.
That's why historically having managers being strong IC contributors remove that need because they already KNOW the progress and issues on the field.
Modern BigTech created that artificial layer of managers that need to know about all the blockers and progress, just to report it to another layer of managers. That layer is so big that they need 8 hours of meetings to sync with each other. This is purely an organizational issue.
I'm saying a lot of the managerial work is busywork that got pushed as a need by BigTech need to empire building.
I’m not sure this framing is accurate. Companies have always had management. All large organizations have layered management; the Catholic Church has had layered management for two thousand years; your government has layered management; all militaries have layered management; Bell Telephone and Standard Oil had layered management for a hundred years before computers in business were a thing. This is purely a function of large groups, because communication is necessary to function, and giving FAANG companies credit for it overstates their influence.
Calling it a feature of empire building might be somewhat accurate in the sense that yes all companies and most groups aim to make money, or otherwise grow and succeed. Still, that seems like a pessimistic way to put it. Even small companies and church groups and libraries and PTA associations will have presidents & treasurers. Middle managers appear as soon as group size hits a certain limit.
I think what we are arguing is that yes management layers always existed.
But the state right now is that:
- those management layers are now more disconnected than ever from the actual work. Most managers are career managers that have given up on any actual technical work. Even if they used to be technical ICs, most bigtech actively discourage managers to do anything remotely technical. I still cannot understand this.
- There are way more managers per IC than there ever was (Last big tech I was in, my org had ~5 ICs per manager. I couldn't believe it and have no idea what those people actually did the whole day besides meeting each other!). This is directly because Directors decide to hire Managers and have a direct incentive to grow the amount of layers and amount of people in their pyramid. Even if they don't mean to, directors and VPs are managers as well and as such they have a direct belief and incentive that more management is better.
No, I think this still this isn’t an accurate framing of history. Managers have always had a completely different job than the people they manage. If anything, having a lot of managers that are in the trenches, writing code for example, is the newer trend. Since the Industrial Revolution, managers typically oversaw work but did not do the labor. You could ask some managers what they do all day, but once you get some management experience, you will start to understand what managers do all day and how there’s enough to do that getting technical work done is relatively difficult, and might compromise their ability to manage well.
Here are some pointers to the evolution of management over time that you might find interesting or enlightening:
The typical ratio of managers to laborers has definitely increased over time. 1:5 is higher than average, but 1:10 is very common for knowledge work. There are many reasons why this is, team building incentives are only one of many. But one question you should ask yourself is why you even care. Companies are free to function any way they want to, and they pay you to contribute to their choice of structure. Given that all modern large companies function this way, and also make money, maybe it’s worth starting from the assumption that it evolved this way for a reason? See Chesterton’s Fence.
>> Since the Industrial Revolution, managers typically oversaw work but did not do the labor. You could ask some managers what they do all day, but once you get some management experience, you will start to understand what managers do all day and how there’s enough to do that getting technical work done is relatively difficult, and might compromise their ability to manage well.
Oh believe me. I have managed a lot over my career. Sometime as a TLM and a couple times as a full time manager. I was still as technical and did as much as most people on my team though, which is against what most bigTech companies would consider acceptable for a manager.
All my opinions come from everything I saw and lived during my time as a manager.
I will repeat it again: I'm sure you are not slacking as a manager, most managers I worked with did not slack either. It is simply an artificial function with self-fulfilled busywork. The reason it still exists today is that the managerial class holds the power in most companies and self-hire each other as a way to keep themselves relevant.
A ton has been written about this, so I will put some links:
"Yet for all its dysfunction, the professional-managerial system proved remarkably durable. It persisted because it solved a different problem than organizational effectiveness: it provided a way to allocate status and opportunity that appeared meritocratic while actually favoring those who could navigate institutional prestige hierarchies."
Ah, I do sincerely apologize for making assumptions!
Discussions of history aside - I don’t think your opinion of management, as summarized as an “artificial function with self-fulfilled busywork” is entirely wrong so much as perhaps jaded, pessimistic, or a bit biased. There is a seed of truth there, and you’re right that this has been written about before, and it’s not a new opinion. But it’s also negative and incomplete, it intentionally ignores evidence, and it lacks explanatory power.
If management is useless and self-fulfilling and absorbing money, then why in a competitive capitalist environment can you not find large companies anywhere in the world without it? Or in any economic system that exists, for that matter? Surely if true, then someone else with your opinion can start a company and it would be wildly successful compared to the economic drag of the artificial and self-fulfilling professional managerial class. Why haven’t you started such a company? Why hasn’t anyone else? This is an important question to answer if you want to insist that management doesn’t serve a necessary and functional purpose; “remarkably durable” is a funny expression to use for something that has always existed, by design, from the start, and for which there are practically no counter-examples.
There are a very small handful of companies that claim little to no management roles, except that they still talk about managing and self-organizing and letting people define their roles, so managers emerge. They might claim no management and then still let the good talkers do the prioritizing and organizing and reporting and delegating, just like everywhere else. It might be the same as advertising unlimited vacation; the label sounds amazing while the reality is no different. It looks like the majority of such companies are software companies and have less than 1k employees (which suggests tech companies may be pushing more on reducing management than other sectors). When I searched, Gore came up as one example of a company with more than 10k employees that doesn’t use traditional management, and yet when I go look at their job postings, the very first page has roles like “president” and “manager” and “team leader”.
I’m not making any claims about “most”. TBH, I would actually agree with you, I assume. Most management is pretty bad, and many people are self-serving. Same goes for programmers, let’s not forget; many programmers are just as lazy and self-serving as the bad managers you’ve seen. Sturgeon’s Law is alive and well.
The PMC article kinda nails it - the term and the idea is a spin on Marx, and Marx wasn’t complaining that management is useless, he was just complaining that management kept all the ownership & profits.
I do check, of course. As you can see from the comment you replied to, progress updates aren’t the only reason for 1:1s. But as far as updates go, questions are almost always needed, and face-to-face conversations are faster & easier for both parties, which is why we do a little bit of it each week. We cancel 1:1s when they’re not needed, and cut them short when we’re out of topics.
Why do you assume not talking by default is better? Have you considered the downsides of your instinct to save yourself a few minutes a week? One thing a lot of devs don’t seem to realize when they push back on communication is the opportunities they’re missing to affect change in the group, to convince the managers to invest in things they need or want to work on in the future, to make changes to team communication practices, and to brag about what they’ve done, how hard they’ve worked, and what they really care about.
I will again say that most 1:1s are BigTech cargocult rituals where you talk about your path to the "next level" or "how are you feeling this week" but it's also a lot of project management and busywork that mainly exists because the manager is in the picture. Without so many managers most of those self-sustained meetings would go away.
What I’m describing is my 1:1s. I’m describing my experience, from a management perspective. You’re describing your experience from a non-management perspective, and I’m not arguing with your experience, but your claims about other people’s experience, speculation about how many, and assumptions about why, are problematic. Some management isn’t good, that is true. Sometimes there are too many meetings. That is also true, those things sometimes happen. I’m at a ‘BigTech’ company, and the meeting rate and quality of management is not consistent or uniform company wide, it’s something you’d have to evaluate on a case by case basis; One problem with your argument is that right level of meetings is more than a lot of devs want, and just because you don’t know what management does does not mean that meetings aren’t effective. With several decades of experience, I have seen lots and lots of programmers who writhe against budgets and oversight and communication, arguing fiercely that it’s all useless and would people just leave them alone to write code. And my experience is watching some of those people go off the rails when left to their own devices. Once you start managing, or try to run your own company, you might start to see more value in communication. My own views on management absolutely changed over time; when I was young, I was speaking about it similar to how you are.
Personally, I think it's good to have at least occasional 1:1s because a lot comes out informally. That said my "weekly" 1:1s with a fairly long-term manager mostly turned into more or less monthlies because we both traveled so much.
Yes, of course, and I do use both. There are underlying assumptions in your suggestion that it’s one or the other, and that async is somehow better. It’s worth considering whether those are always true, and trying to put a finger on the specific tradeoffs, because there are both advantages and disadvantages. I’m a believer in using the right tool for the job (and also understanding clearly what the job really is).
IMO face time is very important and serves more purposes than the explicit information transfer. It’s also a much faster, more efficient, and clearer way to have a conversation, when back-and-forth is needed (which may be more often than you assume.)
In my experience, devs (including younger me) often argue for what’s easiest or most comfortable for themselves, but sometimes they don’t see what’s actually best for themselves, nor what’s most effective for the organization, and they sometimes don’t care what’s best for the manager. (And I’m not suggesting they should have to care what’s best for their manager, just pointing it out.) Nobody likes a budget or oversight. Nobody wants to track time and be watched, and have to explain themselves, and have to compromise in order to finish tasks. Still, having budgets are sometimes good for us and sometimes produce better results, when money is limited and when focus is needed. Budgets also inhibit risk taking, which can be good or bad, sometimes we need risks and exploratory work… so, yeah, the right tool for the job…
As a manager that does weekly 1:1s, I agree with that statement. But I do need 1:1s to check on progress, uncover blockers that people haven’t surfaced on their own, make continuous small decisions, offer support, assess performance, collect status information for my manager, and last but not least give employees the opportunity to share feelings frequently. They do, and it’s not very often, but it’s important to have a dedicated place for it otherwise devs often don’t share until damage is being done.
I’ve also watched devs who didn’t have weekly check-ins go pretty far off the rails. One dev I remember would go off by himself for weeks designing clever code and over-engineering things that weren’t needed. I thought to myself that someone should be checking in with him, and then months later I got stuck doing overtime before a delivery deadline with dozens of other devs on a weekend chasing an intermittent release-only runtime crash that turns out he caused by trying to get tricky with copy constructors. A quick 1:1 could have prevented this bug that ended up costing tens or hundreds of thousands before it ever happened.
BTW, the best managers I’ve ever had were technical contributors, and they tended to be more relaxed about check-ins than the non-technical managers, in part because they had a better sense of where things sat. Personally I also feel like a better manager when I’m contributing technically to a project, and devs seem to respect that more.