¿En qué área de la informática debería centrarme para obtener el mejor trabajo de programación?

Esto definitivamente depende de lo que constituye “el mejor trabajo de programación” para usted.

Sin embargo, las áreas comunes que recomendaría para que todos se concentren:

  • Estructuras de datos y algoritmos: los problemas comunes que ya se han resuelto aparecen en diversas formas todo el tiempo, y es importante que se asegure de aprovechar esto para no reinventar constantemente la rueda. También hay una multitud de soluciones diferentes que se pueden proporcionar a cualquier problema, y ​​no todas las soluciones se crean de la misma manera. Algunos son más rápidos, otros ocupan menos espacio, otros son más adaptables y otros son peores en todos los aspectos. Ser capaz de comprender y explicar estas compensaciones.
  • Diseño de software y patrones de diseño: diseñar un buen software que se pueda mantener es difícil y no intuitivo. No creo que hayamos perfeccionado la ciencia del diseño de software, pero hemos tenido a mucha gente haciendo análisis sobre lo que funcionó y lo que definitivamente no funcionó, y es importante quedar atrapado en este aspecto para que usted no esté t caer en las mismas trampas (especialmente si están bien documentadas porque eso hace que sea mucho más fácil para alguien señalar que debería haberlo visto venir).
  • Organización y redes de computadoras: no diría que necesita tener un conocimiento súper extenso de estos dos temas, pero definitivamente debe tener una base sólida de conocimiento de 1. lo que hacen todas las partes de una computadora y una breve comprensión de cómo lo hacen y 2. qué protocolos son, cuáles son algunos protocolos comunes y los modelos TCP / IP y OSI. Ambas clases se impartieron en Ingeniería Informática (en oposición a Ciencias de la Computación) en mi universidad, pero creo que deberían incluirse al menos parcialmente en cada programa de Ciencias de la Computación. Esta área no se usará casi tanto como la anterior, pero es una gran perspectiva a tener en cuenta para poder visualizar mejor un sistema completo, especialmente para problemas de depuración de nicho.