What was your experience climbing the career ladder in tech?
I've seen people call themselves "senior" after 3 years on the job, other become CTOs in the same time, and others still have a senior title after 20(!) years in the industry yet have a fuckton of technical experience.
I've heard that they are all just titles and opinions from "if you don't have the technical skill you can't call yourself a senior", to "senior and staff are just a feeling, principal is the actual senior" and "staff? above senior? we call that manager".
What's your story? Is there a ladder? Do you feel like you belong on it? Where are you on it? Does it make sense? Did you see major bumps in salary? Did titles count at all?
I don't think titles directly transfer between companies, and yet the industry allows it. It's a very useful tool for advancement.
Time on the job does not equate to skill. Some jobs force you to figure shit out that other jobs simply never expose you to. Other jobs expose you to lots of busywork and that isn't going to make you a better engineer either.
I've met senior engineers with 3 years that are significantly more useful than senior engineers with 10 years. Individual motivation and willingness to learn matter the most to me.
I have used the ladder to my advantage and advise others to do the same. It's a game, you don't win by not playing.
For better or worse, social skills are as important as actual tech skills. This is scary for nerds whose brains can't socialize properly. I've seen mediocre-skilled "leaders" lord it over better workers using sophisticated bullying and manipulation.
As important if you want to get higher positions and partially also for more money. But if you "just" want to do stuff you like it is fine.
This may be true on some corners of the industry, but at the more competitive end (both in terms of competitive pay, and a competitive pool of candidates)... I believe it's common to relevel on hire. I've seen folks go from director to senior and from senior to junior at my org. The candidates being offered those seemingly big "demotions" often seem to be somewhere between unphased and enthusiastic about the change, presumably because the compensation package we offer at the lower level beats what they were getting with an inflated title and because they know their inflated title is nonsense and they're frustrated with the other aspects of organizational dysfunction that accompany title inflation at their current company.
What you say is real, and sometimes a promotion in one org can help bridge you into an org that would have been hard to get hired into as a junior, or harder to get promoted in. It's not without risk though. All things being equal, I'd much rather spend my time working on a strong team and learning a lot and being challenged than to be in a weaker org that's handing out inflated titles. Getting gud isn't a guarantee of advancement, but it's at least as reliable over the long haul as title inflation.
Definitely. I realised this too late because money wasn't important to me when all I wanted was an interesting challenge. Things changed when I heard how much the contracting company was hiring me out for (I was earning ~40% of that) and my rent doubled. Some countries are shit with titles though and the technical ladder ends at senior. To go higher means being coming a team leader in those countries. Thank you COVID for making it possible work remotely across borders. ~100% salary increase and new title.
/thread
At some point climbing the career ladder just means taking on vastly different responsibilities. If all you want to do is code, there isn't always the career ladder you might know from big tech. It just ends at senior.
Which doesn't mean that your career end there, your experience is just measured by years of experience and what you achieved, not some title.
Sometimes the only winning move is not to play
You definitely described it perfectly: total chaos.
Titles are just "how valuable you are to that team".
Every team has different needs, so a senior engineer in one team might be a junior on another team that has a totally different set of needs. There is also no standardized titles, so it mostly is just "whatever they want to call it".
This fits my experience. Wasn't sure if I was hallucinating or living in a bubble. Had the misfortune of working with a very, let's say confident, junior who convinced the recruiter they were senior. It did teach me to be a bit more confident in selling myself.
I was a fast track developer. Was senior in 4 years but involved a few job hops. Many companies require x years to get to senior but for some reason that goes out the window for new hires with talent.
It wasn’t until managing people that it became obvious why I fast tracked and others don’t. There is a huge difference in our industry. I like to use the analogy of sports. You have multiple levels recreational, college, and professional. As you get better you move up but there’s a gate to moving up that some never achieve maybe genetics maybe effort. The difference is it’s all mixed up in programming there’s no divisions you can have a 15 year programmer stuck at rec level and he’s programming with a 3 year college level athlete that’s running absolute circles around him. The productivity gap is huge. If you manage to get a pro level programmer on your team he’ll make the other 3 rec level programmers look like a waste of money. It’s like the elite runners who complete a marathon in around 2 and a half hours and it’ll be another 4 to 6 hours before the slowest finish. That same gap is in the programming world it’s just not as obvious.
So all that said my advice is to find what your skill is. If you seem to be outperforming your elder peers you’ll benefit from aggressively asking for raises and promotions as well as making a job hop every few years if HR stagnates your pay for the dreaded “years of experience” excuse.
You might also eventually get promoted to a point where you find yourself not excelling. This was my experience in management. I became a manager too young or maybe I’m not built for it. After a few years hating management I went back to programming as a consultant because I realized I was on that upper side of the skill differential, I enjoyed coding and now armed with that knowledge of where I am I can ask for even higher amounts of pay exceeding management pay.
Our beloved Peter Principle. I know management is not for me through experience too. Any job description that includes it as part of their role description regardless of title (since those vary so much) is rejected. Europe is only just beginning to understand that management isn't the end all be all, and that forcing it upon people will either make them leave, unhappy, less productive, or in rare cases actually enjoy it.
Some people like myself also just want to stay as a senior dev. Senior dev is a valid terminal position IMO. It pays a sht load already so it's not like I need way more money. If you're goal is to literally maximize money and nothing else then yeah the obvious route is to transition to EM. But I would be miserable if I don't get to write code at my job so I'm sacrificing a bit of money for way more happiness and fulfillment on the job.
Thanks for sharing! How do you feel about the transition from individual contributor to manager? What made you switch? How do you deal with the new responsibilities? How do you deal with the fact that you have to rely on others to get the job done rather than doing it yourself?
I should start by saying I was a middle manager in a large corporation. This may be a different experience in smaller settings.
I think the transition to manager didn’t live up to expectations for me. I knew I would be committing less code and helping clear roadblocks. What I didn’t expect was the bureaucratic catastrophe that is HR and upper management. Often I wasn’t clearing roadblocks as much as insulating my team from terrible knee jerk reactions from above. In example productivity is down let’s bring everyone into the office post Covid. Productivity was not down for my team but going back was the start of it. My top level performers I struggled to hang on to due to HR in acting strict requirements for promotions. Senior needed 7 years and other random rules. That coupled with some not wanting to come in. I remember the most impactful being losing a 4 yr experience programmer who outperformed every senior I had due to those rules.
There were parts I enjoyed. Helping the juniors grow and the surprises I’d get from that. I learned very quickly that a devs initial skill coming in from college or life transitions was not a good way of judging their maximal. I’d have devs come in that I thought no way they’d be a top performer to a few years later being shocked at how good they were and how they flew past their peers. It made the inevitable loss of them more painful. I knew my shooting stars would see better pay and advancement elsewhere.
I really had no problem with the transition from contributing to relying on others. I missed contributing and was good at it but I knew it wasn’t my role. I knew from past experience a manager didn’t know enough about the day to day code to give fine grained suggestions on how to write code.
I’m currently a “Principal” which is the next level up from Senior. Honestly I’m pretty happy with my current title because it’s a pretty good balance between pay and responsibilities. The next step up is also fine with me (Senior Principal) because that means another pay bump, but it will probably where I’d want to stop advancing.
Like a lot of people, the goal is to be paid the highest possible with the fewest responsibilities. I’m not interested in taking a managerial/supervisory career track because that just adds responsibilities and politics. I’m happy being an individual contributor so I just need to worry about my own work and that’s it.
I'm fifty, so I started my career in a different world. I hired in to a small consulting company. Our business was selling IBM systems and development was just a required value-add to that end. There were three of us when I hired in, knowing nothing. I was computer savvy but only a hobbyist programmer.
In the course of the next year, both of the other developers left the company, leaving me to grow and learn for myself. After 5 years I was promoted to senior. I had nothing but time in and there was no one to evaluate my skills or mentor me. I stayed another 4 years until the changing business model to IT as a service forced me out.
I was now a ten year senior with an unrelated two year degree and no knowledge except what I'd uncovered myself in a dying niche. I tried owning my own business but I'm not cut or for that. I lucked into a large project that was half the old stuff and half Java. I was there for a year or two when that business failed and I was spun off into a new consultancy.
One project had me commute back and forth to DC every other week. I liked it so when a government contract reached out to me with an opportunity, I took it and moved my family. This was my first time being part of a long term team and this is where I learned everything about that side of things.
Fast forward a few years, a move back home, and a few jobs, and with 24 years of experience I just accepted a position as a tech lead which I think is as far as I ever want to go in my career. I'll put in a few years and look for a better contract or non contact position because this current company is shitty.
Title has never mattered in my career until I moved out of the SMB market into big business where title is tied to promotion path and salary. Most of them were totally arbitrary like when every one of twenty developers were just software architects. But now it's important at least in the positions I've been seeing and taking.
That's an interesting career, thanks for sharing. Another confirmation that titles really don't mean much in tech. Now I'm actually curious where titles do mean something. I imagine in a science career and other engineering fields maybe? Can't just invent new ways to do things there as you're bound to the real world.
I once worked with someone with the title Vice President of Awesome. We worked for a consultancy where you could just pick your own title.
In my short time in an actual tech company, I was baffled at the amount of cockiness. It was a startup though.
I was easily the most senior person outside of management, yet others got positions in management from the start. I did have management experience and significant success but I lack the ability to sell it.
When I complained that this isn’t what I signed up for, they pretty much told me to suck it up.
I‘m rather exceptional at what I do, yet my neural configuration makes me unable to play social games so I decided to not go on and play them. Currently helping my wife in her small company.
Your “neural configuration” is the reason you weren’t promoted?
I think you fit right in.
I find pulling things out of context rather rude to be honest.
Maybe ask questions if something strikes you as inaccurate or unprobable.
Dude, what you wrote is cockiness^cocky
The title mean very little. As long as my wages are going up, I don't care if a company want to call me even a junior developer
I've been coding a pretty long time. I've been the boss a decently long time. My combination of pay and benefits is good. My team is exceptional.
It's chaos.
I always end up being "the boss", because otherwise someone unqualified will do it and that annoys me.
I'm "the boss". I do political bullshit so my team doesn't have to. I get some extra money for my trouble. I still code because I'm stubborn and no one can really tell me what to do.
No.
Several times, often 20% without changing jobs and usually at least 40% when I bother changing jobs. I'm still underpaid, though.
I'm usually offered "pick your title" within three years of joining an organization. Before that it's usually just "senior developer", or "manager of development".
Titles are mostly meaningless for a programmer after they've had senior for more than 3 years.
Titles are what they give out instead of money. For new programmers that has value. For the rest of us, a lot of us just say "I'll take cash. Thanks."
My first tech job ever, I was a senior developer after 4 years because I was the primary for a lot of projects.
When I jumped to another job, I kept my salary but they used levels. So I wasn't "technically" a senior there, my level was higher than regular devs, but lower than all the experienced devs.
Then I jumped jobs again, higher salary and then I became a Individual Contributor. IC are also ranked in levels. So I was still higher than regular devs, but I was not a senior IC.
That for some reason lead be back to team lead, and now I run a entire department of 30 people. I'm still not a senior dev officially. I'm dept lead, which means I'm mostly organizing people and code, have team leads report back to me and jumping into solve critical issues.
I've been programming for almost 14+ years? So I guess I'm a senior developer, even if I was only given that title in my first job.
The meaning of titles varies wildly from company to company. Most companies tend to define climbing the tech ladder as moving to a management position, which is something i abhorr. For be it's better pay, more autonomy, less bullshit from management. Not less coding. But alas, they're threatening disciplinary action if people don't start going to the office at least twice per week starting next month, from the current twice per month.
Same. I can't remember where I read it, but the theory why silicon valley companies succeeded is because the role of managers was to clear the way for technical teams / the technical division. The latter were given the freedom to explore and produce results. It feels like most companies come from the old school of "managers control, other execute" and believe success is due to their decisions.
Sounds like it's time to dust off the CV. Good luck
Just know that title and salary does not always follow each other. I know many software engineers that are maybe only senior of title but hast the knowledge and responsibilities as a principal engineer - often with a salary higher than most other principals. It's all about proving your worth - not about what your title claim about your worth. In many companies with offices in India they invent a fuckload of faux titles for the Indian employees - why? Because it is considered a failure of you do not get a new title every 2-3 years in IT in India. No extras comes with the title - just a word on the title line.
There's definitely a ladder, for me it was constant work, rather than hard work.
Very relevant read: https://staffeng.com/