Hacker News new | ask | show | jobs
by rtkaratekid 2288 days ago
Started getting into kernel stuff for work. Does anyone have a good idea what kind of market demand there is for kernel devs or similar skill sets? Being new to this I absolutely love it, but have no idea.

The resources shared by everyone here are so helpful! I’ve been muddling through by reading the docs, source code, and various messages on the mailing list and... it’s been a little painful.

12 comments

As long time kernel/OS dev, right now is not the best time for kernel jobs. Majority of jobs are in user space (particularly Node/JS/React or aws/Kafka/Hadoop type) or at least the interviews are geared towards them. Most companies which used to maintain their own kernel have either outsourced it or use cloud where minimal kernel change is needed. Even if a company has kernel/OS team, majority of their work is to debug, patch, and port. Usually even they don't want to touch kernel much since, it is super critical component of product, debugging is really hard, getting company specific patch upstream is hard, etc.

Obviously, RedHat, SuSe Canonical, Microsoft, Apple, AMD, Intel, firmware and embedded companies will always need kernel people. However, the demand has really gone down and it is no more considered "elite" team within companies. Jobs are still there but obviously teams lean towards hiring experts and veterans of kernel instead of new comers. Moreover, once you get over simple char driver and few lines of patch type stuff, kernel development is extremely complex and hard. You wont get much support either as very likely your problem will be unique to your company's hardware. So, my take - learn and do kernel stuff on side but avoid getting into it full-time unless you are really passionate about it.

Security product companies like mine (Capsule8), Crowdstrike, Sysdig, etc. will always be looking for software developers with a background in Linux (or Windows) development.
That’s good to hear. I work in security currently
We're hiring. :) Email me (address in bio) if you have experience doing kernel development, reverse engineering, debuggers, emulators, compilers, etc. We do cool stuff.
Consistent kernel hackers get hired fast. Focus on a particular subsystem, participate in the community, and contribute regularly - you'll have opportunities in no time.
what would be a typical salary range for 1 year kernel dev + 4-5 years in related experience? let's say BayArea/NY/Austin? I really did like learning about kernel dev before. Might be time to learn again..
I dunno, maybe around $80K-$100K? In expensive cities, more? At FAANG, more still? A lot of kernel hackers work remotely.
seems low
Well, it depends on whether or not "4-5 years in related experience" means systems programming or if it means making single-page webapps.
That's less than somebody with 0 years experience in FAANG will make. I wouldn't expect kernel developers to get paid much differently than non-kernel developers at a similar level.
What if it's systems programming or HW design?
Awesome, appreciate the input.
If you're doing reliability engineering for any type of service running on Linux servers, being well-versed in the kernel is a great power that separates you from others.
There are companies which usually have openings for kernel developers, mainly device manufacturers.

There are currently a few in AMD's website.

You might consider going through the git commits, find authors, and investigate where they work.
Lots of work reconfiguring major distros and their latency disastrous configurations
I would imagine it would be really handy for embedded systems.
Very requested for embedded markets (all kind of devices) and you can also specialize into other things, like Android customization.
Many of the bigger SV tech companies have an internal kernel/os team.
IBM and Redhat (although I guess nowadays they're pretty related) seem to do a lot of kernel work. There are probably even more that I cant named sleep deprived, but you can throw in something like "linux kernel developer" in a job search board to get an idea
The direct demand is low; the Linux kernel is open source so framing yourself as a 'kernel developer' probably is not a very good way to be an ideal candidate for a job opening.

On the other hand, most developers and even some non-developers recognize that kernel development is hard. If you have a name in the kernel development world this will certainly help your reputation. Likewise, if you have a good knowledge of Linux this will certainly help you for certain job openings (kernel development is probably a great background for most low-level job entries).

> the Linux kernel is open source

I’m not sure I understand why this is a bad thing?

Proprietary in contrast eliminates competition for the job - no source to study