4 ms·
Here’s a career ladder from Mozilla that’s been posted a few times: https://pbs.twimg.com/media/DoWyoObUcAERDNk.jpg https://pbs.twimg.com/media/DoWyoObUcAERDNk
by thebigspacefuck 6y ago
Here’s a career ladder from Mozilla that’s been posted a few times:
https://pbs.twimg.com/media/DoWyoObUcAERDNk.jpg https://pbs.twimg.com/media/DoWyoObUcAERDNk.jpg
In my experience, you start out on your team and you learn the ropes. At some point you notice your code base is a mess, application is designed poorly, your team lacks any standards, there’s no tests, bugs get shipped and outages happen, and you start speaking up. Hopefully you do this in a productive way where you have a plan for gradual improvements (ie don’t just suggest rewriting everything in Clojure), you prioritize effectively, people listen, and things improve. At some point a greenfield project comes your way and you use your past experience to make sure these issues are addressed from the get go and build a solid application with appropriate tradeoffs. Above all you need to get shit done because that’s what the business is going to care about. Hopefully you work at a place where you get at least 5 of these greenfields in different technology stacks and build some intuition on what the big tradeoffs are to be made and how they affect the bottom line. At this point you have some experience and become more valuable in discussions other people are having about their designs because you’ve been around the block a few times and know what issues they might run into. You might start designs and pass them off to be worked on. Then you might get to the point where you’re able to design a group of systems and the interfaces between them. At this point there’s usually a crossover between management and engineering because you need to have soft skills, but you also need your technical skills to be as broad as possible and sharp as hell. Otherwise people are going to notice your incompetence and you’ll get shitcanned or demoted. I’ve been on calls that got escalated to the VP of Engineering level and it just blew me away how skilled they were at stuff they probably haven’t touched in years. Hopefully you get to experience that some time and see the kind of level you need to get to. In the day to day it’s a lot of that, jumping in where needed, coding prototypes and breaking things down for junior people.
A real factor in your progress is going to be your manager and organizational structure. If you have a good manager they are going to get you more opportunities. Otherwise you’ll end up walled in on your team and your aspirations will be unfulfilled. If you feel like you haven’t progressed in a while, it’s time to look around for other opportunities.