Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

291–300 of 869 posts

Re: The pool of talented C++ developers is running dry

#292
What do these presumably highly-paid C++ developers work with exactly? And what is their background? How much do they make in London?

I have a degree in mathematics, am ~36 years old, but only worked as a web dev.

I'm thinking about taking courses in mathematical statistics or physics. I want to "get out" of web dev. This type of job would be a huge step up for me. Just unsure how to begin a career change...

Re: The pool of talented C++ developers is running dry

#293
post #9

Because Python pays more. Or Javascript. Or Ruby. More demand, more salary. Apart from finance, pay is lower than web languages. And finance is small. Embedded systems programming, that also uses the language, pays 30% less than web jobs from my last job hunting period. Employees may be leaving the embedded space (and C++) for web tech because of this. This is the feeling I get from my local job market (western Europ…

Yes, the embedded space pays terrible, and the employers don't seem great on the whole. When I was at Google I got to work on embedded stuff and really liked it; but I was getting a Google salary. When I left Google I pursued IoT and embedded jobs a bit and while I was not expecting Google level compensation at all, I was astounded at what was going on there, pay wise. General software eng back end jobs pay better. T…

>EE salaries are sadly lower than they rightfully should be.

Profit margins of an EE will almost always be lower than profit margins of a software engineer. A team of software engineers can quickly scale to selling to millions of users (and collect nearly 100% of the resulting revenue as pure profit), whereas a team of EE's cannot a) scale their customer base as quickly, since scaling up manufacturing takes time and b) realize a profit anywhere close to 100% of revenue, since much of their revenue goes towards manufacturing and distribution costs.

In other words, the marginal cost of selling one unit of a physical product is always nonzero, whereas the marginal cost of selling one unit of software is often (very close to) zero. That differential goes towards higher salaries for the software engineer.

Re: The pool of talented C++ developers is running dry

#295
post #25

Rust should make the pool of C++ developers decrease exponentially in the coming decades. There's little reason to code a greenfield project in C++ unless it involves leveraging some niche libraries, and those niche libraries will eventually have Rust equivalents.

Claims like these always reduce C++ to a systems programming language, neglecting the fact that is primarily used in computationally expensive projects in which Rust cannot be a valid substitute.

Re: The pool of talented C++ developers is running dry

#296
post #240

Earlier quoted context omitted.

Ah yes I used to work at a california company as c++ developer. There was no automated test whatsoever. QA department was just manually clicking things on a client that would connect to my c++ thing. When I wrote a couple of unit tests I got told off because I was wasting time not doing features.

When was that? I am so glad that for the past 5~6 years every contract I have worked has had unit tests and for the past 10~12 every place has at least accepted their value. The last time I actually had to argue for unit tests was in defense contracting and not for the team I was working on. Some idiot at a lunch-and-learn community thing tried to claim there was no short term gain from them and we had defined short…

If there are no unit tests, you can intentionally introduce some bugs, so you can have some easy fixes next sprint. Rinse and repeat.

Re: The pool of talented C++ developers is running dry

#297
post #9

Because Python pays more. Or Javascript. Or Ruby. More demand, more salary. Apart from finance, pay is lower than web languages. And finance is small. Embedded systems programming, that also uses the language, pays 30% less than web jobs from my last job hunting period. Employees may be leaving the embedded space (and C++) for web tech because of this. This is the feeling I get from my local job market (western Europ…

> Because Python pays more.

In the extremely underpaid start-up world?

C, Java, C++, Kotlin, Swift, etc - IIUC pay MUCH better and are more in demand at companies where you really make good money as an engineer.

Re: The pool of talented C++ developers is running dry

#298

Earlier quoted context omitted.

"Programming is just typing" was a typical management refrain when I was in the embedded field (more properly, now I'm adjacent to it). It was frustrating. Computer scientists and programmers aren't Real(tm) Engineers so they don't deserve as much money. They can't be in charge because you can't have engineers answering to non-engineers (ie, very few leads let alone managers coming from the software side). Which lead…

It might also be that the management chains in embedded are likely former engineers or EE people. In Web you get a lot of management interfaces where the boss can't do their job: that's the perfect recipe for high pay. In embedded and other non-software engineering but engineering firms, the management is typically engineers that CAN do their subordinates jobs, they just don't want to.

That's what I was getting at with this:

> They can't be in charge because you can't have engineers answering to non-engineers (ie, very few leads let alone managers coming from the software side). Which leads to a culture that's overly hardware centric with insufficient leadership/management understanding of what software actually entails.

In hardware-centric orgs, software developers are a small step above technicians in their pecking order, sometimes below. The pecking order itself is annoying enough, but when you switch from designing your own ASICs to buying COTS dev boards and primarily only adding software to it, you're not really a hardware company anymore. But it'll take another generation for them to realize it, or a severe crunch if someone comes along and realizes that they can pay embedded devs $200k+ and eat the lunch of half these companies.

Re: The pool of talented C++ developers is running dry

#299
post #27

Earlier quoted context omitted.

Having recently learned C++/C.. I don't see why it would be taught as a first language outside of specializations. The gains from C/C++ coding are vastly outweighed by the costs. The reality is that there is no good, agreed upon standard in C++ for how to manage memory... how would you teach this to junior engineers at university?

I learned programming in the 90's using C++. When someone expresses this intent I always ask the same question. Am I a supergenius or are you mistaken?

One could learn in C++ using a variety of methods… including the ignore memory management variety.

The question is why? For a student learning dfs for the first time or hash tables/queues etc. python will be much easier to learn. Java/rust/go will likewise be easier if you want to talk about types.

Re: The pool of talented C++ developers is running dry

#300
post #9

Because Python pays more. Or Javascript. Or Ruby. More demand, more salary. Apart from finance, pay is lower than web languages. And finance is small. Embedded systems programming, that also uses the language, pays 30% less than web jobs from my last job hunting period. Employees may be leaving the embedded space (and C++) for web tech because of this. This is the feeling I get from my local job market (western Europ…

> Employees may be leaving the embedded space (and C++) for web tech because of this.

It's remote work.

Remote work is basically forcing ALL software shops to pay more money. If you're smart enough to program C++, you can program ANYTHING.

Let's stop calling it a labor shortage and call it what it really is--a salary shortage.

Post reply on HN