I think these books are valuable references when building software systems:

I think these websites are valuable references when identifying patterns: