I didn't realize until I started working on hubski how little I'd been trained in the design of application architecture. The furthest I've gotten in any class is creating a maintainable and human-readable project file layout. I learned a lot from reading about how reddit is setup, but I'm definitely going to buying these books.
They're fun books. You might also want to check out The Design and Implementation of the 4.4 BSD Operating System. There's a more recent edition covering FreeBSD, which I can't recommend because I haven't read it.