Hacker News new | ask | show | jobs
by mettamage 1785 days ago
It seems you didn’t study CS. If you did, then we studied different courses :P

- Compilers

- Game Engines

- Gnarly multithreaded problems

- Using IDA Pro to analyze X86-64 binaries

- Computer systems and networks (e.g. NAND2Tetris)

- Creating your own kernel

- Creating your own database

- Replicating meltdown and spectre. Repkicaring rowhammer attacks

- Web attacks (check out hackthebox.eu)

I did almost all of these during my CS bachelor and master. Other than that, a friend of mine learned a ton at an internship working on LLVM (a few years ago). He now works on low level stuff in the HFT space. So you might want to look there (the game dev space has overlapping problems with the HFT space but for a much lower salary).

Currently I am doing leetcode because I’d love to earn a FAANG salary (HFT is not for me). Leetcode feels most reminiscent to graph theory.

1 comments

I did study CS, but the courses weren't quite as deep. Out of all the topics above, I only did interpreters (compilers) and multi threading.

I don't think I wanna do HFT. Not interested in numbers or statistics. I don't wanna do data science/ML as well.

I was just thinking what can I do to spark joy in programming once again. Maybe I need some creative-type of programming work like creating useless toys or tools.

Leetcode is mostly just brute-forcing yourself through problems. I've done around 500 Leetcode problems, its not that hard after you gone past 200 problems, it gets repeated but different style. Yeah a lot of Leetcode problems mostly are just graph problems. I think Leetcode managed to distract me a bit but after a while I got bored as well, after all I already got the FAANG salary, no interest for me doing Leetcode anymore.

Pick a small self-contained project that has a very clear end. Work on it periodically, meaning daily, weekly, as schedule permits; but not necessarily for copious amounts of time. Make a small amount of tangible, obvious progress each time. Tangible and obvious are going to be subjective to you and might not mean much to someone else. No matter, this project is for you. You'll feel a spark joy type feeling after some number of periods.

It's important to not rush this and just let it happen while keeping the momentum going. Skipping every so often is ok, but don't skip more than 2 periods in a row. Track your progress in a way that's meaningful to you. Your brain is rewiring itself as you do this so the time it takes might vary depending on overall health.