eg. you dont need to memorise sorting algorithms or be able to write them, but you do need to understand the concept of sorting, and the concept of time complexity, etc etc. knowing what data structures to use and when to use them. knowing how to structure concurrency for your problem space. many many concepts.
system design is becoming the most important thing, and to me it's also the most interesting part of creating software. and there will always be more to know.