There is a lot of debate on SOLID principle.
The video Applying SOLID Principles in .NET (http://channel9.msdn.com/events/TechEd/Europe/2014/DEV-B210) is worth to watch.
I like the last slide Consideration
As he mentioned.
1. Someone just over engineering using the term SOLID
2. How readable for your Dependency Injection if you have large set of object.
3. When talking about maintainable, before SOLID is 50 lines of code, after SOLID is 230 lines of code previewing the same functionality. So you think 50 lines of code is easier to maintain or 230?