HACKER Q&A
📣 woile

Where to go after becoming a senior dev?


Hello people, I was wondering how do your companies deal with the life cycle of developers. After you reach certain seniority, what else can you do?

FMPOV a senior is comfortable with:

- understanding (most of) the business.

- understanding (most of) the technology.

- relatively good communication skills.

- being able to deliver.

- writing nice code (this is subjective and possibly not empirically true, there are probably many seniors who do not necessary write good code)

It seems to me that many devs, after 3 or 4 years in a place get into a stagnation point where they look for new challenges.

What else can be done?

I think many companies (including mine) offer the "communicator" grow path. Where your role is more about talking/being a guru, but what if you are a good engineer and want to continue doing that?

Does anyone have ideas over this topic?

Thanks


  👤 emgo Accepted Answer ✓
Here some possible paths for you from the Senior Dev role:

Individual Contributor:

=> Lead or Principal Engineer => Staff Engineer

=> Architect => Senior Architect

=> Site Reliability Engineer => Senior Site Reliability Engineer => etc.

Management:

=> Engineering Manager => Senior Engineering Manager => Tech Director => etc.

Process:

=> Technical Program Manager => Senior Program Product Manager => etc.

=> Developer Advocate

Business:

=> Product Manager => Senior Product Manager => etc.

=> CTO at a startup (team of 10 or less)

Any time a Senior Dev comes to me saying they want to grow, I asked them a very simple question: what do you really want?

It's a simple question, but the majority of them can't answer it. They don't know what they want. They just see colleagues get promoted left and right and have FOMO, so they panic and think "I have to push to be promoted too, let's become a Principal or Architect!"

So first, it's about helping them figure out what they want: is it more autonomy, or a larger scope, or weight in the decision making process, or owning a full tech scope in a small environment, etc.?

Once you know what they want, then you can plan what positions they can start targeting, and from there you can identify which skills they have to improve and which projects they have to get involved in to build credibility and get hired for it.

From my experience, the skills they have to develop end up being the same regardless of the job targeted: interpersonal communication, politics, business acumen, negotiating, public speaking, and so on.


👤 eydwales
You have basically 3 way to grow: 1. You go deeper into tech and learn more about architecture (improve performance, reduce cost, reduce complexity...) 2. You go toward management and learn to code with more than 2 hands to deliver even more. This also implied hiring. 3. You go toward the business side and become product owner/manager or event sales.

What path to follow is a decision you have to make.


👤 karmakaze
Some other options:

- Keep doing all of that, plus level-up all your co-workers

- Learn other things, write about them

- Change areas: Front-end -> Backend -> Infrastructure or Tooling

- Lead (technical) projects with small teams

- Find companies with a concentration of amazingly capable developer to work with and learn from


👤 imhoguy
> I think many companies (including mine) offer the "communicator" grow path. Where your role is more about talking/being a guru, but what if you are a good engineer and want to continue doing that?

If the company is open for R&D and experimentation, then you can pitch an idea, which ideally aligns with company business, and get an approval to implement it yourself or with a bunch of teammates.


👤 onion2k
The 5 points you list are all about making good systems to solve the problems a business faces. The level up from that is a role where you're deciding on which problems to solve.

👤 logicslave
FAANG -> retire

👤 tsjq
get promoted. become a manager.