Discussion

Ask HN: how can I learn about real-world software/system design?

I've been coding professionally for a few years now, with solo responsibility for quite a bit of code. As the systems I work on have gotten bigger, I've realized how lacking my skillset is. I have a CS degree, but never had any formal practical software engineering training. I don't really have any sort of mentor here, so I've mostly just figured stuff out on my own. the problem is, I'm sure I'm missing quite a bit.

for example, I routinely find myself wondering how to design something, jumping from idea to idea until I accept that I really don't know and just pick the path of least resistance. other things that regularly come up are database scheme issues, how to properly set up a test environment, proper logging/error handling practices, writing fault-tolerant network code, and more. things I never saw in coursework. I can bang out code for sure, but I know I can do better.

I've tried looking at a couple books (code complete, design patterns) but couldn't get much from them. I've tried looking at open source code, but that's missing the back-and-forth dialogue I'm looking for. assuming I don't have access to any experienced developers, what can I do at this point, save for posting non-stop questions to stack overflow?

8 points brosephius 16 years ago 3 comments

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton