Es probable que asista a una entrevista (software) el próximo mes, ¿dónde puedo prepararme para la entrevista en línea?

Veamos las cosas básicas que debe saber si está entrevistando para un puesto de ingeniería de software:

  • Programación en un idioma de su elección: debe tener un fuerte dominio de al menos un lenguaje de programación. Debería poder comprender rápidamente códigos razonablemente complejos y ejecutarlos mentalmente en seco. Debería poder codificar un escenario complejo en dicho idioma.
  • Resolución de problemas / Algoritmos: los algoritmos en sí mismos son un campo enorme. Se espera que conozca los algoritmos básicos. Tendrá una gran ventaja si conoce los enfoques básicos de resolución de problemas.

    Los 2 temas anteriores constituyen el 50-75% de un proceso de entrevista de ingeniería de software.

  • Diseño del sistema: esto es extremadamente importante si usted es un ingeniero de software experimentado. Necesitas ser bueno en:
    • Comprender los requisitos de un sistema
    • Diseño de sistemas escalables y tolerantes a fallas (escala horizontal versus vertical)
  • Conceptos básicos de lo siguiente [2]:
    • Sistemas operativos: subprocesos y procesos, primitivas de sincronización de subprocesos (semáforos y mutex), gestión de memoria (paginación, intercambio)
    • Bases de datos: consulta de un DBMS relacional, indexación, restricciones de clave primaria y externa, normalización, almacenamiento interno
    • Redes: capas de red, TCP y UDP, estructura de paquetes TCP, enrutamiento de paquetes, subredes
    • Web: cookies, gestión de sesiones, almacenamiento en caché, Http / Https

Hermano .. ¿Hablas en serio? No opte por la industria del software. ¿Crees que estarás codificando todo el tiempo incluso cuando tengas 40 años? Buena suerte