|
|
|
|
|
by ctrl_freak
2678 days ago
|
|
Are "Senior" titles meaningless in many companies? Absolutely. But they also matter in many others. It seems as though the author's "juniorness" is showing through while writing this. In particular, the assertion that "programming skill is the most important skill for senior developer". I'm not sure that's true. You cannot write code in a vacuum; software development requires communication and understanding of the business to ensure you're solving the right problem. Doesn't matter how great your code is, if you write a solution to the wrong problem, you provide zero value. At companies where seniority is done well (FAANG, etc.) your performance is measured not just on the quality of your code, but the impact you provide to the business: this includes code quality, but also working on projects that matter to the bottom line of the business, enabling teammates to do their best work, bringing in new people, basically acting as a multiplier force. |
|
This statements sticks out to me:
> You can argue that being a “senior” is more than just being a good programmer, but if the “junior” developer is more productive and is trusted with tough problems, at the very least we should reconsider what a “senior developer” really is.
Maybe the type of companies Eduardo has worked at, or the scope of his work, has left him thinking that the business solely values programming ability. But at my company, and at many other large companies, Sr. Engineers have a skillset that is nearly impossible for new graduates to have, because they aren't taught in college. In addition to technical prowess, these include:
* Operational best practices (how to monitor, deploy, and maintain systems)
* Project management (able to disambiguate a project and design it into achievable milestones with parallelizable work units)
* Historical context...like it or not, this is very valuable
* Knows how work happens across teams, such as best practices, pitfalls, technical strategies for minimizing coordination, etc.
* Can work and communicate clearly with stakeholders, PMs, customers, etc. to make the right product tradeoffs
* Know what matters and what doesn't when it comes to programming in a team setting, which is very different from solo programming
Almost all companies will value these skills, even if they have dropped the ball and don't have them listed as competencies.
> Yes, nobody wants to work with bad teammates, but refusing to acknowledge that there are great programmers who are also great teammates at the age of 22 is not the solution.
More than likely, those great programmers are recognized with salary increases. If they can't perform the tasks I listed above, they can be the best programmer in the world, but they don't belong as a Sr. Engineer. Which is fine, many people are happy not having to deal with all that "soft" stuff.