3 ms·
I think it's a sensible distinction (or two data points to help you map out a spectrum that people can evolve along), but it needs to be based on actual profess
by m12k 5y ago
I think it's a sensible distinction (or two data points to help you map out a spectrum that people can evolve along), but it needs to be based on actual professionalism and skill, not just seniority. Like you experienced, some people don't grow, and their "10 years of experience" is just 1 year's experience repeated 10 times.
A senior dev is experienced, pragmatic, effective (at both tech and communication), self-directing and low-maintenance (from a management perspective), and always leaves the campsite cleaner than they found it. They're someone a manager knows they can point at a general problem area, and feel confident that "good things will happen".
By comparison, a junior dev needs much more hand-holding, and "pre-chewing of their food". They are less experienced, so have less of a sense of what the core of a problem is, what goes into identifying it, what a good solution looks like, how to bring it about, what techniques can go into that, and which people need to be involved at what point. Their tasks need to be broken down and specified more, they might need help along the way that they don't even know they should ask for, and their solutions need review.
Being able to identify and classify these traits is helpful - both to help junior devs succeed despite their larger need for assistance, but to give all devs something to aspire to - everyone can always get better.