Please see also:
I seriously think that the more important skill is the ability to recognize and avoid anti-patterns
. Please see:
In real life, there are a lot more.
As to the design patterns, it's important not to make a cult of them. You rather need to understand the ideas, and develop a software project going from deep understanding of its goals. In this road, you can choose pattern, combine them and even invent new ones or modify existing pattern. Dogmatic use of pattens you know can be harmful.