C es definitivamente bueno para un principiante, ya que, a su debido tiempo, se dará cuenta de que lenguajes como Java y C # son más fáciles de aprender con una base sólida en C / C ++. Ahora, básicamente, podría codificar prácticamente cualquier cosa en C, pero encontrará que lenguajes como Java / C # serían los preferidos en una configuración empresarial. Y esto nuevamente depende puramente de lo que estés tratando de resolver –
Una implementación de controlador de bajo nivel para un enrutador preferiría C sobre Java;
Una infraestructura de cálculo, por ejemplo para un banco, preferiría Java / C # / Python sobre C.
Para obtener más información, hay muchas posibilidades y su diversidad en términos de área de enfoque. Un curso que recomendaría es Coursera – Diseño y análisis de algoritmos. Éste le brinda mucha información sobre algoritmos relativamente complejos y aprenderá técnicas para medir la complejidad de los algoritmos de tiempo que escribe. Además, si tiene una licenciatura en ciencias de la computación, encontrará que gran parte de lo que se cubre en este curso es relevante para su plan de estudios en la mayoría de los casos.