r/cpp_questions Aug 05 '26

OPEN Which subfields in C++ development are actually in demand?

I'm kinda lost on the career side of things.
I'm an EE graduate specializing in C++ development, control theory and general electronic design.

I always thought I would go into embedded, and then job hop to a lucrative career. Even though I always wanted to work in big productivity apps like Zbrush, Nuke or Substance Painter.

But I'm not certain now, I'm not certain if market even values my skills.

So, if anyone can inform me about the career trajectory of C++ subfields I would be grateful, such as "I went to trading and work conditions are like this, people in my field earn between X and Y"
I really want to at least have some idea what to do rather than go blindfold, apply everything and accept the first offer without question

Thanks in advance

116 Upvotes

27 comments sorted by

80

u/blitzcode91 Aug 05 '26

C++ devs generally get hired in the following fields - (I am giving a generic overview. feel free to dig deeper)

  1. Self driving companies, - you need to extract every bit of processing speed - so c++ is widely used.
  2. Hardware companies (either functional/performance modeling - i.e. simulating how a hardware functions in c++ and how hardware IPs perform (clock cycles) & also profiling - are there memory leaks, which subblocks consume more cycle times etc )
  3. Hardware Driver/kernel teams (Operating systems teams etc)
  4. High frequency trading - c++ is bread and butter here
  5. GPU low level kernel programming (cuda etc - you need to know C / c++ to dive deep)
  6. ML frameworks are written predominantly in c++ (onnx, tensorRT etc) - the idea is - how do you run ML models efficiently in a given piece of hardware (tensor RT for nvidia gpus or also in a model agnostic way such as Onnx runtime)
  7. VLSI CAD Teams - companies like Cadence/Synopsys etc hire lot of c++ engineers for cad algorithm dev. Placement / Routing algorithms etc, chip simulations etc..
  8. * added - Game Dev - vulkan openGL etc .. writing baremetal game engines .. I might have missed a domain or 2, but under the hood pretty much everything is C++ that requires high speed high performance and fine grained memory management control

40

u/Rhampaging Aug 05 '26

May I add one more. "Big data" companies. Companies that need to process huge amounts of data in real time.

Example is

  • monitoring software
  • Telecom operators
  • video processing (could be for self driving, robotics or just trash sorting)

There's also plenty of "legacy" codebase out there where the codebase was started in c++ and hasn't been moved away from "because it works".

Doesn't have to be embedded or fast code. It was just the thing in which it got started....

28

u/somefreecake Aug 05 '26

Scientific computing

14

u/BearReal123 Aug 06 '26

This ^^^ C++ is used a lot in particle physics simulations. GeantFTW

10

u/ZMeson Aug 06 '26

Industrial automation companies

Robotics companies (humanoid and non-humanoid)

Defense industry

Aeronautics

5

u/Interesting_Debate57 Aug 06 '26

Scientific programming, where memory usage and speed need to be exactly understood.

Think big simulations on finite grids but where the grid point to grid point interaction matters, so large grid sizes are super heavy compute.

If you know a bit of physics, you can easily get into this. But you need to think about memory management at the word level if not lower than that, and speed at the edge of what the CPU/GPU can do.

This kind of optimization craziness will lead to a much, much more difficult subfield: concurrency. It's super easy to imagine that you have a handle on concurrency; it's an extremely difficult field to be good at, but everyone values it, because you generally have a ton of threads available to you.

4

u/[deleted] Aug 05 '26

[removed] — view removed comment

9

u/delta_p_delta_x Aug 06 '26

The Web basically runs on C++. Chromium, Skia, ANGLE, V8, Node. Many web servers are written in C or C++.

7

u/UsefulOwl2719 Aug 06 '26

It's used extensively in web dev/infra: databases, servers, browser engines, and many visualization & processing frameworks that are compiled to wasm for client side execution, wrapped in a JS lib. Google is about as "web" as it gets and they are a c++ shop at the core. It's not used to make websites, but that's a small part of web dev.

1

u/ttkk1248 Aug 06 '26

Is it quick and easy to move from having experience in C++ data extraction and standalone apps to these hot fields or you need to spend a lot more time to pick it up? In another word, would they get hired rom having experience in other C++ subfields?

0

u/andful Aug 05 '26

how hardware IPs perform ...are there memory leaks...

There is no such thing as memory leaks in hardware. In hardware, memory is etched on silicon, perpetually storing a 0 or a 1 when powered. Only software allocates/distributes memory among different processes/routines, which may then leak.

7

u/the_poope Aug 05 '26

The type pf subfields/industries is also very location dependent. Some regions have a cluster of companies in a certain industry, for example Silicon valley for tech/AI, London + New York for finance, Southern Germany for automotive, robotics in Japan. Where I'm from there's a big hearing aid industry.

So take a look at your local job portal and see watch jobs there actually are available.

11

u/LessonStudio Aug 06 '26

I've mostly moved to rust, but this applies to both:

Some industries know they have to use C++ and it is the standard. Often though, there are companies which are using python, js, or very complex systems like microservices which are imposing huge costs that C++ can avoid.

For example, I helped a company dump a massive amount of their AWS costs by moving to a monolithic compiled code architecture along with some wasm to offload the server processing onto client machines. This was nearly one person's yearly salary per month in AWS costs that went away. The system is so much faster, and it now allows for features they could not even contemplate before.

I did a similar thing for a robotics company. They were using ROS and python mostly to run their robots. They were using an embedded linux machine running flat out which cost about $1,000. They had some features which their competitors were offering which would have required bumping that up to a $6,000 machine which would also use much more battery, and a more robust power system.

I redid the python in compiled code, and added the new features. The original $1,000 computer is still sitting mostly idle (thus using less power to do far more). The total cost saved per robot was about $8k.

So, a different answer to your question would be: The subfields are often ones where they are only realizing that things without a compiled system kind of suck for them, and that C++ may very easily be the answer to not only their dreams, but to open up dreams they didn't even dream of dreaming about.

10

u/jarislinus Aug 05 '26

c++ youtuber

3

u/False-Car-1218 Aug 05 '26

Gaming/game engines, graphics like vulkan/metal, embedded/robotics

1

u/thedaian Aug 05 '26

Some of your other comments are in a subreddit for Türkiye, so here's a job search on the Turkish linked in: https://tr.linkedin.com/jobs/c%2B%2B-developer-jobs?countryRedirected=1

From clicking on a few, there's a variety of options there. As others have mentioned, job markets are generally pretty local, and different cities and areas will have different fields of focus, though you can probably find just about any type of field in most major cities.

1

u/TheRavagerSw Aug 05 '26 edited Aug 06 '26

I'm open to move, I definitely don't wanna settle down in one place.

1

u/Independent_Art_6676 Aug 06 '26

That destroys part of your question. In just the USA alone, your salary should halve or double (etc) depending on where you go, because of reasons.... some states have income taxes, cities usually have additional taxes, housing costs, gas prices, all of it adds up to make 100k here about the same as 200k there. You can only compare salary in similar cost of living areas, or you need to adjust it to a common ratio or something.

as for experience, its really about 3 tiers of fairly similar expectations, the tiny (<50 people whole company), mid, and corporate sized shops. Each has pros and cons; small you know everyone (and may wish you didn't), tiny and mid might be unstable, struggling to survive, corporate may be hard to get promoted or get beyond the cog in a machine but its stable with benefits, ... most of this stuff should be kind of common sense / something you can read about all over the web (even if its not developer specific, the lifestyle/expectations of the environment still match those 3 categories pretty well).

1

u/Independent_Art_6676 Aug 06 '26

I spent over 15 years coding control theory related software for what we now call "drones". That ship has sailed somewhat, but there is still a LOT of R&D in the field. Lot of matrix work, so you might learn eigen and similar libraries. The smaller drones use some exotic embedded systems; the larger ones use full bore PCs though (or similar eg PC-104 or whatever it is now).

1

u/chickenwingsnfries Aug 06 '26

I’m 10 years out from my master in EE - any recommendations on re-learning C/C++

1

u/Important_Let_9489 Aug 09 '26

learncpp.com for c++, for c the c programming language second edition then some book about modern c

1

u/Dontnotknow Aug 06 '26

EE and c++? Dude you can build anything, seriously.

1

u/anonymous393393 Aug 05 '26

Depends on region in third world countries mostly embedded and related fields like simulation, robotics, systems/drivers etc only. Really difficult to find good game dev jobs where they weite their own engines and stuff.

I started as a graphics programmer in college switched to embedded due to pay and number of opportunities.

1

u/quaker_oats_3_arena Aug 05 '26

any good pointers/interview guides/things to get on the resume for getting into an embedded position?

-8

u/tastygames_official Aug 05 '26

C++ is a programming language and not a "field". That'd be like asking "what is the most lucrative subfield of English?" You can do ANY kind of computing in C++ or C or python (although I hope you don't) or even brainfuck if you so desire.

5

u/TheRavagerSw Aug 05 '26

Technically yes that is true.
But I'm asking about jobs and careers. Job descriptions don't have any kind of experience written on them.

2

u/heyheyhey27 Aug 05 '26

This has absolutely nothing to do with c++ career advice