5 ms·
Dijkstra was a humble programmer. [1] Is he good enough for you? :) I do call myself a programmer. Some people prefer software engineer, architect, etc. I thin
by dinkumthinkum 12y ago
Dijkstra was a humble programmer. [1] Is he good enough for you? :)
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.html https://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340...
- sillysaurus3 12y agoThe strange thing about the real world is that your salary is almost completely divorced from your actual skill. Take a skilled person who never negotiates and the result is that they're paid less than someone many times less skilled but who negotiates. 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.
- rational-future 12y agoThis is far from the true most of the time. In my experience the only places where pay doesn't mostly depend on skills/smarts/effort are government and to a lesser degree the big monopolies/oligopolies like Comcast.
- sillysaurus3 12y agoWhat I'm saying is, if you're pretty sure you're more skilled than some of your coworkers based on whatever heuristics you choose to use, there's an excellent chance those less-skilled people are making more money than you if you haven't been aggressively negotiating your salary. 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.
- morgante 12y ago> In my experience the only places where pay doesn't mostly depend on skills/smarts/effort are government and to a lesser degree the big monopolies/oligopolies like Comcast. 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
- juliangregorian 12y agoI never understood why "developer" became the dominant nomenclature for professional coders - to me it's short for "real estate developer". Since I do design and optimize processes etc. I prefer to call myself a "consultant" rather than developer or programmer, which I always felt were too limiting and made clients think of me as the guy doing who-knows-what in the basement.
- r00fus 12y agoThe problem with "consultant" is the big-5 consultants out there who absolutely dilute the term as many of them don't know a thing about coding... even the ones billed e.g. "Enterprise Software Consultant" - could only be implementers and not developers.