Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

51–60 of 869 posts

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

#51
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

Embedded opportunities have been slowly shrinking for years. For whatever combination of reasons, a lot of employers think that embedded work is easy or otherwise doesn’t require a large budget.

It’s increasingly bizarre to get a well-designed IoT device with a very polished mobile app and web UI, then struggle with hardware factory resets and firmware upgrades because the embedded side of the product didn’t get the same level of attention.

It’s like embedded somehow became an afterthought in the industry. Perhaps because it’s the only part of the system that doesn’t have a highly polished UI layered on top of it? Over the past decade I’ve witnessed multiple companies over focus on anything that goes well into slide decks (UX mock-ups, animations, etc.) or generates vanity metrics (number of backend servers, requests per second to the cloud) while ignoring anything that doesn’t have a visual pop to it (embedded firmware)

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

#52
post #19

Earlier quoted context omitted.

Isn't it common for C++ devs in finance to make seven figure salaries?

Not really no, 7 figure roles are few and far between

but definitely 6 figure - i know i was, and that's going back years

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

#53

> People are seemingly scared away from the language by a terrible stigma: the notion that it is a legacy program. My personal experience: Universities (in Germany) simply stopped teaching C++. Most of it is now Python or C#.

And thats right choice

Why students should waste their sacre time on mess of c or cpp world where even basic things may be crazy like strings

Stop wasting peoples time on subpar technology and let them learn algorithms, ds and foundational knowledge instead of quirks and pain

Go, python, c#, etc. are way better for students

Later teach them Rust

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

#54
Question: what kind of skills do financial companies typically look for from C++ devs?

Whenever I hear “C++ expert”, I don’t know what that means. Are they masters of the STL? Are they part of the “C with classes” church? Are they an unhinged template meta programmer? Are they a major gcc/clang contributor? Did they co-author a part of the language spec?

Or are they just some dude with 7 years of experience working on a single C++ codebase and the subset of features that happens to be using?

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

#55
As a talented C++ developer... yes there is a dearth of talented C++ developers.

I've been to several C++ conferences. Even there, many of the engineers end up learning "new" things that are IMO basic concepts that have been around for years.

I recently went through a hiring phase for Senior C++ engineers and most of the applicants were familiar with old tech. It was really disheartening to me to realize how many "senior" C++ engineers weren't senior in real C++ experience. Even one of the hires ended up using a C style array in their first commit instead of std::array.

It's really frustrating and makes me wonder if perhaps I'm in the wrong job: maybe I shouldn't be a software engineer, maybe I should be a software educator to teach modern concepts and un-teach ancient concepts. Indeed, a lot of the ancient concepts directly contribute to the modern world's problem of software safety.

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

#56
post #27

> People are seemingly scared away from the language by a terrible stigma: the notion that it is a legacy program. My personal experience: Universities (in Germany) simply stopped teaching C++. Most of it is now Python or C#.

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?

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

#57
> Hickling pointed to Java, which has long “seemed to be replacing C++ itself,” but hasn't.

This is inaccurate. Java completely ate C++'s lunch in the enterprise space back around the turn of the millennium. Java doesn't need to continue to eat into C++'s marketshare in other domains, because it has more than enough mindshare to sustain itself (there are more Java programmers than C++ programmers), and its very existence keeps C++ from reasserting itself in the enterprise space.

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

#58

There's lots of C++ programmers out there. But they're bottled up in FAANG, I think. So you have to be able to compete with that. Working at Google is on the whole a lot of C++. Major parts are moving to Go, certainly. But there's absolutely giant code-bases of pretty cleanly written C++ services, and most Googlers are quite proficient in it and there's whole teams at Google that work on improving C++ standards and t…

From what I understand, Google is really about a crippled subset of C++, that people jokingly call "C+-". I ran a C++ shop for 25 years. I used to program in it, but stopped, many moons ago. The new C++ is a huge change from what I knew. I am expecting to see a lot of hate for the language, in this thread. Regardless, it is a very powerful language, and it is not for the faint of heart. I attended a Swift conference,…

All sane C++ codebases must use a defined subset of the language. Google's is one that works for them, with some pretty strong standardization. It's a good set of compromises. But you won't get far programming in it if you don't know the broader semantics of the language.

I didn't do C++ from about 2003 to 2013. When I came back I was delighted. It's so much better.

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

#59

Earlier quoted context omitted.

You may also look into Kernel Programming for a lucrative systems programming career. It is more C and low-level oriented though.

Interesting, what types of companies pay well for kernel programming?

not many, I did it, jobs are scarce, most of the time you port a new version of CPU to the kernel, or add a few device drivers, the industry does not need a lot of those engineers, and per my experience, not compensated that well either. these days many kernel programmers work for big companies.

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

#60
post #27

> People are seemingly scared away from the language by a terrible stigma: the notion that it is a legacy program. My personal experience: Universities (in Germany) simply stopped teaching C++. Most of it is now Python or C#.

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?

But there is! Use local variables and value semantics. Use references to borrow stuff. Never touch new or delete. Use smart pointers when need an owning pointer (rare). Anything beyond that: ask next in seniority to supervise. That should be enough to live a happy C++ life for a junior.
Post reply on HN