In my humble opinion every developer should be familiar with at least the basic design patterns. A very good reference is Elements of Reusable Object-Oriented Software. This book has been it its first release since 1994 simply because there is no reason to create a second edition. It all still applies today as it did back then.
Whenever I try to learn a new language, I try to implement the basic design patterns in that language. It helps me to get familiar with the basic language constructs and I immediately build up a repository of often used code elements. When I started learning TypeScript I went through this exercise as usual, but also decided to create a couple of screencasts. You can find them by navigating through the sub menu.
If you want to get an idea of why design patterns are important, you can watch the screencast below.