What is a Senior engineer?
Making others around them better.
Management-first instead of feature-delivery as a priority.
Look at the team/business and do work that has a greater impact.
You should be able to unblock both yourself and others.
Individual contributions aren’t so important anymore.
Senior engineers figure out what has the highest priority and work on that.
Good Senior engineers are multipliers of the team.
Senior engineers share knowledge and mentor others.
Bad Senior engineers are blockers on their team. They’re bottlenecks because they’re not sharing knowledge.
Software engineering & people
Software engineering is a social activity.
Software engineering is more about people than tech.
The software we craft mimics the organization.
Extreme Programming talks about changing the way you work as a team to become more effective.
Unblock bottlenecks of seniors by introducing training and sharing knowledge in the team.
Path after Senior
Many make the mistake of not having enough technical experience before becoming a Senior.
Next challenge after Senior is important, so you're growing and not finding yourself stagnant.
The different paths
Individual contributor (IC) path. We all start here. Beyond Senior this would be Staff, Principal etc.
Management track where you start off as team lead or engineering manager.
Architect is another path.
None of the paths are forever. You can go back to IC after management.
Exploring what you like isn’t wrong.
Insights and differences
You will need similar skill sets in each path.
Ownership.
Leadership.
Communication.
IC track is more tech focused.
Management is more people, so less tech focused.
Focus on soft skills regardless of each path.
Management
Managers spend a lot of time in meetings.
It’s important to stay technical. You need to be connected with the craft to help your engineering team effectively.
When you find time, make sure to code, pair code, do code reviews etc.
If there is something you’re passionate about that the team needs, it’s a good opportunity to build things for the team.
Managers lift others up, assign ownership, delegate work and focus on people and business.
IC track (Staff/Principal)
As you grow in IC, it’s about having more impact on the entire organization.
Staff engineers find ways to help the entire organization.
To get to Staff level, you need to be the one driving. You need to be proactive and find/create work that will get you promoted.
Examples:
Build a tool that's going to help all departments.
Work on something that's critical for the system, something that has a huge impact.
Feel lost?
Look around yourself, and develop friendships with other departments.
Marketing, sales, customer support and figure out their main problems.
To create or find work that will have a huge impact, you need to figure out the problems people in the organization have.
Talk and be open with your manager about your goals. A good manager will find scope for you.
It’s super important to be proactive. Don’t count on your manager to find scope that will get you promoted.
Don't be afraid of exploring or making mistakes, leadership values that!