Resources

Books

The Pragmatic Programmer: This book covers both approaching software development in general, and also goes into more detailed topics like practical approaches to class inheritance, concurrency, and those sorts of things.

Articles

Falsehoods Programmers Believe About Time (and its sequel, More Falsehoods Programmers Believe About Time): Try to create your own list of edge cases about time and dates before reading this article.

Falsehoods Programmers Believe About Names: This should be required reading for probably everyone, even non-programmers.

Blogs

Scarlet Ink: A weekly newsletter with leadership advice, but there’s plenty of content around interviewing, software development, and general career advice that applies to everyone.