Comparte

Guía de preparación para entrevistas de ingenieros de software para entrevistas de codificación, diseño de sistemas, diseño de bajo nivel y de comportamiento

Hola chicos, si se preguntan cómo prepararse para las entrevistas de ingeniería de software, particularmente la entrevista de codificación y la entrevista de diseño de sistemas en 2024 y 2025, entonces han venido al lugar correcto.

Anteriormente, compartí los mejores libros , cursos y preguntas de entrevistas de codificación y hoy, voy a compartir con ustedes más recursos y áreas y temas clave que deben preparar y cómo prepararlos.

Como autor de un blog popular sobre Java y de una publicación en Medium, a menudo recibo preguntas sobre cómo prepararme rápidamente para una entrevista de codificación. Tengo dificultades para entender el concepto de diseño de sistemas y DSA. ¿Pueden recomendarme recursos? ¿Cuáles son los mejores libros sobre entrevistas de codificación que puedo leer o los mejores cursos a los que puedo unirme? etc.

Después de responder a muchas de ellas individualmente, pensé en escribir una publicación detallada sobre cómo abordar las entrevistas de codificación en 2024 y 2025, ya que las cosas han cambiado mucho en los últimos años, especialmente debido a la IA y la situación actual, conseguir trabajo en tecnología no es tan fácil como antes, a menos que no estés en India, Polonia o China.

Como alguien que ha navegado con éxito en más de 100 entrevistas y tiene experiencia en ambos lados de la mesa, tanto como candidato como entrevistador, he compilado una extensa lista de recursos que han resultado invaluables en mi viaje de preparación.

Esta guía cubre todo, desde entrevistas de codificación hasta diseño de sistemas, diseño de bajo nivel y entrevistas de comportamiento, ofreciendo una combinación de recursos gratuitos y pagos para adaptarse a las necesidades de cada estudiante.

También complementa mis recursos anteriores que compartí sobre entrevistas de codificación y diseño de sistemas como

Los 6 mejores cursos de Udemy para la preparación de entrevistas de programación en 2024

Estos son los mejores cursos de preparación para entrevistas de codificación que puedes comprar en oferta en Udemy en 2024

medio.com

Mis cursos favoritos de Udemy para aprender diseño de sistemas en 2024

Estos son los mejores cursos de Diseño de Sistemas a los que puedes unirte no solo para prepararte para las entrevistas de Diseño de Sistemas, sino también para…

medio.com

Los 10 mejores lugares para aprender diseño de sistemas en 2024

Estos son los mejores lugares para aprender Diseño de Software y Diseño de Sistemas en línea y prepararse bien para el Diseño de Sistemas…

medio.com

¿Cómo aprobar las entrevistas de ingenieros de software en 2024/25?

Aquí tienes una guía completa y recursos para prepararte para las entrevistas de Ingeniería de Software en 2024 y el año que viene. Comenzaremos con libros y luego veremos cursos y sitios web para prepararnos mejor.

1. Dominar las entrevistas de codificación

Aquí están los mejores libros, listas de reproducción de YouTube y cursos en línea que puedes tomar para prepararte para la entrevista de codificación, incluidas estructuras de datos y algoritmos.

1.1 Libros esenciales

1.2 Listas de reproducción de YouTube

1.3 Cursos en línea

Estructuras de datos y algoritmos

Ofrecido por la Universidad de California en San Diego. Domina las técnicas de programación algorítmica. Mejora tu software…

coursera.pxf.io

1.4 Plataformas de práctica

  • LeetCode: la plataforma ideal para la preparación de entrevistas de codificación.
  • HackerRank: ofrece una amplia gama de desafíos y concursos de programación.
  • CodeSignal: incluye evaluaciones específicas de la empresa y práctica de entrevistas.

1.5 Listas de problemas seleccionadas

  • Algomonster : patrones de codificación y problemas seleccionados
  • Educative-99 — (Disponible tanto en Python como en Java) Te enseñaré 26 patrones clave de entrevistas de codificación.
  • Ciego 75
  • Entrevista a los 150 mejores de LeetCode
  • Los 100 problemas más populares de LeetCode
  • Grind 75: una versión actualizada de Blind 75 con más problemas y planes de estudio personalizables.

2. Entrevistas sobre diseño de sistemas de craqueo

El próximo desafío es superar la entrevista de diseño de sistemas, que es notoriamente difícil debido a su naturaleza amplia y preguntas abiertas.

Aquí hay algunos cursos , libros , sitios web, boletines , hojas de trucos y entrevistas simuladas sobre diseño de sistemas que puede tomar para prepararse para las entrevistas de diseño de sistemas.

2.1 Libros que debes leer

Diseño de aplicaciones con uso intensivo de datos: las grandes ideas detrás de aplicaciones confiables, escalables y mantenibles…

Diseño de aplicaciones con uso intensivo de datos: las grandes ideas detrás de sistemas confiables, escalables y mantenibles [Kleppmann…

www.amazon.com

Entrevista de diseño de sistemas: una guía para expertos

Entrevista sobre diseño de sistemas: una guía para expertos [Xu, Alex] en Amazon.com. Envío GRATIS para compras que cumplan los requisitos. Entrevista sobre diseño de sistemas: una guía para expertos [Xu, Alex] en Amazon.com. Envío GRATIS para compras que cumplan los requisitos.

www.amazon.com

2.2 Canales de YouTube reveladores

  • ByteByteGo : ofrece videos cortos y centrados en diversos temas de diseño de sistemas.
  • Tech Dummies: explicaciones detalladas de problemas comunes de diseño de sistemas.
  • CodeKarle : calidad antes que cantidad, ofreciendo información única.
  • Gaurav Sen: explica conceptos complejos de diseño de sistemas de una manera accesible.

2.3 Cursos de profundización

ByteByteGo | Preparación para entrevistas técnicas

Todo lo que necesitas para llevar tus habilidades de diseño de sistemas al siguiente nivel

poco.ly

Preparación para entrevistas de productos, ingeniería, ciencia de datos y más – Exponent

Nuestros cursos te ayudan a prepararte para las entrevistas y a destacar en tu trabajo. Obtén consejos de líderes técnicos y propietarios de productos…

poco.ly

2.4 Repositorios de GitHub para el diseño del sistema

GitHub – javabuddy/best-system-design-resources: Una colección de los mejores recursos para aprender sobre sistemas…

Una colección de los mejores recursos para aprender diseño de sistemas, arquitectura de software y prepararse para entrevistas de diseño de sistemas…

github.com

3 entrevistas de diseño de bajo nivel

Ahora, pasemos al diseño de bajo nivel y descubramos lo que se necesita para superar esta ronda.

3.1 Libros fundamentales

  • “ Head First Design Patterns ” : una introducción interesante a los conceptos y patrones de diseño de programación orientada a objetos.
  • “ Clean Code ” de Robert C. Martin: principios para escribir código mantenible y eficiente.

Patrones de diseño de Head First: creación de software orientado a objetos extensible y mantenible 2.º…

Patrones de diseño de Head First: creación de software orientado a objetos extensible y mantenible 2.ª edición [Freeman, Eric…

www.amazon.com

Código limpio: un manual de desarrollo ágil de software

Clean Code: A Handbook of Agile Software Craftsmanship [Robert C. Martin] en Amazon.com. Envío GRATIS en compras elegibles…

www.amazon.com

3.2 Cursos de desarrollo de habilidades

Entendiendo la entrevista de diseño de bajo nivel usando principios OOD

Prepárese para su entrevista de diseño orientado a objetos con este curso estratégico. Domine su entrevista de diseño orientado a objetos…

www.educativo.io

3.3 Repositorios completos de GitHub

4. Entrevistas de comportamiento

Ahora, pasemos a la entrevista conductual, que es un buen indicador de que estás cerca de alcanzar tu objetivo, pero aún no tienes la oferta en tus manos.

4.1 Estrategias de preparación

  • Cree un documento de Notion o utilice una herramienta similar para compilar y responder preguntas de comportamiento comunes utilizando el marco STAR.
  • Practica la narración de historias para que tus experiencias sean más atractivas y memorables.

Aquí hay un ejemplo del marco STAR donde cuenta cómo mejoró el rendimiento de una aplicación o API de rendimiento lento.

Situación:

  • Me asignaron la tarea de optimizar una aplicación web de rendimiento lento que experimentaba retrasos significativos durante el uso pico.

Tarea:

  • Identifique la causa raíz del cuello de botella en el rendimiento e implemente soluciones para mejorar los tiempos de respuesta.

Acción:

  1. Creación de perfiles: utilicé herramientas de creación de perfiles para analizar las métricas de rendimiento de la aplicación, como el uso de CPU, el consumo de memoria y los tiempos de ejecución de consultas de base de datos.
  2. Identificación de cuellos de botella: descubrí que la aplicación estaba realizando consultas excesivas a la base de datos, particularmente durante operaciones de búsqueda complejas.
  3. Optimización: implementé técnicas de optimización de consultas de bases de datos, que incluyen indexación, almacenamiento en caché y reescritura de consultas. También optimicé el código de la aplicación para lograr eficiencia al reducir cálculos innecesarios y asignaciones de memoria.
  4. Pruebas: Probé exhaustivamente la aplicación optimizada para asegurarme de que cumpliera con los requisitos de rendimiento y no introdujera ningún error nuevo.

Resultado:

  • Los tiempos de respuesta de la aplicación mejoraron significativamente, lo que generó una mejor experiencia de usuario y una mayor satisfacción del cliente. Los esfuerzos de optimización también redujeron la carga del servidor, lo que resultó en ahorros de costos para la organización.

Puedes ver lo efectiva que es esta técnica.

4.2 Recursos recomendados

Cómo superar la entrevista de PM: cómo conseguir un trabajo de gerente de producto en tecnología (Cómo superar la entrevista…

¿Cuántas pizzas se reparten en Manhattan? ¿Cómo se diseña un despertador para ciegos? ¿Cuál es tu pieza favorita…

www.amazon.com

5. Perfecciona tus habilidades para la entrevista

Se dice que la práctica te hace perfecto y en las entrevistas ocurre lo mismo. Cuanto más te esfuerces, más posibilidades tendrás de tener éxito, pero en el mundo real, cada oportunidad es una oportunidad perdida, así que es mejor que utilices entrevistas simuladas en sitios como Exponent y Designgurus.io para practicar.

5.1 Plataformas de entrevistas simuladas

  • Pramp : ofrece entrevistas simuladas gratuitas entre pares.
  • Designgurus.io : un sitio web que te brinda la oportunidad de ser entrevistado por ex ingenieros de FAANG, como el ex ingeniero de Microsoft y Facebook Arslan Ahmad
  • InterviewBit: proporciona un entorno de entrevistas realista con desafíos de codificación cronometrados.
  • Interviewing.io: entrevistas técnicas anónimas con ingenieros de las principales empresas.

Coaching y entrevistas simuladas para su trabajo en el sector tecnológico – Exponent

Conéctese con un experto en su campo para practicar entrevistas simuladas, revisar su currículum o crear un plan de estudio.

www.tryexponent.com

5.2 Competiciones de codificación

  • Concursos virtuales LeetCode: competencias de codificación periódicas para poner a prueba tus habilidades bajo presión del tiempo.
  • Concursos HackerRank: ofrece diversas competiciones de codificación temáticas.

5.3 Consejos adicionales

  • Grábate explicando soluciones para identificar áreas de mejora en tu comunicación.
  • Únase a comunidades de codificación en Discord o Reddit para discutir problemas y estrategias con sus compañeros.

Eso es todo acerca de los mejores recursos para las entrevistas de ingeniería de software. He compartido muchos recursos excelentes para prepararse bien para las entrevistas de codificación y diseño de sistemas en 2024 y 2025. Contiene una gran cantidad de recursos, pero es posible que deba consultarlos todos, solo elija dónde se conecta mejor.

Recuerde que la práctica constante y un enfoque estructurado del aprendizaje son clave para el éxito en la entrevista.

También puede personalizar esta guía según sus necesidades, centrándose en las áreas donde necesita más mejoras.

¡Buena suerte con la preparación de tu entrevista!

Otros artículos y recursos sobre diseño de sistemas que te pueden interesar

Gracias por leer este artículo hasta ahora. Si te gusta esta solución de entrevista de diseño de sistemas de Twitter, compártela con tus amigos y colegas. Si tienes alguna pregunta, no dudes en hacerla en los comentarios.

PD: Por cierto, DesignGuru.io también tiene muchos otros cursos de Grokking para prepararse para temas esenciales de entrevistas de codificación como diseño OOP, diseño de sistemas, programación dinámica, etc. y puedes obtener acceso a todos sus cursos con un gran descuento al unirte a su paquete All course .

Abrir chat
Hola
¿En qué podemos ayudarte?