Para convertirme en un ingeniero de software con las oportunidades más abiertas, ¿debería especializarme en ciencias de la computación o ingeniería de software? Muchas universidades superiores solo tienen una u otra (Ejemplo, Berkeley con informática pero no ingeniería de software).

Ningún empleador sensato preferirá una especialidad sobre la otra, y si hay otras que lo hacen, será mejor que se mantenga lo más alejado posible de ellas.

Tiendo a pensar en la ingeniería de software como desarrollo de software más gestión de proyectos (software). Estas habilidades de gestión de proyectos son increíblemente importantes en el mundo real, pero desafortunadamente no se pueden enseñar en la escuela, en un vacío sin el contexto de una gran base de código con un componente heredado significativo, clientes confundidos y un equipo mercurial de desarrolladores.

De hecho, si bien los cursos universitarios en ingeniería de software son útiles para establecer un lenguaje común para discutir problemas, aunque en un nivel abstracto, las soluciones propuestas por académicos y enseñadas por ellos en conferencias no han sido tradicionalmente relevantes en el campo.

Entonces, si todo lo demás es igual, recomendaría elegir la especialización en informática. De esa manera, no perderá su tiempo en los cursos de ingeniería de software más especializados y podrá centrarse en la ciencia dura que es menos probable que olvide y en la que la academia realmente se destaca. Tome cursos adicionales en aprendizaje automático, gráficos por computadora, diseño de compiladores, algoritmos y estructuras de datos, sistemas operativos; Deje las habilidades profesionales de desarrollo de software para proyectos, períodos de prácticas y su carrera profesional a tiempo completo después de la universidad.

A2A. La ingeniería de software SE es una especialización de ciencias de la computación que puede ser una especialidad o departamento por separado, por ejemplo, vea Diferencia entre ingeniería de software y ciencias de la computación en Cal Poly.

Berkeley no tiene un departamento de informática separado, la informática de Berkeley (como MIT) está en el departamento de EECS en la Facultad de Ingeniería. Actualmente, Berkeley ofrece CS 169 Ingeniería de software que, junto con otros cursos de CS, será similar a la ingeniería de software principal.

En el mercado laboral de 2017, CS y SE son intercambiables porque la demanda de software o desarrolladores web supera la oferta. Esto puede cambiar en el futuro.

Me estoy cansando de esta pregunta. No es tu culpa. Es una tontería.

Haz informática. Cualquier escuela decente tendrá que codificar tanto como un SE, si no más. Tendrá una formación teórica en Matemáticas (que cualquier ingeniero inteligente debería saber; SE puede que no le dé eso). Sabrá cómo funciona la computadora bajo el capó. Conocerá las estructuras de datos que componen todo el software jamás escrito.

Cualquiera que diga SE probablemente dirá: “¡Diseña patrones! ¡Documentación! ¡¡EXAMEN DE LA UNIDAD!!”. Sí. Bueno. Cualquier graduado en ciencias de la computación que valga la pena contratar que no sepa que esa mierda puede recogerlo en cuestión de una semana, como máximo.

Computer Science lo expone a la misma máquina en la que está desarrollando software . Apostaría a que cualquiera que elija una especialización SE (lo que sea que esto implique vs CS), no sabrá tanto como usted.

Entonces, CS. Todo lo que no sabes, puedes aprenderlo fácilmente. Y también aprenderá muchas más cosas aplicables (y más difíciles).