Ask HN: C++ Dev Jobs Are Rare, Aren't They?
Apart from game companies and the computer graphics scene, I don't find many C++ jobs at all.
Most are either enlisted for languages such as Java, C#, JavaScript or Python.
If you find a "C++" keyword in a typical job listing, it will be among a list of other high-level languages. And in my experience, you'll soon find out that it has nothing to do with C++ programming once you got past the interview process.
Embedded development may seem as a last frontier for C++, but no, you won't find it there either most of the time. You'll rather find something C-related there. Furthermore, someone who interviewed embedded developers told me that those types of developers tend to be bad software engineers or C++ programmers for some reason.
C++ jobs seem to be rather inside a niche market and many companies seem to have few use cases for it.
25 comments
[ 3.1 ms ] story [ 59.6 ms ] threadBut this is somewhat a niche indeed.
Webscale tech companies (definitely Google plus almost certainly Amazon, Facebook, Netflix, etc.), traditional software companies (like Microsoft), aerospace and defense, finance, robotics and automation, automotive, are a few industries that come to mind off the top of my head.
Embedded is definitely being done in C++. Gaming -- Unreal Engine still uses C++ as I recall. HFT has been mentioned already. Robotics, automation. Lots of stuff is still done in C++ and not going to leave it any time soon.
This is how it seems to be for most domains that aren't doing your average business web application development.
It is easier to learn C++ if you know C, but it's a good point, they're not the same languages, and have diverged greatly over the years.
I would understand that back in the days of C++98, but C++11 and newer are really very different languages. Proficiency in the earlier language specs doesn't guarantee any such in the newer specs -- as I learned when I came back to dev work in C++ and had to update my skills quite a bit working in C++11 (I learned C++98 long ago and had worked exclusively in that for quite a while).
The general rule, with many exceptions, is that in lowest level embedded you see C with a healthy sprinkling of assembly, in higher level embedded (programs with guis or that just involve a lot of component interaction and interfaces) you tend to see C++
FYI, for a nice sampling of what C++ jobs are out there you can look at the C++ jobs posts at Reddit’s r/cpp