Live data from Hacker News

The pool of talented C++ developers is running dry

efinancialcareers.com

221–230 of 869 posts

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

#221
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…

It's amazing how badly embedded programming and C++ programming in general pay compared to the others you mention like Python & Ruby. A good C++ programmer has to know a whole lot more (and be careful about a whole lot more) than a Python or Ruby programmer does. C++ is well known to be a complicated beast - probably the most complicated programming language in existence with plenty of footguns. And an embedded devel…

Yes - I used to program in C++, and left it for another job. 2 years later, when looking for other opportunities, I realized how much of the small details in C++ I'd forgotten, and didn't want to go back to all those minutiae unless it paid more.

It's a real relief to drop that cognitive load.

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

#223

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

A recent curriculum of languages taught at a German TU I skimmed over includes C, C++, and Haskell. Can't help but agree with that choice: C gives you understanding of low level operations and appreciation of higher level concepts such as GC and/or verification etc. while Haskell lets you experiment with functional and logic idioms, type theory, DSLs, etc. Starting with Java or C# might be ok for training and getting a job, but would be unsuitable for foundational education IMO.

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

#224
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…

Interpreted languages are also more flexible and easier to work with.

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

#225

Earlier quoted context omitted.

> You may also look into Kernel Programming for a lucrative systems programming career. This is the road I have taken since I started to work professionally, but I yet have to find a lucrative job. I know that I am paid more than microcontroller devs, but less than web devs. The market for kernel developers is not that big either.

That's insane to me... getting into systems programming recently I am well aware of how much harder it is than web dev.

Harder yes, but at least you don’t have to keep up with “flavor of the month” frameworks and toolkits that frequently change.

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

#226

Earlier quoted context omitted.

I'm really hoping the salaries for EE type roles start to match software as the grey beards start to retire and talent becomes scarce. We've got a legion of grads going into CS, but EE classes are a fraction of that. Despite that, software roles are often more than double the salary. Any role I go into as an EE/Embedded Systems engineer, I'm more often than not the youngest by 20-30 years. I wonder how the industry i…

The demand for EE roles is far less than the demand for Software roles. For a simple thought experiment, imagine if you could get a good developer for $20 an hour. Every single company on the planet, from a mom and pop shop to big corporations could turn a profit off their work. Now imagine you could get an electrical engineer for the same price. What percent of businesses could profit from electrical engineering? 2%…

The context OP setup was “when grey beards retire.”

The ideas being demand is low as the senior EEs stay put.

Mom and pop shops could use Excel and did successfully for years. Big banks even ran on gigabyte sized Excel sheets before the 2010s hype bubble (Source: direct experience working in fintech 2010-2015)

Anyone in tech believing the last 10-15 years was about anything but the US government juicing its economy to stay relevant, titillate, and ingratiate itself on now 30-40 something college grads is fooling themselves. All those students are now bought in to keeping the dollar alive.

Software has gotten so over thought and bloated given a “too many cooks in the kitchen.” situation. Templating a git repo with appropriate dep files given mathematical constraints is not rocket science. The past needed to imagine software as out of this world to gain mindshare. Correct and stable electrical state is what really matters.

We are entering a new era of tearing down the cloud monolith for open ML libs that put machines to work, not people.

Behavioral economics has been running the US since before Reagan.

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

#227

Earlier quoted context omitted.

> 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 th…

Many hardware companies still see software as just another line item on the BOM: Like a screw or a gasket. It's something you build cheaply or buy from a supplier and sprinkle it on the product somewhere on the assembly line. These hardware companies have no concept of typical measures of software quality, building an ecosystem, release management, sometimes even no concept of source control. They tell an overworked…

this is grimly funny to me because where I work, software is a literal line item in the manufacturing BOM, each release gets a part number and is physically shipped to the factory

it makes some sense, but the company mindset about the role of software is very clear

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

#228
post #69

Dear finance folks: Please do write your trading systems in Rust; then at least the poor beeper-wearing support folks maintaining the code doesn't have to come in on the weekend as often to debug those unnecessary null pointer & dangling reference errors causing crashes.

Rust is solving for the wrong problem. Null and dangling pointers aren't the main problem in building financial trading systems (I built a financial trading system).

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

#229
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'm always conflicted with this. My gut says any new student should start with an interpreted language like Python or JS/TypeScript. As that gets you to running code, and core concepts like variables, loops and if statements in little to no time. However, there is value in learning some of the under the hood concepts such as pointers, structs, memory layout, endianess, pass by reference, compilers etc. I don't think…

I have written maybe one binary search that went into production code in 20 years of software development work. It is absolutely an under the hood concept.

But knowing how it works so that I can leverage the concept efficiently is super important. Having a sorted or unsorted list/array/tuple/whatever-linear-thing and an functions that search them and then knowing what the performance characteristic will be like and how I should put those two things together is not something that can easily be googled.

I agree it doesn't need to be a first year thing, but it does need to be part of a robust computer science education.

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

#230
post #64

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…

> All of this to say: if you want C++ programmers, you need to pay competitive enough rates to pull them away from there. I'd modify this to say "All of this to say: if you want programmers, you need to pay competitive rates." I worked in real estate for a while (as a software dev) and my boss, who was a realtor, always said "there's no house problem that price can't solve". The labor analogy for me is "there's no la…

> The labor analogy for me is "there's no labor shortage that salary can't solve".

Perhaps not in SW, but there are plenty of labor shortages that salary can't solve. Some positions are simply not economically viable in certain markets - the pay required to get people to do them is more than a given business can afford. And I don't mean in the "cutting into the compensation of the business owner" type, but "not enough revenue to pay such salaries".

Try living in countries with very different economies (1st world, 3rd world, etc) and this becomes obvious. You'll see jobs in one country that simply cannot exist in another.

Post reply on HN