Hacker News Re-Imagined

Ask HN: How to build a career in systems-level open source tech?

Hi, I am a software developer in my early 20s and have a degree in Computer Science. Most developer jobs (including my current job) seem to be just about using frameworks to build and maintain apps as per the requirements, with the difficult stuff mostly abstracted away by frameworks.

I do not find this very interesting, and over the next few years, I want to transition to jobs involving design and implementation at the lower-level of the tech stack, or in other words, I want to work on the (mostly open-source) low-level infrastructure instead of a commercial app. Some recent examples of such low-level work I can think of, are: Linux kernel development, sanitizers and static analysis in GCC and Clang, new languages and their compilers and tools (Rust, Go, WebAssembly, etc), regular improvements in web browser engines, databases features.

I would appreciate any advice on how to transition to this kind of work, given that such jobs are very few in number and require highly specialized knowledge, compared to a generic app developer role.

PS. I am outside the US.

  • 13 points
  • 4 days ago

  • @useafterfree
  • Created a post

Ask HN: How to build a career in systems-level open source tech?


@jka 4 days

Replying to @useafterfree 🎙

You'll probably get varying answers to your question based on who you ask, but I would recommend developing an expertise in one particular area -- perhaps in one individual project, or even a subcomponent of a project -- that you care about and will naturally develop an encyclopediac knowledge of simply because you find it fascinating enough to want to read everything about it (historic and ongoing).

So now you're an expert in that field - and it doesn't feel like work, because it's what you enjoy and want to see advance technologically. Now what you do is look around to see who benefits from experience in that area. If you're lucky, they've reached out to you already.

Worst case, you've learned about and perhaps developed and furthered a technology cause that you care about. Best case, you've found an employer (and team) who want to do the same.

What's your favourite example of a static analysis success story?

Reply


@_448 3 days

> Some recent examples of such low-level work I can think of, are: Linux kernel development, sanitizers and static analysis in GCC and Clang, new languages and their compilers and tools (Rust, Go, WebAssembly, etc), regular improvements in web browser engines, databases features.

All that you have listed are available for contributions from beginners. Choose the field you like and start lurking on their mailing lists; download the source code, try to understand it and ask questions (let developers on the mailing list know that you are a beginner and want to contribute, and ask what is the best approach to get to speed with the codebase)

Reply


@hotpotamus 3 days

If I wanted to do Linux Kernel development, I'd apply at Red Hat. I've got a buddy who interviews newish kernel developers out of school for them - it doesn't sound like he's looking for anything super specific either - he's often dismayed at how new graduates he talks to aren't even up on source control or other things he considers fundamental. He's US based but the teams are international (though I don't know if they'd hire from any country; maybe just specific ones).

Anyway, that's where I'd apply.

Reply


About Us

site design / logo © 2022 Box Piper