7 ms·
I cant work for someone who doesn't understand what I do. An unused sword rusts in its sheathe. I remember working for a gent years ago, who was stressed out
by protocolture 2y ago
I cant work for someone who doesn't understand what I do.
An unused sword rusts in its sheathe.
I remember working for a gent years ago, who was stressed out that my output was so low. He declared "I started this business in my living room let me show you I can do any job in this building"
He came to my workspace, where I had 20 servers stacked on my workbench. He looked at them. Attached a single power cord. And then wandered off telling me he could definitely do the work if he wanted to.
I dont think a manager of software engineers needs to code the application he manages, but he should be continually coding something to remain sharp.
TBH one of my current clients produces hardware and software, medium to large enterprise with close to 200 staff. Their CEO can operate all their products, operate the machines that place chips on the circuit boards, operate the injection moulding machines, write SQL queries to pull data out of their CRM and write code. He tries his best not to do it, but he maintains the skills. That's the goal I reckon. Someone who understands the job all the way to the top.
- tdeck 2y ago> I remember working for a gent years ago, who was stressed out that my output was so low. He declared "I started this business in my living room let me show you I can do any job in this building" > He came to my workspace, where I had 20 servers stacked on my workbench. He looked at them. Attached a single power cord. And then wandered off telling me he could definitely do the work if he wanted to. Frankly, all this anecdote tells me is "don't behave like a condescending asshole". If he'd said the same thing but then managed to do some non-trivial aspect of your job for a few minutes, I think that would still have been a bad tactic. It's just as possible to have humility about skills you lack, and to lack humility about skills you've maintained.
- protocolture 2y agoNormally I would have 12 or so desktops there. The server stacks were well above his height. He probably could have, in his day, wired up 20 odd desktops, got them going, and maybe shave 10 minutes off my batch time. But he really had nfi with the servers, the stacks were 2ft higher than him already, they all had dual power supplies, lots of idrac ports. He absolutely would have shamed himself if he kept going. And the reason he hired me was the ability to reason and read vendor documentation. They also take ages to boot compared to a desktop. So yes I think ALSO dont behave like a condescending asshole, but if he understood what I was doing he wouldnt have needed to leave his office and make a fool of himself anyway.
- zemvpferreira 2y agoI don’t know man. Can Bezos code? Can he operate a forklift? Would he still even recognize Powerpoint if you opened it for him? At certain points things need to be let go of if you want to keep growing. Some managers might keep technical skills sharp, but I’m not sure they’re much better managers for it.
- protocolture 2y agoGroups of companies, like Amazon, dont really make sense to me in abstract so I cant really comment. But whoever the head of AWS is should definitely have a grasp of fundamentals.
- YZF 2y agoI'm pretty sure the CEO of AWS can't do any engineering work anywhere in AWS. He's an MBA and an Industrial Engineer (whatever that is). He used to be a product manager.
- kamaal 2y agoYou still need to understand what you are selling, like in a very deep sense. Even if not at the technical levels, you need to understand how the financials of it all works, how to take product and sales roadmap forward. How to hire, fire, how to spend and on what to spend. All this involves understanding the product in a very deep way, and a good deal of technical details as well. Else your staff will play you like a violin. Absolute hands off abstract management by words won't cut it anywhere.
- guappa 2y agoAnd industrial engineer is basically an MBA but called "engineer" for no reason whatsoever.
- somethoughts 2y agoOn the flip side - I find it very understandable that one might not want to have ever worked at Amazon even in its early days and instead would prefer to work (or have worked) at a much smaller, engineering focused organization.
- serviceberry 2y ago> I cant work for someone who doesn't understand what I do. But you already do. Unless you're working for a tiny startup, your CEO or the Board probably doesn't understand the specifics of your code. You can't run a large company by making every person super-involved in every detail. You have layers of abstraction that make it possible to reason about an org of hundreds or thousands of employees. The Board trusts the CTO to oversee technology. Your CTO trusts your director / VP / whatever to run a large chunk of it. That person delegates a smaller part of running the company to your boss. The whole point of each layer is to abstract away some of the underlying messiness. They exercise professional judgment for day-to-day operations and provide a clean interface that provides health signals, requests resources as needed, etc. And I think what many folks miss is that it doesn't stop with their boss. It stops with you! Your boss generally trusts you to make design and implementation decisions and is expecting you to provide a reasonable interface to that. If your boss has a reasonably-sized team but is spending their day writing code, then honestly, why are they in a management position to begin with?
- protocolture 2y agoSpecifics sure. I dont expect them to understand the specifics. I dont want them across every task. But I also dont want to (and currently dont have to) explain specific risks regarding what I do, I dont have to justify how long things take, because my management understands that. We speak the same language. Its glorious. I mean just comparing my clients that have relevant technical knowledge, vs the ones that dont, the clients that dont have that knowledge need "meetings" and "catchups" and immense email threads in the order of 10 times the ones that do understand. Thats measurable (to me) waste. Another observation of mine is that non technical people really have no ability to recruit and manage technical people. I have seen multiple businesses brought low because the "technical" person brought in to manage the "technical" side of the startup actually had NFI. Or when they do accidentally hire someone competant, their requests for resources or time are ignored, even when well justified. The non technical founder or CEO either has to trust someone (which fails a lot) or they dont trust someone (and thats even worse).
- jt2190 2y ago
- burnte 2y ago> I cant work for someone who doesn't understand what I do. Someone can understand what you do without being able to do it.
- ironmagma 2y agoThis really calls into question your meaning of the word "understand."
- nkmnz 2y agoThis really calls into question your understanding of the difference between the words "what" and "how". I know and understand what a marketing intern does, but I don't know how to specifically record a TikTok that will appeal to Gen Z with an IQ below 115. And I don't care, because I can measure the performance and fire or hire the intern.
- ironmagma 2y agoCan you measure the performance and accurately separate it from things like how well Tiktok as a platform is doing, the general economy, and public sentiment about your company? Of course not, unless you were also an expert on making Tiktok content for the same audience and could definitively say what should and shouldn’t work.
- nkmnz 2y agoIt's like a pianist thinking that his doctor can't operate on his hand because he can't read music.
- onion2k 2y agoI have 25+ years of dev experience, and currently work as an engineering manager for teams who write code in a language I've never used (but in a domain I understand well). What do you think I'm missing?
- 2y ago
- AdieuToLogic 2y ago> I cant work for someone who doesn't understand what I do. Managers are responsible for maximizing what people they work with can achieve. This does not require them to be able to do what their team can do. > I dont think a manager of software engineers needs to code the application he manages, but he should be continually coding something to remain sharp. A counter to this is; a manager of software engineers needs to remove roadblocks impeding the success of the team. Good managers enable their coworkers, micromanagers weigh in on or perform commits.
- protocolture 2y agoHow do you know what roadblocks are valid to remove if you dont understand what they do. How do you performance manage employees if you dont understand what they do.
- AdieuToLogic 2y ago> How do you know what roadblocks are valid to remove if you dont understand what they do. Roadblocks are almost exclusively a "people problem" - politics, identifying stakeholder needs, inter-team coordination, etc. > How do you performance manage employees if you dont understand what they do. By working to identify value added to the organization via quantifiable metrics and working with team members to define professional growth tasks relevant to both the person and the organization. None of the above requires a manager to know how to do what the people hired can do.
- protocolture 2y ago"Hey we need money for tools for reasons" Is a pretty common roadblock.
- felizuno 2y agoI guess I don't get what's objectionable about working for someone who doesn't understand how you do what you do. Isn't what matters being appreciated? I certainly can't work for someone who doesn't value what I do, but I can care less whether they actually understand how I do it.
- stego-tech 2y agoI guess it depends on the perspective, and the attitudes of those above you towards your work. If people and product managers are showing deference to your team's expertise in this knowledge domain (whatever it may be), then that's good, and I don't think anyone here is going to complain about that working relationship. Where folks get objectionable (myself included) is when those same managers conflate superior rank with superior knowledge. It's the CIO demanding we use a specific product suite without objective justification, or the SVP forcing a given architecture because it suits their political objectives rather than organizational ones. That's presently on the rise as tech companies (in particular) bring in "outside talent" (aka, the same failed-upwards managers and leaders of unrelated enterprises in their social circles) instead of promoting from within or hiring qualified candidates, and it results in a whole host of grievances and problems that can rot the org from the inside out. The clue is the rise of these sorts of posts, trying to coach us on how to step into leadership roles and transition from Individual Contributors to People or Product Managers instead. The takeaway I got was less "managers shouldn't code", and more "managers should not assume their code is better or necessary just because they're managers"; in other words, to strike a balance.
- guappa 2y ago> Isn't what matters being appreciated? And if they have no clue what the job is about they will inevitably appreciate/promote/give raises to people who talk the most random jargon in meetings rather than to people who actually work.
- whynotminot 2y agoA lot of the reason you hire someone is specifically because you don’t understand the skill required to do a thing. I don’t learn plumbing in order to hire a plumber.
- kamaal 2y ago>>An unused sword rusts in its sheathe. >>I dont think a manager of software engineers needs to code the application he manages, but he should be continually coding something to remain sharp. I'd even go to the extreme of saying the coding skills/brains fade by inverse cube law. Skill =~ 1/t^3 (t = time since last practiced the skill). Musicians are known to say something along similar lines, like as little as a day of missed practice and they can feel it. I used to be quite good at calculus as a teenager, and today I could look at the easiest problems there are and go blank. Only a faint echo of those days remains. I have long suspected that Doctors suffer similar decline in ability as years go by from Medical school, and you can be sure in as little 2 - 5 years, most managers would struggle to imagine what writing code could look like.
- zdragnar 2y agoIf your boss can do your job, one of you is redundant. Managers of engineers should be the interface to the business and other units within the organization. That's a big enough job without requiring coding skills on top of it.
- impossiblefork 2y agoIf your boss can do your job, he can understand what you're doing and correctly determine how you perform. One of you is only redundant if the manager doesn't have his time filled with other things. An engineering manager actually reads the output of the engineers and participates in having it applied to realise bigger projects. He makes higher level decisions about the engineering projects.
- zdragnar 2y agoYou don't really want your senior and staff engineers bogged down with career management, hr disciplinary implementation, team salary budgeting, and all the miscellaneous other duties of a manager. You want them thinking deeply about the code, the business problems, and how the two meet. In terms of evaluating job performance, you've got peer reviews, deadlines met, contributions in meetings and so forth. In other words, a manager should have their time filled with other things. Unless the team is really tiny (too many managers), there's plenty for the manager to be doing- planning with product / sales / design teams alone should be enough to keep them busy.
- valzam 2y agoI think that's the crux though, for some reason companies think that a team of 3-5 engineers needs a full time people manager. Unless you are dealing with all juniors or a bunch of primadonnas I don't see how every team needs their own people manager.
- zdragnar 2y agoHence, my original point. Some of these people are, in fact, redundant within the org.
- matwood 2y ago> I cant work for someone who doesn't understand what I do. A better word might to 'appreciate' what you do. I'm mostly a manager/leader/vision person now and occasionally still code. Even though I've written a lot of code over the years, there's no way I could just drop in on a complicated project and understand all the intricacies without some ramp up right now. And that's ok. I appreciate the challenges everyone (engineering, customer support, operations, etc...) I manage faces and trust the people who do that work. There is only so much time in the day, and if I'm tinkering with Node versions I'm not doing the work I need to get done.
- justanotherjoe 2y ago'Appreciating' is a very hard thing to do. I think it's an impossible task for one man. Not only do you oversee many people, but there are so many dimensions you can appreciate in someone. The way I see it is that for a healthy office, you need to have peers who appreciate each other in a vocal way so that the managers/leads can hear it. Cause not everyone sees what you see. You notice someone is really good with something? See someone keeping up with the literature? Find a way to bring it up in group setting. It's not a given that everyone notices what you notice. The thing about appreciation is that you can't just say it about yourselves. It always need someone else. You cannot say things about yourself other than your outputs cause it'd only look petty. Only when someone else says it, it's considered. Of course, be proper with it. All I'm saying is appreciation is a shared responsibility. And if you do it right you might also become someone's favorite person.
- onion2k 2y agoI cant work for someone who doesn't understand what I do. Why would you put a limit on your own progress like that?
- protocolture 2y agoWhat do you mean? Figuring this out has been the best thing for my career. Jettisoning jobs where I spend all my time managing upwards is career building.
- bl4ckm0r3 2y agoIf one was a coder once, they don't need to keep coding to understand what a coder does. Plus it's a bit hard to be a manager of different profiles and different stacks and understand what everyone does from a coding point of view (different stack, different frameworks and abstractions etc) especially while time passes and tech changes so much, so quickly. I do agree that it's important for a coder to keep coding but mostly for the manager itself as it's removes some of the old biases and it's a continuous learning process on something that, technically speaking, they should be passionate about. Plus it does help to have conversations with other developers and don't sound like a person who only listens to vivaldi at a dnb concert.
- naikrovek 2y ago> I can't work for someone who doesn't understand what I do. Then you will never work for any human being. None of them will know what you do as well as you, unless they're doing it with you, and if that's the case, they're not really someone you work for. Bosses become bosses because they want to stop doing the work. They want more money, and more respect, and they want to make decisions without needing to clean up their bad decisions. Bosses become bosses because they don't want to do what they've been doing. There is no such thing as an engineer who does real work who is paid as much as a manager. They just don't exist in any company I have ever worked for. All managers of any pay grade automatically make more than any engineer of any pay grade, which creates a ceiling for engineers. Bosses become bosses because people are penalized for remaining engineers. Management simply does not care about the experience and knowledge gained by engineers, and they value it less than a manager who is fresh out of college and who has zero experience with anything. No, bosses should not code; they chose their path. Fuck 'em.