But working your ass off is a part of it. Without that career progress is hard to come by.
What matters is working on a project that your manager thinks has an impact.
- Working on any project that is going to be moved to a different team soon is not impact
- Any project that your manager's manager does not care about == no impact. Helping junior team members without making it visible and part of your dev goals is not an impact.
- Fixing bugs, dealing with production issues, and handling incidents are not impacting but the baseline.
- So having alignment with your manager about what impact is and how they measure it is a super important part of it.
There are things like
- Frequently changing managers and what each new manager thinks is impact are clearly different. The committees and companies want it to not matter but the real world is messier than that. If it was unbiased and only based on quantitative assessment we would have robots, not managers.
- Changing Projects - experiments fail, product directions change, and if unfortunately, you are stuck in a project that had a year for failed experiments you have no impact, but clearly helped the company.
- All of this is nonsense when considering a promotion to staff or principal because it is part of the job description to deal with uncertainty. But an Eng2 to Senior the limitation is the scope and opportunities to have an impact on certain things like what gets into next quarter delivery.
So what an engineer at levels lower can do, or these are things I think would have helped me
- Start writing the promotion packet when you join the company.
- Review that every 2nd week with the manager.
- If you are not able to write something that is impactful and contributes to promotions for two weeks we have a problem.
- Account for the fact the system is not perfect. Making corrections along the way is important.
If I am ever a manger. I think I going to make this an agenda item for every 1:1.