3 ms·
I think there is another bit to this which is cargo cult tendencies. Basically DevOps is a great idea under certain circumstances and works well for specific pe
by IgorPartola 2y ago
I think there is another bit to this which is cargo cult tendencies. Basically DevOps is a great idea under certain circumstances and works well for specific people in that role. Realistically if you take a top talent engineer they can likely step into any of the three roles or even some others and be successful. Having the synergy of one person being responsible for the boundary between two roles then makes your ROI on that person and that role skyrocket.
And then you evangelize this approach and every other company wants to follow suit but they don’t really have top talent in management or engineering or both (every company claims to hire top talent which obviously cannot be true). So they make a poor copy of what the best organizations were doing and obviously it doesn’t go well. And the thing is that they’ve done it before. With Agile and with waterfall before that, etc. There is no methodology (organizational, programming, testing, etc.) that can make excellence out of mediocrity.
- SoftTalker 2y ago> There is no methodology...that can make excellence out of mediocrity. And yet we keep trying. We continually invent languages, architectures, and development methodologies with the thought that they will help average developers build better systems.
- 1dom 2y ago> There is no methodology (organizational, programming, testing, etc.) that can make excellence out of mediocrity. This is a thought provoking phrase, and I liked that. Thinking a bit deeper, I'm not sure if it's accurate, practical or healthy though. I've seen mediocrity produce excellent solutions, and excellence churn out rubbish, and I suspect most people with a few years and tech jobs under their belt have. You could argue that if they turned out excellent things, then by definition, they're excellent, but that then makes the phrase uselessly tautological. If it's true, then what's the advice to mediocre people and environments - just give up? Don't waste your time on excellent organisation, programming, testing, because it's a waste and you'll fail? I think there's no 1 thing that can make excellence out of mediocrity for everyone. But I like to think that for every combination of work, people and environment, there's an optimal set of practices that will lead to them producing something better than average. Obviously a lot don't find that set of practices due to the massive search space.
- IgorPartola 2y agoI suppose I should have phrased that slightly kinder, and that’s on me. What I mean is that you can’t take your average jogger and expect them to win the 100 meter dash at the Olympics, no matter how much training and resources you provide them. Is that a real problem? No it certainly is not. Lots of people like rock climbing but you can’t expect an average climber to win a major competition or climb some of the toughest mountains. It doesn’t mean they shouldn’t enjoy climbing, but if they start training like they are about to free solo El Capitan they are very likely to get seriously hurt. Average developed, operators, sec. people can do plenty of good work. But put them in a position that will require them to be doing things way out of their area of expertise and no matter how you structure that role and what tools you give them you are setting them up for failure. Another thing I was thinking about was not individual people being average but rather organizations: an average mediocre organization cannot reliable expect excellence even out of its excellent employees. The environment just isn’t set up for success. I am sure most people here are familiar with having talented people working in an organization that decided to poorly adopt Agile because it’s the thing that will fix everything.
- tway_GdBRwW 2y agoThe team and/or org may have more impact than you think. I've seen people who were stars in one company totally bomb in another.
- 1dom 2y agoAll fair points. (Although I'm not a fan of the climbing analogy, the joy of programming is that you can practice anything you want without risk of real harm, and I think that's what makes unicorn-like programmers: they've repeatedly done the equivalent of free solo El Capitan practice in their spare time and lived to to tell the tail.) I think it's help to consider excellence in the context of principals and practice. Everyone should be aiming for excellent principals for their domain and environment. But the practice that implements the principals needs to be specific to the capabilities. E.g. I think in principal, any company with any tech should have backups, and ideally the ability to rebuild after a disaster. If you have a team of unicorn engineers ("company A"), the principals might be put into practice by meticulously tight and efficient SDLC and accompanying pipelines, tooling and other scripts and automations. If you have only one very competent engineer ("company B"), but a huge bunch of traditional ops people, that principal might have to be put into practice with a more manual, basic process (Bob from accounting once a week makes a copy of the important spreadsheets on a CD and stores it in a fireproof safe at home.) Both businesses can deliver excellent and reliable service for their customers because they implement excellent principals in a way that their employees can deal with. Swap company A and company B's practice, and even though it's for the same excellent principal, everything falls apart. I think we're in agreement here. It's an uncomfortable truth that - on average - 50% of environments are company B. There's a problem that 90% of companies want their practices to look like company A. Nobody wants to feel mediocre.
- _w1tm 2y ago> There is no methodology (organizational, programming, testing, etc.) that can make excellence out of mediocrity. That’s a pretty toxic statement. No one was born writing perfect code, every one of us needed to learn. An organizational culture that rewards learning is the way to produce an organization that produces excellent software. It doesn’t matter how excellent someone is if the organization puts them to work on problems that nobody needs solved. The most perfect piece of software that nobody uses is a waste of bytes no matter how well it’s written.
- Aeolun 2y agoSure, everyone can learn, but what leads to mediocrity is a lack of desire to learn. You can certainly structure your organisation around that and achieve great results. There’s no need for excellent tech to solve most problems. That’s ostensibly true for almost everything, because our society wouldn’t be able to survive if everything needed to be excellent.
- rachofsunshine 2y agoA lot of different things can lead to mediocrity, and lack of desire to learn is only one of them. Sometimes you want to learn, but your talents fail you. Sometimes you want to learn, and you learn from someone who isn't good at the thing. Sometimes you want to learn, and your environment punishes effectiveness. Sometimes you want to learn, and you learn correctly for the wrong context. Yes, people who give a damn about doing their job well are often good employees. But the converse is not true: many people who are not good employees do in fact care a great deal. There's no need to convert a descriptive statement about results into a moral judgement of a person's work ethic, and it's often just not factually correct to do so.
- Aeolun 2y ago> Sometimes you want to learn, but your talents fail you. > Sometimes you want to learn, and you learn from someone who isn't good at the thing. > Sometimes you want to learn, and your environment punishes effectiveness. > Sometimes you want to learn, and you learn correctly for the wrong context. Should you just blame not having learned on the that and call it a day? Sure, some people learn without much effort, but I’ve seen an equal amount of people that had to put it a massive amount of effort to be considered ‘smart’ (whatever that means). I think I consider “well, I tried, it didn’t work, so it’s forever impossible” to be the definition of mediocre. That’s actually still pretty good, as many don’t even try, they’ll give something up as impossible before even starting. I know people have reasons for that, but I don’t like it.