Earlier quoted context omitted.
> There are "law schools" and "med schools" to teach you all the knowledge required to become a lawyer or a doctor. Programmer now, gained a law degree in a previous life. Know lots of folks who studied medicine. The idea that med school or law school teach you "all the knowledge required to become a lawyer or a doctor" is laughable and a truly absurd statement. The sheer size of the problem domains these subjects co…
Do you have a throwaway email? I'd like to ask you a few questions about transitioning from law to programming. Thanks.
Is developer compensation becoming bimodal?
381–390 of 584 posts
Re: Is developer compensation becoming bimodal?
#382Yes, it is. And the example used in the article of chemical engineering reinforces the point. It ties into computer science quite nicely. To become a chemical engineer, you first have to complete the course work for a degree in chemistry. Chemistry as chemistry is an extremely modular subject matter; you can solve most problems in discrete steps in isolation. In a computer science sense, chemistry is about pure funct…
> In engineering, bimodal distributions are the sorting of people that naturally have the ability to easily reason about complex distributed systems with many concurrent moving parts and people that cannot. Increasingly, the market is discriminating on this characteristic and it is reflected in wages. What faith in the system :). The truth I think is "it's who you know" more than "what you know". The best paid engine…
Re: Is developer compensation becoming bimodal?
#383Earlier quoted context omitted.
I speak primarily from experience.
Are you including Canada in "offshore"? Europe? That is implied, from the comment you replied to. You may need to rephrase.
Re: Is developer compensation becoming bimodal?
#384One (semi-pedantic) quibble with the article: there absolutely are barriers to entry for programming. Programming is hard! These barriers may not be artificial, but they are real. To use a non-software example, there are barriers to entry to chip manufacturers and power companies even under anarchy. Fabs are tremendously hard to build. Power plants are extremely hard to build. Building up knowledge and skills about c…
Barriers don’t refer to how hard a discipline is skill-wise, they refer to how hard it is to enter the discipline. Law and medicine are also hard disciplines, but they have actual barriers to entry that cannot be surmounted by self-study. In this sense (which is the sense that the article means), programming does not have those barriers, no.
Considering that, unless you’re going to mount an argument that programming is objectively harder than those other fields skill-wise, it doesn’t seem productive to talk about an orthogonal “barrier” to entry that the other two also share. They are all difficult, so we end up in the same position.
Your comment here has spawned a large thread of people talking about how hard programming is (which frankly seems a bit self-congratulatory for this community, to be honest), but that’s completely separate from the core point being forwarded in the article; vis-a-vis, that programming is interesting and unique precisely because it has such a high compensation for a field without a central body limiting the supply (among other things). Law and medicine are also hard fields, and lawyers and doctors would be happy to explain why they’re difficult and have their own “skill-based” barriers aside from the licensing ones.
Re: Is developer compensation becoming bimodal?
#385One (semi-pedantic) quibble with the article: there absolutely are barriers to entry for programming. Programming is hard! These barriers may not be artificial, but they are real. To use a non-software example, there are barriers to entry to chip manufacturers and power companies even under anarchy. Fabs are tremendously hard to build. Power plants are extremely hard to build. Building up knowledge and skills about c…
Once you've become a highly paid software engineer it's very human to try and justify your status by claiming that programming is exceptionally hard and therefore your status/salary is justified. That's not to say that the job isn't hard... but lots of jobs are hard. Dealing with the constant loss of people around you if you work in a retirement home or hospice is also hard; but those jobs aren't rewarded equally.
With that skill, you don't even always need to know how to write software programs. Sometimes, you're better off delegating specific tasks to humans.
When someone hands you a problem like "make this dead elephant disappear" other people will still be scratching their heads after the programmer has already figured out
while( elephant.mass > 0 )
{
eater.TakeABite( elephant );
}
And they think to themselves, "I can vanish an elephant in two lines." Everyone else is still thinking about the problem in terms of tons. The chewing and swallowing is a trivial implementation detail.(Meanwhile, some other programmer will be at the north pole wondering what happened to the elephant they left in Cairo.)
Some people simply aren't able to deal with problems they have not encountered before, that are too far beyond their domain of comfort. They can learn, but they don't innovate. As long as such people exist, they will have to pay other people to teach them how to cope with changes in their environment. Software engineers get paid well because a lot of them can effectively solve problems without needing to be domain experts in anything.
Re: Is developer compensation becoming bimodal?
#386> The most common response I’ve gotten to this post is that we should expect programmers to be well-paid because software is everywhere and there will be at least as much software in the future. [...] Yet electrical engineering comp isn’t in the same league as programmer comp, [...] and there are more processors sold than ever before. What drives the demand for engineers isn't the number of things sold, but rather th…
> What drives the demand for engineers isn't the number of things sold, but rather the number of kinds of that thing. The variety of chips is still growing, but not proportionate to chips sold, because the numbers are mostly coming from the handful of chips used in servers and mobile devices.
This. What matters here is not ubiquitousness of software, but rather it's bespoke nature. Every major corporation is employing thousands of developers (either in house or via some outsourcing arrangement) to write and maintain software according to the company's unique needs. This is the most important driver of demand for developers, and what differentiates us from other technical fields.
Re: Is developer compensation becoming bimodal?
#387Earlier quoted context omitted.
If you want to know just how hard programming is, try teaching it to someone. Programmers have to remember a vast amount of domain knowledge. Consider the basic task of choosing where you are going to store some data, well first you need to know which options exist and there's dozens of them (do you want Postgres, SQLite, Redis, LevelDB, ..?). Then you need to know the strengths and weaknesses of each. And I hope you…
> There are "law schools" and "med schools" to teach you all the knowledge required to become a lawyer or a doctor. Programmer now, gained a law degree in a previous life. Know lots of folks who studied medicine. The idea that med school or law school teach you "all the knowledge required to become a lawyer or a doctor" is laughable and a truly absurd statement. The sheer size of the problem domains these subjects co…
Why in the world would that be insulting and who is it insulting to? If anything it's a reflection of how immature the industry is and how computer science degrees have minute overlap with software engineering.
Re: Is developer compensation becoming bimodal?
#388Earlier quoted context omitted.
Not at all denying the existence of low quality programmers in the US, but generally it seems like there is a focus on quality that does not exist for the majority of offshore developers, just about churning out code as fast as possible.
I feel like I miss a part the meaning of "offshore" here, and I suspect it's more cultural than a linguistic problem. I mean, technically, German or Japanese developers working for US companies are "offshore" too, but I don't believe you're accusing them of "churning code without regard to code quality"? Oh, and also, both the previous paragraph and your comments in the thread are (edited:)nationalist[1]. Not that it…
Nor do I think my nation is the greatest, and all the others suck. So I don't think it counts as nationalism.
Re: Is developer compensation becoming bimodal?
#389Earlier quoted context omitted.
As a manager I’d probably advice against picking programming unless you love it. That is the dirty little secret of our industry. You need to do your day job AND on your own time, keep your skills up to date, and/or work on open source and/or write a blog or something. There was a post on there the other day on how keeping up to date with k8s is a full-time job in and of itself, well you need to do that - and a bunch…
> You need to do your day job AND on your own time, keep your skills up to date, and/or work on open source and/or write a blog or something. Not just that! Don't forget about attending a dozen conferences a year, doing talks, and local meetups.
You don't really need any of that.
Ultimately, you just need to pass the interview.
Sure conferences and tech talks might help give your resume some more visibility and likeliness of getting hired. Similar to having a couple toy projects, but many top tier companies adhere to a set of standards in their hiring process where they won't let you bypass their DS&A interview because you gave a tech talk.
Re: Is developer compensation becoming bimodal?
#390Earlier quoted context omitted.
If you want to know just how hard programming is, try teaching it to someone. Programmers have to remember a vast amount of domain knowledge. Consider the basic task of choosing where you are going to store some data, well first you need to know which options exist and there's dozens of them (do you want Postgres, SQLite, Redis, LevelDB, ..?). Then you need to know the strengths and weaknesses of each. And I hope you…
> There are "law schools" and "med schools" to teach you all the knowledge required to become a lawyer or a doctor. Programmer now, gained a law degree in a previous life. Know lots of folks who studied medicine. The idea that med school or law school teach you "all the knowledge required to become a lawyer or a doctor" is laughable and a truly absurd statement. The sheer size of the problem domains these subjects co…