A great, top software developer must be aware of the different algorithms and data structures in computer science. If the basics are known you will be able to deal with any technology and, moreover, you will be able to solve complex problems. If you want to be hired by a top tech company (you know who they are) or by a great, unicorn start-up it is a must that you understand the computer science basis.
This is part of my professional growth and intend to put here all the stuff that I'm developing to train myself. In the meantime I will continue reading
See also https://github.com/jmcanterafonseca/algorithms2ndtake