6 ms·
For everybody working as a programmer, this should be blatently obvious. Who hasn't experienced a non-programmer manager without a clue telling them what to do?
by ytygg775 4y ago
For everybody working as a programmer, this should be blatently obvious. Who hasn't experienced a non-programmer manager without a clue telling them what to do? I'll never ever work again for a manager who couldn't do my job, at least in principle.
Ideally they stay in touch with the programmers by continuing to program, occasionally but regularly. To not have their knowledge frozen in time the day they became managers. And to keep feeding their flame.
It's a necessary qualification, but not a sufficient one. The manager also needs to be a people person. Lots of programmers
are not, and that's ok, they can be excellent programmers. Just not managers.
In summary, a better title would have been "Turn the people persons among your best programmers into part-time managers".
- P5fRxh5kUvp2th 4y agoThe single best manager I've ever had was completely non-technical. Some of the worst I've had were very technical. The difference between them is who treats me with trust and who doesn't, the technical/non-technical divide doesn't matter.
- watwut 4y agoAbsolutely worst managers I had have zero technical background. They both treated people badly and also were incompetent and did not understood our work. Which led to absurd processes, being simultaneously under pressure and having nothing to do, social issues in teams and so on. The worst thing about outside managers is that they generally don't understand teamwork and peer cooperation. They are too used to relationships based on hierarchy, negotiation and competition. And they don't have experience of actually cooperating with same level peers.
- andirk 4y agoI worked at a company that almost only hired [nationality omitted] engineers. Seemed their goal was to become one of the managers so they could rule the others with an iron fist, much like they had been ruled for years. The very bad code proved that the engineering part of the job was mostly nominal. As a defensive measure, they knew to never hire good engineers. I was hired by one of the directors. So in that case, the managers _were_ kind of technical but it would have been better if they weren't.
- ido 4y agoI often repeat how one of the best managers I had (he was the CEO of the company but it was a 5 person - including me - startup, so he was practically the closest thing to a manager) was a former restaurateur who never worked in software before!
- skeeter2020 4y agoManagers can optimize for people or process but rarely do both really well; I'm not surprised a restaurateur is the exception. Their entire life is essentially keeping a highly dynamic, human-centric, likely broken system running while minimizing work in progress and focused on delivery.
- magicalhippo 4y agoMy manager has no technical background either, and for our team he's great. However, I think they key is he understands enough technical stuff and listens to reason. If we present good technical arguments, he will listen and take that into account. He won't try to force something through just because.
- ido 4y agoYep, he deferred to the programmers for technical decisions.
- P5fRxh5kUvp2th 4y agoand that's a large part of what I meant by trust. Even something as simple as believing when a developer says 3 weeks for something.
- prmph 4y agoA technical manager might in most cases defer to the judgement of the developer. However, provided he knows his stuff, he can also mentor the developer to grow. If you are arguing that managers with technical knowledge of the work being done are wholly unnecessary, then you are necessarily arguing that all teams are doing optimal work all the time, and have nothing to gain from external feedback. I call bull on that. There are several times where, after discussing some estimates with my developers, it turns out that the overall approach was inefficient. By pointing them in the direction of a more efficient approach to the problem, and leaving them to work out the details, and making them feel free to discuss other alternatives, we have been able to get stuff done in reasonable time. Your whole point of view seems to suggest some kind of conflict between technical managers and developer teams, where I see none necessarily. Managers are a resource for the team, not people who lord it over their teams. I have been contracting and consulting for years. Without exception, the worst managers I've had in terms of demanding the impossible, and failing to appreciate the work I have put, were those without any clue what it takes to do what I did. The technical managers would work with me to write specs that made my work a breeze.
- prmph 4y agoWere they a great manager simply because they let you do what you wanted, without any deeper guidance or feedback? On a basic level, yes a manager needs to have reasonable trust in his team members and be able to interact with them well. On a deeper level, however, a manager who lacks any clue about the work being done will either frustrate the team or leave them to their own devices altogether. The former is bad under any circumstances; the latter is bad unless the management provided is supposed to be at a very general level.
- P5fRxh5kUvp2th 4y ago> Were they a great manager simply because they let you do what you wanted, without any deeper guidance or feedback? Why do I get the feeling you're a technical manager trying to rationalize why you don't trust your developers? The entirety of your second paragraph speaks to a belief that developers can't manage themselves. That without a manager, no work would get done and no software written. But having been in this game for roughly 25 years now, I promise you I know how to get software written successfully. What I need is the manager to __believe and trust__ me when I tell them something. There's a vast difference between a negotiation to figure out what can be done in the next 2 weeks and arguing with a fuckwit who thinks they know better than you despite moving into management after 2-3 years of software development.
- spdionis 4y agoMost managers I've known would love to have someone to "believe and trust" to delegate stuff to. I feel like the micromanaging managers simply don't have enough work to do? I personally celebrate everytime I find a developer who can manage themselves, their work, and if they can also manage the team (at least partly) that's amazing!
- musingsole 4y agoDesiring a coworker you can trust and trusting the coworker you have are too very different things. I'd love to be a good person, but these pies aren't going to steal themselves.
- cma 4y ago> The difference between them is who treats me with trust and who doesn't, the technical/non-technical divide doesn't matter. When something technical goes badly wrong, and there are two competing stories on who to blame, how do they decide?
- ptero 4y agoIf something technical goes badly wrong there should be a post-mortem concluding with enough clariry so that it is clear to everyone what the cause was.
- marshmallowmad 4y agoHow does a non technical manager know who is doing bad or good work? I wouldn’t want to work on a team where the person in charge of my compensation can’t understand if I’m doing decent vs. great work. Leads to the best folks getting frustrated and leaving over time. Mediocrity is all that will remain if manager’s can’t understand the work their team is doing and the obstacles they face.
- P5fRxh5kUvp2th 4y agoIs it your supposition that managers should be doing things like code reviews to ensure quality? If they're not working at that level, why isn't the output enough? Developer X's solutions are solid, developer Y's solutions tend to need bug fixes for the next 2 months, who is performing better? Why can't a non-technical manager do that too?
- prmph 4y ago> why isn't the output enough? Developer X's solutions are solid, developer Y's solutions tend to need bug fixes for the next 2 months, who is performing better? Why can't a non-technical manager do that too? How would a non-technical manager know that? By examining the git commit history? Or having the team tell on each other? And if developer Y's work tends to need bug fixes, it might be that he usually works on a more difficult class of issues. How is the non-technical manager going to understand that?
- P5fRxh5kUvp2th 4y agoAfter seeing this post my opinion has finally clicked over to "you're a shitty manager". You're imagining a managers job is to ensure quality. That's a tech leads job. And QA, if you have them. You're imagining yourself as Gandolf with the staff of perfection screaming "You shall not pass". That is not your role, nor has it ever BEEN your role. What's worse is that you're implying that you cannot manage teams working with tech you yourself have not worked with. This means you cannot manage projects that are in rust, lisp, perl, ruby, python, GCP, or any other technology that you yourself are not both familiar with and an expert in. When your company decides to move to the cloud and they choose GCP but AWS is the only thing you've seen, do you recuse yourself? And when you hire a developer with 5+ years experience in GCP, HOW DO YOU MAINTAIN QUALITY? The answer is you do it the same way the non-technical manager does it. What you're not understanding is that your developers are BETTER THAN YOU at their job. Just yesterday we had an interview with a senior manager who is being hired to take over the three teams I mentioned in another post that I regularly work with, 3 teams that have 20+ year developers on them. I gave him a thumbs down based solely on the fact that when he has someone who isn't performing up to expectations, he starts reviewing code. I do not want that for these teams, or the senior developers on them. Furthermore, I know if we hire someone like that, they will leave. I know they will because _I_ would leave. Furthermore, this department is in a bit of a political fight with another technical department. Them leaving means this department automatically loses that fight. The problem with shitty managers is that it can often be very difficult to fully quantify their effects on the organization because any single instance of it can be very subtle. The question is, how do you quantify a managers output? And the answer is you do it the same way a non-technical manager does. You don't need to be able to read code to know your Toyota should not force accelerate on its own.
- kevin_nisbet 4y agoMy experience has been similar, I think it depends way more on the individual than whether they are technical or non-technical. I do suspect those with non-technical backgrounds are at a disadvantage though. When I started my career I had a manager who couldn't even type, but just approached his role as I want to keep an eye on what's going on, and when I see friction or blockers I'll jump in and start working on removing those blockers. I've seen a technical manager get promoted, from IC to VP of engineering within just a couple of years, and treat the VP role as his job is to tell everyone in his employ what to do, no feedback allowed (didn't treat those in his employ with trust as you put it). I don't know that I've ever seen a worse leader and had a litany of problems with them, and ended up deciding to leave within weeks of this person taking over. I don't even know if it's this persons fault, as the org didn't like hiring leaders externally, so basically the entire engineering org was just ICs with basically no leadership experience.
- P5fRxh5kUvp2th 4y ago> I think it depends way more on the individual than whether they are technical or non-technical. yep, exactly. I think your anecdote about the engineer turned VP is fairly typical. imo it's generally more difficult for engineers to become _good_ leaders because it means moving from an environment where you have complete control to one where you don't and a lot of engineers can't bridge that divide successfully and become terrors like you described. non-technical managers never had that control. They have their own challenges, but generally speaking, it's easier for them in terms of control. in my opinion, of course.
- dagw 4y agothis should be blatently obvious. Maybe I've just been lucky, but in my 15ish years of working I've found the correlation between "good programmer" and "good manager" to be zero or possibly even negative. Most of the best managers I've had either never could've done my job or hadn't programmed since Lisp went out of fashion. However what they all did have in common was that they knew their limitations and always deferred to the relevant experts when faced with technical decisions that they didn't have insight into. You need a lot of skills to be a good manager, being able to make good technical decisions is one you can easily delegate.
- alanfranz 4y ago> However what they all did have in common was that they knew their limitations and always deferred to the relevant experts when faced with technical decisions that they didn't have insight into. You need a lot of skills to be a good manager Can I ask you (sincere question, I'm investigating the topic) what kind of value did your manager provide if he had zero ideas about how your job was done? I mean: if he trusts you, and does what you ask, that's great. But I'd find very difficult to manage a team without understand their jobs. How can I help them in their job, and help them improve? What's my role?
- torben-friis 4y ago>I mean: if he trusts you, and does what you ask, that's great. But I'd find very difficult to manage a team without understand their jobs. How can I help them in their job, and help them improve? What's my role? For the managers I’ve had that work that way, the work is basically human shield. Meetings with stakeholders, random corporate demands, bugs that people attempt to escalate more than they should because someone in the chain is particularly vocal… their job is to deal with that so programmers don’t have to. Additionally, acting as coaches (improving team relations, solving friction between colleagues, etc) and acting as an artist’s representative for their programmers, playing the necessary work politics so that they get their raises and promotions.
- denton-scratch 4y agoOne of my earliest line managers was a programmer. I don't think he was a particularly good one, but he was a good manager. He was a good-enough programmer to understand my job, anyway. What made him a good manager was that he removed obstacles for me. He made sure I had the equipment I needed; he dealt with bureaucracy problems; and he hooked me in to experts when I needed advice. He was great. we got on well, and I was his right-hand man. Then he got promoted, moved to Head Office, left me behind, and I never spoke to him again. He was replaced by a dullard checkbox manager, and I moved on within a couple of months.
- goodoldneon 4y ago> a necessary qualification, but not a sufficient one I like that phrase
- pickledish 4y agoFor you and anyone else who might be curious, it has its roots in formal math / logic! This page has a good rundown: https://en.m.wikipedia.org/wiki/Necessity_and_sufficiency#Simultaneous_necessity_and_sufficiency https://en.m.wikipedia.org/wiki/Necessity_and_sufficiency#Si...
- mamcx 4y ago> non-programmer manager without a clue telling them what to do? That is not a problem. In fact, the single thing that make a manager a good one is that a good one let the skilled do their job, and communicate back-and-forth with the rest of the people in a good way. That is all. And because this, the fact he can't understand most of I say not matter: It just insist to me to explain it like anybody can, and let the details to me. I have this people before (some with actual skills). Nothing get closer to just the people that can do let them do it and not care about details but just outcomes. And BTW: I work for "boring (but never actually!)" CRUD apps, and customers that are not only clueless about software: One of the biggest one was a guy with near zero formal education, coming from the street, that have invented his own things that is a bastardize attempt at accounting/financed with the most obtuse jargon you can imagine. And the manager make it work well...
- lawn 4y ago> Who hasn't experienced a non-programmer manager without a clue telling them what to do? I'll never ever work again for a manager who couldn't do my job, at least in principle. Even if the manager could do your job, it's a bad manager if they always tell you what to do. A good manager should be helpful and assist you, not command you. And that's possible even if they're not a programmer.