12 ms·
Balancing engineering cultures: Debate everything vs. just tell me what to build
- rubyissimo 3y agoWe debate everything ad nauseum at work. I'm going to try the FG scale. We'll see if I get fired for being disengaged.
- PaulStatezny 3y agoWhat's the "FG scale"? Nothing useful comes up when googling it. Edit: It's from the article. "F***s given" scale.
- 38 3y ago> Idea: An anonymous "vote to end meeting" button where if 50% of people press it, the meeting ends immediately. https://twitter.com/joeylorich/status/1468976175821250565 https://twitter.com/joeylorich/status/1468976175821250565
- mcmoor 3y agoMaybe if it's 50% we can send SIGTERM so at least the host can try to make conclusion before closing off. But then if it's higher (66%? 80%?) then we do send SIGKILL.
- roenxi 3y agoCulturally it is best to train developers to just do something, then provide non-judgemental feedback when what they do isn't what you want. Maybe schedule in some rework time to try again. That way, developers move quickly and sooner or later start building useful things. "Just tell me what to build" is a dangerous attitude to foster. It pushes more work into the management layer which is already a bottleneck for making decisions. That is bad strategy. A couple of devs thinking that way is OK, but it is going to accentuate the inevitable management dysfunction. The best approach is a culture where PMs understand customer problems and give quick, effective feedback to developers about whether what they just did affected a customer in a good way. Then management lets developers do what they do as quickly as possible. Alternatives can work, but that is the sweet spot. The ultimate goal of any software company is to have that one lucky dev who just gets it, builds something amazing quickly and then the company comes in to maintain and milk the product until management miscalculates, destroys it and the cycle starts again. Failing that, the next best option is a product guy who just gets it and organises the engineers to build something that makes customers happy. Neither of those states depends on debate or, curiously, on what the median developer is doing. Software developer productivity is one of the spikiest, most disjointed and chaotic metrics I've ever dealt with and most of the time it appears to be $0/day value add or slightly negative. Then sometimes it spikes to a few million dollars an hour. The culture should all be about working around the spikes, not the day to day.
- GiorgioG 3y agoI don’t live in an alternate universe where “Maybe schedule in some rework time to try again” ever actually happens.
- boxed 3y agoMaybe look for a new job?
- cqqxo4zV46cp 3y agoI’m in management and routinely allow for this. Not as much as my team would ideally like, as is and should be expected, but much more than zero. Sorry about your crappy job.
- deleted 3y ago[deleted]
- nomel 3y ago> Culturally it is best to train developers to just do something, then provide non-judgemental feedback when what they do isn't what you want. My preferred method of development is tell me what you think you want, then be available for the stream of questions I'll be asking you to make sure what you need is accomplished. I've found that it's almost always a bad idea, for everyone involved, to implement what someone says they want, unless they're assholes or competent developers.
- chiefalchemist 3y agoExactly. Wants (as initially stated) are rarely the actual business' needs. There also has to be some level of depth and breadth understanding, the implementated needs with be fragile and break easy. That said, interpretating what's and crafting them into needs is more enginner than developer.
- danparsonson 3y agoVery much this - I regularly find that asking "what problem are we solving?" allows me to work with the stakeholder in question to find a better solution than what I was initially asked to build. It's fine to take a stab at a solution but it's also a good idea to remember that you hire experts for a reason.
- leetrout 3y agoBrought to mind what I am reading in Corporate Rebels and really like the concept that Haier used. https://www.corporate-rebels.com/blog/next-influential-management-model-of-the-world https://www.corporate-rebels.com/blog/next-influential-manag...
- jauntywundrkind 3y agoThis Haier? https://hn.algolia.com/?dateRange=all&page=0&prefix=false&query=haier&sort=byDate&type=story https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu... Where a bunch of corporate fascists took such umbrage over debate/exploration over how their corporate envisioned scenarios were to work that they started pursuing legal action? Against open source people making Home Assistant integration? These people basically went thermonuclear in terms of cancelling possible debate & enforcing top down decision making. Utterly unwilling to listen or permit a single other opinion other than what their top-down management built. I cannot think of a better company to serve as a warning sign for what to never ever do. Seeing yourself & your own vision of the product as God & any deviation or discrepancy or other opinion as something to be squashed. Usually lawyers aren't involved as Haier did in their quest to stop out undogmatic use, but alas this kind of managerial hubris & self importance from the product world seems all too typical & all too poisonous; an unwillingness to let anyone else explore bounds of possibility, lest it gets in the way of those egos assured they've built a perfect little terrarium for the users to play inside. They calmed down eventually, with an incredibly useless & empty press release hinting that they were backing off. But this seems like one of the most powerful examples of a company chuffed up on hubris unwilling to permit even the hint of debates.
- jruohonen 3y agoI am not sure whether I can agree. Isn't this just another Goldilocks principle? In addition, not only company but also national culture matters. Ref.: https://news.ycombinator.com/item?id=38437104 https://news.ycombinator.com/item?id=38437104
- sime2009 3y agoYes, it kind of is. But the whole article talks about the extremes but spends zero time describing what the desirable middle ground looks like.
- LAC-Tech 3y agoDebate is a good if you all have a shared idea of what constitutes 'good'. IE, simplicity, performance, whatever.
- fusslo 3y agoI had a engineering lead who encouraged 'debate everything', but had the idea that 'good' meant 'his idea'. every new hire under him lasted about 8 months, then were burnt out and stopped being active in debate
- Aurornis 3y agoThis is the most common failure mode I’ve experienced: > A critical piece of avoiding endless debate is to know who makes the final decision and how it gets made. Consensus-seeking leads to endless debate. Every rapidly growing company I’ve worked for has reached a point where we have product managers and program managers and engineers and engineering managers and stakeholders and suddenly nobody can even identify who is the decision maker. Weak leadership then pushes a “we all have to work together to come up with a solution” angle that clarifies nothing and turns everything into a consensus-building operation. Progress slows to a crawl. The second most common failure mode I’ve seen is, I hate to say it, similar to what this author is proposing as a solution: Product Managers who view themselves as facilitators of a process where they get others to come up with the answers about what to build. The product managers call meetings where they shuffle context and requirements and suggestions from stakeholders to engineers and customers and back and forth under the idea that their job is to lead others to the conclusion. I’ve worked with some product managers who produced prodigious amounts of meetings and slide decks and Figma charts and process documents and Notion pages and after meeting summary e-mails but can never actually conclude what we should build. They’re so enamored with process and documents and afraid of being prescriptive, so you only get questions and prompts and meetings and frameworks to follow to supposedly arrive at a conclusion about what to build.
- dzolob 3y agoThis is a great take. In my limited experience, you have a real problem if the dev team hijacks what will be done and how it will be done. There is a good chance your product is going to be over-engineered, difficult to steer and all the minor but important details will never get done/corrected because hey, lets build another mammoth worthless (in business terms) functionality.
- twojobsoneboss 3y agoI once as team lead had to preside over a product designer and senior dev (who used to be a CTO at a tiny startup) who never saw eye to eye, but the designer always had the final say, (unless there was a good technical reason to do something differently), because that’s what she was in charge of
- 3y ago
- throwawaaarrgh 3y agoI think "debate everything" comes from: 1. Uncertainty. People haven't done X before, and are concerned about the outcome, so they delay, by debating. They don't know whether they're right or wrong. They're really just trying to figure out their own opinion. So they will bring up objections, even if they don't actually have a concrete reason to object. They just literally don't know if something is valid, so they pose a hypothetical. Another form of uncertainty is lack of trust. If somebody has trust that an outcome will be acceptable, then they can deal with any fears they might have about whether a given approach will have the outcome they hope for. If they can't trust the process, or people, they'll bring out road blocks. 2. Ego. Let's face it, we work with people with big egos. People who are smart, and capable, and know it.If their egos don't feel adequately compensated, they will debate until it is. I think "just tell me what to do" is easier to understand: 1. Apathy. It's a real killer, and it can hit any organization. Sometimes people care too much; if they don't feel like they can affect change, that turns into caring too little. Or perhaps they've just been burned too often at this job. Frustration builds until the stress or friction is too much, and they compensate emotionally by disconnecting. Some people carry this from job to job, like a form of PTSD. 2. Inexperience. When you have a lot of experience, you mostly know what to do already. But if you're working on something very new, or the organizational hierarchy isn't clear, or goals aren't clear, or processes, or you just don't have a lot of professional experience, you can be lost in a sea of uncertainty, not sure what to do. Maybe you have ideas of what to do, but it's not clear how to decide on it. So you relent, just waiting for someone to give you some guidance. In each of these cases, the missing component is: leadership. There must be good leadership to help people do their best work and keep the ship sailing. Bad leadership, or the absence of leadership, will lead back to these problems.
- leetrout 3y agoI believe there is a form of PTSD that develops within toxic software development jobs and I wish it would receive more legitimate attention and treatment options. I have tried to explain to my therapist why I have developed something like PTSD around peer reviews... yes, we all say "you are not your work" but that does not excuse being (dare I say) abusive in comments on PRs.
- mhss 3y agoDebating is another form of waiting. You're not waiting to be told, but you're waiting to reach consensus. As long as the decision makers have bias for action you won't get caught up in either debating endlessly or waiting to be told what to do. Finding out how long to "wait" in either incarnation is only learned through experience IMHO, using general principles such as "one way" vs "two way" doors, etc.
- lgkk 3y agoHow about focus on the mission of the business? Does what you’re doing increase revenue, profits, market saturation, improve customer experience, whatever? If it doesn’t don’t do it. I don’t think it needs to be that hard. Fire people who waste time that detracts from this mission. Imagine you’re in close quarters combat as a soldier and your team lead is goofing off or your manager is focused on looking good. Don’t find yourself in that position. Don’t let your team get to that level of incompetence and failure.
- lazyasciiart 3y agoSeriously? I have at least ten major projects on my wishlist that all meet those criteria and aren’t getting worked on, because time is finite. The question is not how to find something useful to do, it’s how to agree on what the most useful choice is.
- jordanbeiber 3y agoIn my experience people usually spend to much time trying to figure out what is most important instead of just doing an important thing.
- twojobsoneboss 3y agoThere are many cases (not all justified) where product work is too difficult to directly tie to financial outcomes, or, the lag time is very long So then you get into all these murky waters of how to decide what to work on and how to go about it
- diiaann 3y agoThe endless debates wear me out. Sometimes I just want the engineers to just do. It's labor for me to tell someone their idea is bad, both mentally and emotionally. At the beginning of the relationship, you have to engage in that labor to get people to trust you. But if it continues to break down, I try to figure out why and it's usually because another designer/PM were flippant in their choices.
- j4yav 3y agoI wonder why your engineers are endlessly sharing bad ideas, I haven’t run into that
- Exoristos 3y agoThe reason we debate is so we're able to build the product that actually works for you and we can maintain for you. If this weren't necessary, why would product need experience devs? The no-debate fantasy is at least a little akin to the no-code fantasy.
- uoaei 3y agoIf you're on the side of "just tell me what to build", you better really, really trust your leads and managers. Bad managers can destroy engineering culture in an instant to the point where "just tell me what to build" becomes a symptom of burnout and not a bona fide aspect of a work culture.
- HelloNurse 3y agoThe next level of burnout is the double bind. I am not empowered to make decisions, I have nobody to discuss meaningfully with, and I'm told what to build perentorily but vaguely and often incorrectly. Will I be able to read the mind of my boss? Better to stall, complain, and avoid making mistakes.
- orangevelcro 3y agoThis describes the job I recently left to a T. Drained the life out of me.
- uoaei 3y agoI suffered through that kind of situation for much longer than I care to admit. I am now behind the curve in terms of skills development because of how stagnant the situation was.
- proc0 3y ago> Past the stage of senior software engineer there’s no real credit for the code anymore. It becomes the baseline. The strategy impact, the coordination, and the understanding and contributing to the team, company and customer success is part of your responsibility. This is an underestimation of the potential of software systems. Of course it depends on the software application, but in many cases there is a lot of value lost when organizations implicitly create a technical ceiling for their engineers, and push their focus away from the theory and practice of engineering. Saying that there is more value for an engineer to coordinate, plan, and present, is almost like saying that there is a point in which software systems can no longer be innovated or improved, or that there is nothing about software that requires more than 5 years of experience (or whatever the senior level would be). This is a sure way to build naive systems that brake all the time, when instead it could implement more sophisticated solutions. Of course this would mean that engineers would have a harder time communicating their solutions, but once again, it would be limiting software just because the managers want full control and visibility at every step of the way. We're now talking about the possibility of AGI, yet it seems every software org still goes through the same problems, with the same type of bugs, pipeline problems, etc. This is definitely not because software can't solve the problems, so it must be that the solutions are too hard to implement, and so the question is why is that hard?
- hnthrowaway0328 3y agoAs a DE my attitude can be described by the following sentence: I don't care what kind of data you want me to load, but let me know the frequency, the type, the schema and other technical information and I'll load it for ya.
- btown 3y agoSimilar to the FG scale in the OP, LOGAF is a fantastic system to use, especially in asynchronous/remote environments. It's radically improved our code review iteration cycles. https://blog.danlew.net/2021/02/23/stop-nitpicking-in-code-reviews/ https://blog.danlew.net/2021/02/23/stop-nitpicking-in-code-r... That said, review debates are only one part of a "debate everything" culture. Architectural disagreements are much harder to solve while maintaining morale. One thing I've found effective as an engineering leader, when we need a plan of action, is to ensure I listen to every technical take, but make it clear that while I'm incorporating all those concerns into the decision, some concerns need to be weighted more than others based on larger medium-to-long-term business context, and that those concerns need to drive the design. It isn't always the best approach with 20/20 hindsight, but the removal of paralysis has been a net positive so far.
- orand 3y agoSometimes (but not always) the reason for these cultures is more due to nature than nurture, in which case it can be virtually impossible to change without replacing people. I worked on a team that went from a very strong "debate everything" culture to a very apathetically strong "just tell me what to build" culture, and it was primarily due to the hires we made. We hired for the ability to grow technically, and that certainly proved true. But the interest in the "why" behind the work never developed the way the "debate everything" folks assumed would happen with all good devs. The QA team cared, and remained in "debate everything" mode, but the dev team eventually just wanted to be left alone to focus on relatively meaningless (without context) work. No amount of connecting the dots to real user need seemed to really get through. They just wanted semi-challenging technical problems, and a paycheck. Nothing wrong with that in moderation, but it ended up infecting the entire team. So be careful how you hire. If you have a blind spot for this phenomenon and hire exclusively for technical skill and/or potential, you might just get unlucky and end up with a critical mass of "just tell me what to build", and then you're screwed, because you'll have a technically strong team that has zero interest in understanding the bigger context of their work, forcing you to choose between getting sucked into the codependent relationship, or resigning yourself to doing the wrong thing with great technical prowess.
- baq 3y agoYou say it’s a hiring problem and I see an incentives problem… either way a management failure but what you describe should’ve been reorged promptly.
- strgcmc 3y agoIncentives operate on a slow time-scale. Let's say you have a decent team as a baseline, but starting to fall into this "just tell me what to build" apathetic failure mode. How would you turn this ship around? As a manger, you could go as far as saying explicitly -- "hey, any engineer who demonstrates customer obsession and shows attention to impact, will receive their choice of project to work on, will get promoted faster and higher than those who don't, etc.", but this is unlikely to create a positive outcome. At best, 1-2 people may rise up, but the rest of the team will resent them for "try-harding" probably; crabs-in-a-bucket mentality is a very natural human group phenomenon. And now you've got 1-2 "stars" who won't want to stick around to deal with the rest of the shitty team members, so once they leave, you're back at square one. Reorging is a reasonable step to take, but it's risky and you could just as well end up "infecting" other orgs or team members, by carrying the contagion of bad culture with you. Firing and hiring again more carefully, is honestly both faster and more direct, and shouldn't be seen as a "last resort" option IF the culture is truly too far gone AND the culprits are readily identifiable. First step is probably to make sure you have a firm and accurate diagnosis of the problem, then if you're 99% sure you can identify the right people to fire -- go ahead and fire them.
- jauntywundrkind 3y agoI had such a great company social night, talking with an engineer who got his start here ~5 year ago. They were taking about how they just want people to have a well formed idea of what to build, to be able to hand off clear expectations, and let him roll. For curiosity sake I started asking about other times: has there been a time where you've felt on the line, been the one who has to figure out what to do? They paused for a bit & then said yeah, actually... They had been battlefield promoted after two higher ups on a team had left & it was just them running this product. They said they had little idea what they were doing but the company trusted them & let them hack through it. They loved that time. Finding out what to doz being given problems and the freedom to solve it was a highlight of their life, they said. A lot of people don't want to play the game. Especially when we are forced to collaborate with non-technicals, it's incredibly hard to justify and explain ourselves & to share power & compromise with these people who lack competency to judge, assess, negotiate. The title here omits the gods truth as an option: we the engineers know & can assess & you the business/product don't have the technical chops to debate, nor do you understand what is to be built. The premise presented is "debate vs do" as they say it, as though product and product alone understands do. But I think most engineers live in pain and dissonance and sadness, feel an incredible impedance and struggle, because most businesses/product have only the faintest fragmentary fake propped idea of what do is. It's a fiction. And it's up to engineers to cobble together some vaguely competent rendition of the fairy tale nonsense product tells itself it's come up with and that engineers need to just do. The phrasing here could not be more slanted. Run, engineer, run, from the dented terrors that would think their product sensibilities have fully flushed out the idea, that think there is no cause for "debate" or sussing out how really to do a things that think only to "do" what the master product says is necessary.
- j4yav 3y agoGitLab has a quite nice decision making framework that avoids these problems: https://handbook.gitlab.com/handbook/leadership/making-decisions/ https://handbook.gitlab.com/handbook/leadership/making-decis...
- solatic 3y agoOrganizations that debate everything and do nothing are afraid of other people being upset with them for doing the wrong thing. Organizations that do nothing until someone else tells them what to build are afraid of sticking their necks out for some dominant manager to just ignore them anyway. This is why executives and managers are recommended to foster psychological safety. Respect the efforts of people who built some skunkworks project, then discuss realignment with them afterwards (understanding that you, the executive, may need to be the one who re-aligns). Encourage people who never stick their necks out to start to tell you what they think, even if only privately at first, and eventually hopefully they'll start to join the discussion too. There's a lot of talk about clarifying who exactly the decision-maker is in any situation. It's a nice fantasy to think that the decision-maker should always be some kind of manager or executive, but the truth is, if you issue a dictate from on high to someone to do something that they deeply disagree with, eventually everybody's going to leave. That's not the way you lead people. Ultimately, the person who does the work is the person who decides - all that you can ask from them, as a manager, is for them to listen to you (and other stakeholders) first, especially since someone who never does as they're asked is someone who will, sooner or later, get fired. But no manager can truly control the actions of their subordinates, and the wise manager understands that and channels that into productive workers who are mostly (but never fully!) aligned with the organization.
- danielovichdk 3y agoYou need to minimise the debating. Especially if it shows to be based on assumptions. Debating is also used as a human interaction tool for "feeling part of" or "being good enough" and it's especially clear in a startup and early company setting where everyone kind of tries to show their own merits to the rest of the group. It's unhealthy to debate a lot and it's a clear sign that there is either too much uncertainty, too much ego, too little subjective evidence or simply too shallow leadership. Debating should be very surgical and not attempt to either look into the future or favor the most outspoken.
- mmcnl 3y agoDecision making is a craft. If you just go with the flow, you'll not be very likely to achieve optimal results. I think for every large enough team, you should be explicit about how decisions are made, and why they are made that way.
- KaiserPro 3y agoOne of the key problems that exacerbates this is removing the business use case from engineering. In most cases, you are engineering a solution to solve a business need. Each engineer should know the business metrics you are trying to move, and why, not just the PM. This tends to highlight that navel gazing on which framework to use is pointless, because unless you actually build something, the money isn't going to arrive, and you'll be out of a job. Software engineering is all to often treated as a black box, that must be isolated from the real world, lest the magic smoke escape. But that leads to terrible decisions, and allows "carbon fibre" programmers to flourish. Engineering should be a business unit like any other part of the company.
- ricardobeat 3y agoI agree, unfortunately the trend over the last decade is for a lot of developers to want software-factory style jobs, and think that business is “not their problem”.
- rprospero 3y ago> unless you actually build something, the money isn't going to arrive, and you'll be out of a job. The sad part is that many employees have come to the rational and correct solution that the above is not true. Out of the people I've known, more have lost their jobs to the results of C-suite malfeasance (e.g embezzling, illegal behaviour) than have ever lost their jobs to their own actions. Conversely, unless the organisation you work for is exceptionally incompetent, your own personal failures shouldn't put them out of business. Think about all the cancelled Google projects. If the devs that worked on them had just come into work and played Minecraft all day, Google would still be in business. My personal opinion is that, if the Google Reader devs had never delivered a product, Google would be better off today than it actually is because it wouldn't have such a devoted community angry at it for killing off a beloved product. The navel gazing framework discussion is like selling your own lotto tickets. If someone's number actually comes, you're on the hook for millions of dollars and probably broke for life. However, a person with a risk taking mentality will recognise that the odds of someone winning the lotto is tiny and, barring that outcome, selling your own lotto tickets is free money.
- deleted 3y ago[deleted]
- bluedino 3y agoAt some companies there are so many places where things can be changed or undone. We had a simple avatar upload. Done this in every app we had ever made. It "broke". And I mean it didn't really break, but it changed enough where it might as well have. Who changed it? Sales (aka the customer)? QA? Development? Design? CEO.
- eschneider 3y agoDebate "everything" isn't optimal, but it's tolerable so long as a decision is made and folks can move on. Even if the decisions aren't the ones I'd make or I'd consider optimal, that's a situation that I can deal with. What I'll never do again is work at a place where every decision is subject to re-debate anytime someone decides "they don't like it." I just don't have the mental energy for that bullshit any more.
- agentultra 3y agoI didn't really vibe with this dichotomy but I did get the sense that both of them seem like a symptom I have seen often: Too many chefs, not enough cooks In general this happens when companies over-value management. If you find each "team" of 3-7 software developers have at least 3 "managers" on the team (in addition to the visual designer and other folks in productive roles): you've got too many chefs. Decisions have to go through the committee, the process, etc. Software developers that are making the product itself are rational, intelligent, capable people whose hands become tied behind meetings, documents, and permission-seeking. Too many chefs make for busy work and they focus on the wrong work. One manager for 5-8 software developers is often good enough. Someone who interfaces with HR, handles administrative tasks, and is the voice of the team to the rest of the company at meetings. A good manager enables the team to do their best work and stays out of the way.
- michaelmior 3y agoIt seems like this can also happen when management is under-valued and each individual contributor can always make all their own decisions. I'm sure this can work on a team disciplined enough to share important design decisions they make with each other and to voluntarily adhere to some design decisions they may not entirely agree with. But for a lot of teams, without someone taking the lead on making important decisions, you end up lost.
- trashtester 3y ago> Too many chefs, not enough cooks As long as the chefs also do cooking, having chefs is not a big deal. The problem is the people who do not produce anything but keep themselves busy doing stuff that ends up wasting everyone's time.
- iancmceachern 3y agoIf the right decision isn't obvious to everyone in the room, including the least experienced person in the room, you don't have enough data to make the decision. You should break, get thr data, and regroup when you have the data to make thr proper decisions. Data driven decisions.
- calderwoodra 3y agoI'd love to ask anyone who's worked on present day Instagram/Facebook what the long term effects of data driven decision making is. My understanding is that it's been a toss up. I think PG has a tweet a while back like "some decisions are so bad, no one in their right mind would agree to this if there wasn't data to back it up". More of less saying, you can find data to support any decision, so why even be data driven? EDIT: Found the tweet, which pg responded to but didn't actually create: https://x.com/dadiomov/status/1553474933010755584?s=20 https://x.com/dadiomov/status/1553474933010755584?s=20
- iancmceachern 3y agoI'd say their experience is an outlier. They are not the norm. I'm speaking from a 20 year background designing medical devices and other critical infrastructure. In my world, like with airliners, it's important to get decisions right or people can be killed. Therefore, data driven decisions.
- calderwoodra 3y agoYes, if safety and livelihood are on the line, get the data and be sure. But most companies have to implement purchase flows, marketing sites, software onboarding, etc. Examples like this are where folks are more likely to cherry pick data to justify whatever their biased to believing.
- feoren 3y agoYeesh, I don't know. I think we have enough data to decide the shape of the Earth, yet there are still Flat Earthers. Your approach works in an idealized world where everyone is perfectly rational and emotionless and all facts are perfectly knowable. That's really not the world we live in. This is basically a hardline stance at the extreme "endless debate" side: if literally anyone in the room is disagreeing, then you must not have enough data to make a decision yet? I don't see that working in practice.
- beryilma 3y agoMy approach as the senior software engineer (but not the manager) of my team is to not debate everything, but to point out everything that I think is wrong, can be improved, or should be designed differently. But then, I leave the developers and/or the manager to make their own decision and shoot themselves in the foot if they happen to make the wrong decisions. This approach takes more time, but I think it improves the sense of ownership of developers and their maturity over time.
- ProfHiggs 3y agoSome of the disparity described seems to relate to the size of the organization/team and where value is placed. Many say that as an organization grows, it takes more people to get the same work done that a small team can, a la entrepreneurial spirit. The effect in my experience comes from a few distinctions with the greatest being a team wholly bought into the mission, and equal participation. The later doesn't imply equal say, but, rather, the opportunity for all to be involved or informed of every aspect of the project and not rely on roles or expertise to carry the day. I've sent engineers along with product managers into the field to gather requirements; each has a different perspective, and through mutual respect, come to understand that their collective feedback builds a better product. It also means deferring to a third party authority, such as the 'customer' rather than one's ego. Again, the mindset of the individuals in the team is very important, often more so than their assignment skill level. Of course a strong leader needs to act as coach and commander, helping the team move forward and making the tough decisions when momentum is waning.
- Amasuriel 3y agoBoth of these extremes to me are both just lack of actual leadership. A real leader should absolutely value and respect the input of their team, but also know when to just say “of the options, this is what we are going with, here is the trade off we are making and why” and have the mutual respect and trust of their team to make both of those activities successful.