I do call myself a programmer. Some people prefer software engineer, architect, etc. I think it is very contextual.
1. https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340...
I do call myself a programmer. Some people prefer software engineer, architect, etc. I think it is very contextual.
1. https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340...
So it's not necessarily about "are you good enough?" but rather "how much do you want to get paid?" And once you focus on the latter question, you realize that skill is a tiny portion of it. Your salary is mainly dominated by how much time you have to shop yourself around, how quickly you can get several offers from different companies, and how long you can afford to say "no." The last one is very important, because if you get through an interview stage and are unable to say "no" if you need rent for example, then you'll end up with a low non-negotiable offer. You can bluff, which is always worth attempting since I'm not aware of anyone who lost out on a job offer for bluffing, but if their initial offer is $X, and you say "no, $X + $Y please" and then they say "$X + $5k is our final offer," then your options are to accept or to shop. And if you have no time left to shop around, then you're forced to settle. That's how you end up with a low salary.
All of this is obvious when someone explains it like that, but the trouble is, few people talk about stuff like this. You can spend your time from college to career without even really examining any of this, to your personal detriment, and you won't even realize it. As Patrick said, you can easily get +$5k at your next job with a minimum of effort. If you have time to shop around for several months, then you can get +$40k or more in the right circumstances.
Sorry for the ramble. These are just some unintuitive things which were surprising to me.
The cool thing is that negotiation skills are a hundred times easier to learn than programming skills. A few weeks of effort will net you thousands or tens of thousands. The effects are cumulative over your life, so the sooner you start, the better.
Your experience is definitely different from mine them. Even in startups, I regularly see developers with less skill being paid much more than their better colleagues merely through negotiation.
The key determinants of salary, in order of importance, are:
1. Negotiation ability
2. Years of raise accumulation ("experience")
3. Skill