Live data from Hacker News

Doing too much work on one's own before looping in others

thezbook.com

111–120 of 395 posts

Re: Doing too much work on one's own before looping in others

#111

> "the biggest mistake I see engineers make is doing too much work on their own before looping in others" > "For more senior engineers, it can happen because they like to work on their own and may be overconfident in finding solutions. It can also happen if the team culture is toxic and engineers fear getting criticism early in the design process." Not saying the above statement is incorrect but here is an alternativ…

> It also offers chance to produce memorable work as nobody remembers the set of 3 point tasks you completed ten sprints ago. This is one of the more toxic ones. To get past senior, you often need to be seen to do Big Memorable Things. It sometimes leads to perverse incentives.

To me moving beyond senior means you enable the entire team to contribute together accomplish Big Memorable Things.

This can mean a ton of things, which cannot all be served by a single senior+ engineer:

* mentorship

* seeking out, establishing, and evangelizing best practices, and not just coding best practices: architecture, documentation, testing, ci/cd etc

* high-level architecture knowledge and experience

* evaluating technology choices: tooling, databases, orchestration platforms, etc etc

* assisting management and product with scoping and prioritizing work

* the ability to put your head down and crank out a solution to something in code simply because it needs done and you can do it better and/or faster than others

* laying the framework of a greenfield project, maybe sketching out the codebase or POC for juniors to take and run with

* ...and so on and so forth.

A single person may be able to contribute all these things to a team over a time frame of multiple years, but in a 3 or 6 month time frame, most mortal engineers could only contribute two or three.

Re: Doing too much work on one's own before looping in others

#112
Knowing when to loop in others is one of the skills that makes a senior engineer. Too early and you end up wasting other people's time. Too late and you end up wasting everyone's time. Finding the sweet spot is important, but it's also important to learn which questions to ask. It's one of those skills that I wish could be taught, but it seems something you have to get a feel for over time.

Re: Doing too much work on one's own before looping in others

#113

They missed one reason why it can happen: Because doing things "the right way" is too slow, and the engineer is trying to skirt around process because the company moves way too slowly. Not out of malice or negligence, but out of a fear of the megacorp killing agility. I've seen entire teams at megacorps or governments try to keep others in the dark with projects that would be crushed under strict corporate rules.

It doesn't have to be a megacorp. Looping new people into a deep problem takes time, and can kill momentum if not done in a strategic way. Your personal time on any problem is finite, and you can exhaust that time-budget on bringing the wrong people up to speed. This is doubly true when the other person isn't on your team or in your organization: e.g., bringing in vendor support. (Maybe your experience is different; in mine, bringing in remote experts doesn't guarantee a faster resolution.)

Re: Doing too much work on one's own before looping in others

#114
post #79

Earlier quoted context omitted.

> It also offers chance to produce memorable work as nobody remembers the set of 3 point tasks you completed ten sprints ago. This is one of the more toxic ones. To get past senior, you often need to be seen to do Big Memorable Things. It sometimes leads to perverse incentives.

I mean it's not that toxic, if you are a good worker bee your manager will usually notice and be happy with your performance. Then from time-to-time you branch off to do something more high-risk to add to your promo doc. I think a lot of people have weaker communication skills than execution skills. So they could loop in everyone early on, but their idea might get killed off because they failed to justify it properly…

Maybe toxic is the wrong word. Perverse maybe. But I don’t think that being a good worker bee often gets people past the senior level, at least from what I’ve seen. But also getting past senior is rarer, so maybe what I’ve seen isn’t representative.

Re: Doing too much work on one's own before looping in others

#115
We see this with engineers of all ages, but especially with new grads. All have just spent 16 to 22 years working under a model where: you get an assignment, you come up with a solution, you are marked on your result, and then you move on…

Our education has trained us that involving others is something done at the end.

A lot of our new hires need help shifting their approach (and getting over insecurities) to consider that all their products need iterative review well before the work is complete.

Re: Doing too much work on one's own before looping in others

#117

I was more often than not 'guilty' of what the author describes. And I actually love being the lone detective on the hunt for a cool solution. I am not a dev by trade (data analyst) but still love to work on problems solved in code. A lot of the advice hit home, but what struck me was this part: > Encourage engineers to get something end to end launched internally as quickly as possible. This is something my boss nev…

I find when this happens, it never gets refactored. The edges can be smoothed, but the architecture is dried and hardens into something that needs to be worked around by everybody else touching the code. The easiest way to solve the issue becomes the only way.

My experience differs. But maybe because I love to refactor and create a clean architecture.

Also I learned a lot from my boss' refactorings. Before that I never would have imagined how far a good abstraction can be driven.

Re: Doing too much work on one's own before looping in others

#118
post #55

Earlier quoted context omitted.

You are not wrong. I generally sell as a mercenary, and prefer it that way - I've been doing this longer than some of my managers have been alive. I'm paid just as well if they want to "pair program" or jira the whole process, but yeah, you hired me to fix a problem - if you are the problem, I get paid just the same. Welcome to the real world, if your work is interesting, the clock might not turn on when I'm having f…

> I've been doing this longer than some of my managers have been alive. In what organisation do 25 year olds manage 50 year olds?

I worked at a start up where the founders were 25 & 26 and most of their first 25 employees were their friends who were similar aged. In less than two years, there were almost 100 employees, plenty of which were in the 50s.

The company's last valuation has it worth over a billion dollars now and they have a few hundred employees. A good chunk of the C suite and VPs are still those same early employees who are now in their late 20s and early 30s. Some are managing former FAANG employees in their 50s.

Re: Doing too much work on one's own before looping in others

#119

I was more often than not 'guilty' of what the author describes. And I actually love being the lone detective on the hunt for a cool solution. I am not a dev by trade (data analyst) but still love to work on problems solved in code. A lot of the advice hit home, but what struck me was this part: > Encourage engineers to get something end to end launched internally as quickly as possible. This is something my boss nev…

The frustrating thing is when only the first half of this philosophy (ship now, fix/polish later) is adhered to, where things get shipped frequently but seldom followed up on. The incentive to finish things needs to be strong for not only the engineers but also for the product teams and managers directing them, but as far as I can observe this is exceptionally rare — in fact it almost seems like the norm for non-engi…

I agree. I know that the freedom to create sensible architecture is a privilege.

Even if other things may not be perfect (but what job is perfect in all areas), my boss knows the value of refactoring towards a stable and maintainable architecture while keeping a reasonable schedule for shipping.

Re: Doing too much work on one's own before looping in others

#120
The author obviously draws on own experience, thus the conclusions. However, an important aspect is the team and the process, not just the dev and their behavioral patterns.

If a "loosely-spec'ed" feature is assigned to a single dev for implementation, then there must be either reasonable expectation that it could be delivered solo or that the blanks are not critical for the result.

Either way, such "pattern" of a supposed dev-vs-team antagonism may be pointing rather at process deficiencies or disbalanced expectations from management.

When team management believes that all is clear as day and could be done in a week-span, the devs may have a hard time affording themselves a prototype just to figure out what is there to do, so delaying the feature delivery is a simple hedge.

Post reply on HN