Soy un estudiante potencial de CS y no puedo elegir entre seguridad cibernética o ingeniería de software como concentración. ¿Cuál es alguna información sobre el trabajo, sus perspectivas y estabilidad, etc. u otros campos para que yo considere?

Antes de decir algo, comencé mi carrera como ingeniero de software, avancé lentamente hacia la seguridad.

Primero eliminemos Cyber ​​Security y centrémonos en la seguridad. Mucha publicidad con la palabra “Cyber”.

La seguridad no es un negocio de listas de verificación. Puedes convertirlo en uno si quieres.

La seguridad tiene un significado diferente en cualquier red / aplicación / producto / servicio. Lo que todos estos tienen en común es que algunos “Ingenieros de software” construyen productos de seguridad como Firewall, Firewall de aplicaciones, Next Gen, bibliotecas criptográficas, gestión de identidad, análisis de registros o escritura de scripts y herramientas para hackear (pruebas), etc.

Por lo tanto, hay un poco de “ingeniería de software” que se dedica a la construcción de productos de seguridad.

También he trabajado con personas que NO son ingenieros de software (es decir, que no escriben ningún código) pero que conocen muy bien los conceptos de seguridad, cómo usar las herramientas, comprender las implicaciones y garantizar que la red sea segura. Este rol también requiere una buena capacidad “analítica” y una sólida comprensión de cómo varias “cosas” (IoT, eso es lo que se llama en estos días) funcionan juntas.

He trabajado con ingenieros de seguridad, que pueden escribir código hasta el punto que cualquier desarrollador de software normal no puede pensar y puede entrar en su producto / servicio / red. Pueden hacer un volcado de memoria para analizar el código, pueden realizar ingeniería inversa del código para averiguar cuál es la contraseña oculta dentro del código. Pueden usar pérdidas de memoria para derribar su sistema. Todo esto requiere una buena cantidad de análisis, ingeniería de software y conocimiento de seguridad.

Las cosas que los ingenieros de seguridad solían hacer antes, como abrir puertos de firewall o revisar los registros, ahora están siendo automatizadas (para que puedan concentrar su esfuerzo en otra cosa).

Tener una base sólida de software conducirá a

a) Trabajos relacionados con el software, ya sea que esté creando una aplicación simple o el próximo sistema avanzado de ML.

b) Crear aplicaciones seguras

c) Crear productos de seguridad

d) Pase completamente a la seguridad, ya sea creando productos de seguridad o integrando productos de seguridad con aplicaciones o protegiendo software utilizando herramientas de seguridad avanzadas.

Las personas que conozco que comenzaron en seguridad siempre comenzaron con pruebas de penetración / piratería ética o administradores de seguridad de red. Por lo tanto, es posible que desee hacer preguntas como cómo comenzó su carrera en Seguridad (aparte de la función de ingeniería de software).

Parece que no estás muy lejos en tus estudios. Si es cierto, tratar de elegir una concentración en este momento no es un esfuerzo fructífero. Yo hablo por experiencia. Pensé que estaría muy interesado en la Inteligencia Artificial. He llegado al final de mi curso (me quedan exactamente 1 curso obligatorio y he usado todas mis asignaturas optativas gratuitas), y estoy más interesado en los cursos de algoritmos y estudio en este momento. Es posible que no sea capaz de comprender qué significaría ese tipo de concentraciones en este momento.

Para mí y la IA, no entendí qué era la “programación funcional” cuando comencé con CS. Es muy importante para la IA. Resulta que simplemente no me interesa tanto.

Sin embargo, diré sobre Ingeniería de Software que probablemente harás algo similar a la especialización de Ingeniería de Software aquí en la Universidad de Auburn. Los cursos que distinguen a SWE de CS son Proceso de Software, Aseguramiento de la Calidad, Arquitectura de Computadores y Proyecto de Diseño Senior. Además, los SWE no tienen que tomar idiomas formales, que es una clase muy “informática”. Entonces, con SWE, hay un mayor enfoque en trabajar en grandes proyectos con grupos de personas durante meses a la vez. También obtendrás esto como estudiante de informática.

¿Quieres eso? No creo que puedas saberlo ahora.

En cuanto a las perspectivas de trabajo, casi todos los trabajos que obtendrías al especializarte en pregrado serán geniales. La Oficina de Estadísticas Laborales proyecta una increíble cantidad de crecimiento en los próximos diez años para todo tipo de trabajos que obtenga con un título de CS. Mi consejo es que primero te concentres en realmente clavar tus clases de fundamentos, y luego sabrás cuál es tu interés de concentración.

Son dos trabajos muy diferentes.

Debe decidir qué prefiere hacer y puede que sea demasiado pronto para que pueda decidir. Puedes especializarte fácilmente cuando te gradúes, mi amigo estudió ciencias de la computación (programación) pero asumió el papel de seguridad cibernética en un banco, por lo que te tomarán en serio incluso si no te especializas desde el principio.

Clasificaría los roles en dos trabajos diferentes:

Ingeniería de software – El constructor. Obviamente ese es el nivel más bajo del trabajo. Eres una capa de ladrillos, te dicen dónde colocar los ladrillos. A medida que gane más experiencia, puede decirle a otras capas de ladrillo qué hacer. Luego, a medida que mejore, puede decidir que prefiere diseñar los edificios. Si trabajas para una empresa pequeña como yo lo hice desde el principio, debes hacer todos esos pasos desde el primer día, para que el trabajo pueda variar aún más. La empresa que elija (tamaño) y los proyectos que elija (sector) cambiarán drásticamente la forma en que hace su trabajo y lo que tiene que hacer realmente.

El oficial de seguridad cibernética – El hombre de la lista de verificación. Seré completamente honesto y diré que no sé los detalles exactos de lo que hace mi amigo en su trabajo. Hablamos bastante sobre el trabajo, pero seré sincero, como desarrollador (ahora gerente) tengo mucho más de qué hablar que él. En primer lugar, debe trabajar en una gran empresa porque las pequeñas empresas no tendrán un departamento de seguridad cibernética o subcontratarán (generalizando aquí). Por lo que entiendo, su trabajo consiste en validar proyectos, comparándolos con los estándares existentes, pero nunca trabajando en ninguno de los proyectos. Tiene muchos proyectos en los que está involucrado. Hay, una vez más, muchos sectores diferentes dentro de la seguridad cibernética que pueden ser más / menos dramáticos (como el centro de control de daños, etc.)

Mi sesgo es obviamente hacia la ingeniería de software porque disfruto creando, no solo protegiendo algo más que se está construyendo. Yo diría que generalmente hay mucho más dinero en el sector de seguridad cibernética y que solo van a inyectar más dinero en él. Por lo que escuché, los salarios aumentan rápidamente ya que la amenaza de ataques aumenta constantemente y las empresas no quieren perder a sus principales estrellas. Entonces, si está buscando dinero, la seguridad cibernética parece ser una dirección a tener en cuenta.

Creo que eres joven, no eres consciente de tu futuro y de lo que está disponible, por lo que debes seguir con la ingeniería del software. La seguridad es una gran parte del desarrollo, por lo que tener una comprensión de esos principios lo ayudará de todos modos en el futuro. Siempre puede cambiar a seguridad cibernética al graduarse. A la inversa, puede ser un poco más complicado, pero no necesariamente.

La mejor de las suertes para ti.