Settings

Theme

How to transition to systems programming as an experienced dev?

1 points by bmd3991 4 years ago · 0 comments · 2 min read


I recently quit my job as a backend software engineer because I was not enjoying the work. My career so far has basically ~4 years of backend work at a couple of companies - so c#/Python/PHP, database stuff, etc. I've always liked systems programming, so I'm taking something of a sabbatical to just work on projects that will hopefully land me a job in that domain.

Right now I'm relearning c, and then I guess (?) I'll relearn c++ too since there don't seem to be many rust jobs yet. I'm doing "Linux from Scratch" and building my own shell right now. After those are complete I plan on building my own version of Docker, and then maybe moving on to some kind of virtualization project (or maybe creating my own file system, just whatever seems fun).

So, using my home-built version of docker as an example, would it be better for my resume to spend a ton of time building out my own software (open sourcing it of course) or should I spend that time contributing to an existing open source project? I worry that if I choose to contribute to open source it'll take up half of my time just getting familiar with the existing codebase, and I wouldn't actually have that much to show for it. I would also be a lot more locked in to that specific project, and would have less time to explore different options (maybe I find out halfway through that I prefer driver development to containerization - I can move more nimbly when working on my own stuff).

I really need to make sure I'm optimizing this time off, so any guidance is welcome. I can take as long of a sabbatical as needed, but I'd like to keep it as short as possible so I can get back to saving for retirement :)

No comments yet.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection