It might be niche, but it can also be a differentiator--even if I'm not the fastest coder or the best architect I have these other skills that make me valuable at critical times. That's worth something anywhere.
And it's not even knowledge of C or C++, or syscalls or whatever: it's just basic "use a debugger" (not merely pantomime the commands, but understand what's going on) skills that can be the real game changer.
Make, Ninja etc. are fairly straightforward compared to something like Gradle and just knowing my way around that and Clang/GnuCC has gotten me a lot farther in my career.
But if you do so, then I must ask: what are you doing on this site? What can you possibly get out of it?
What does any of this has to do with C?
>What can you possibly get out of it?
I hope you realise that many of commenters here are not even software engineers. HN covers more topics than just 'another arrogant software dev lectures someone on topic X'
Not GP. But this is explicitly a software thread.
> >>frameworks and libraries all work, incapable of tracking down and fixing bugs in your application stack...
Pretty sure they are implying that C/C++ lies somewhere in most software stacks.
So do many other things. It's nice to know every bit of tech behind the scenes but one has only this much time.
It's useful to understand a few classic networking problems that a backend engineer might face — e.g. weird latency issues caused by Nagle's algorithm, or TCP CLOSE_WAIT leading to ephemeral port exhaustion between a proxy and an application node. It's useful to understand why we mostly moved to event loop-based servers instead of thread-per-connection servers as a way to handle c10k.
A backend engineer doesn't necessarily have to be an expert on any of these things, but they should be able to follow along if an expert explains that sort of problem.