Creo que esta es una pregunta realmente interesante. Como se ha señalado, hay muchas buenas referencias sobre patrones de diseño útiles, principios OO y otras técnicas.
Todavía no he visto recursos que permitan a alguien ejercer la aplicación de estas técnicas. Como alguien con experiencia en educación, he pensado en este tipo de recursos y mi conclusión es que el desarrollo de resouces útiles es extremadamente exigente. No es tan difícil encontrar pequeñas preguntas que "hornean" una respuesta (por ejemplo, idear un problema que pueda abordarse mediante el uso de una fábrica abstracta), pero esos son problemas triviales, el verdadero arte surge cuando los sistemas son más grandes y existen concesiones para ser consideradas; donde puede haber más de una respuesta "correcta".
Me imagino que un curso formal de alta calidad podría contener dicho material, pero ¿encontrar algo gratis? Si podemos encontrar algunos que serían realmente agradables.
Sospecho que en este momento es posible que necesite depender de la tutoría, el aprendizaje en el trabajo y la larga experiencia.
Quizás una cosa para probar: ¡construya su propio material! Por ejemplo, tome un problema no trivial en un dominio con el que esté familiarizado y trate de idear una solución. A medida que avanza, publique preguntas sobre pequeñas piezas de diseño aquí (o quizás un sitio más discursivo). Va a ser difícil mantener las preguntas pequeñas y foscused. Pero creo que lo más importante que necesita es retroalimentación y colaboración.
Sí, qué gran proyecto es. – Shahzeb