Experiencia de entrevista CGI para ingeniero de software – Part 2

Tengo más de 4 años de experiencia como desarrollador Java.

Total 3 rondas (2 Técnicas + 1 Gerencial)

La ronda de recursos humanos fue solo formalidades.

Fui contactado directamente por el equipo de reclutamiento de CGI, preseleccionaron mi perfil de Naukri.

Ronda 1 (Teléfono durante aproximadamente 1 hora): Core Jave me hizo preguntas (concepto OOP en profundidad). También me hicieron preguntas sobre las nuevas características de Java 8 (expresión Lambda, interfaz funcional, cambios en la colección Hashmap y Garbage en Java 8), colección, manejo de excepciones, subprocesos múltiples, serialización, SQL.

  1. Cómo funcionan internamente HashMap y ConcurrentHashMap y las ventajas de ConcurrentHashMap sobre HashMap.
  2. Explique intentar con los recursos. Por qué no necesitamos bloquear finalmente aquí.
  3. ¿Por qué esperar(), notificar() y notificarTodos() están en la clase Objeto y no en la clase Subproceso? ¿Por qué?
  4. ¿Cómo lograr la seguridad de subprocesos además de usar la sincronización? (semáforo y mutex)
  5. ¿Cuántas formas conoces para romper un patrón de diseño singleton? ¿Cómo los arreglarás?
  6. Serialización personalizada y diferencia de externalización con un ejemplo.
  7. Detectar un bucle en una lista enlazada.
  8. Indexación en SQL, cómo escribir una consulta optimizada.

Ronda 2 (Microsoft Teams durante aproximadamente 1 hora y 15 minutos): en su mayoría, me pidieron que escribiera programas Java usando el bloc de notas ++ (sin IDE: P))

  1. Cree su propia clase inmutable con un objeto mutable como Fecha
  2. Dada una clase de empleado que tiene id de atributo, nombre, salario. Escriba un programa para ordenar el objeto del empleado usando el salario, si el salario es el mismo, clasifíquelo usando el nombre.
  3. Dada una clase de empleado que tiene id de atributo, nombre, salario. Escriba un programa para almacenar objetos de empleados en un mapa para que no se almacenen dos empleados duplicados en el mapa.
  4. Dada una string, encuentre el primer carácter duplicado de ella.
  5. Dada una string, encuentra el palíndromo más largo de ella. (Solo enfoque y algoritmo que le interesaba)
  6. Explicar el marco de ejecución de servicios. enviar vs ejecutar.

Ronda 3 (Equipos de Microsoft durante unos 40 minutos):

Fue una ronda de gestión. Me preguntaron por qué estoy cambiando nuevamente a una empresa basada en servicios desde una basada en productos. Cuéntame sobre las 2 situaciones más desafiantes que has enfrentado en tu último proyecto. ¿Cómo los superaste? Luego explicó sobre el proyecto, las tecnologías que estaban usando. Él fue muy educado y bien informado. fue una linda experiencia 

Ronda 4 (Microsoft Teams durante unos 30 minutos): la ronda de recursos humanos fue solo una formalidad. 

Discusión sobre el salario y qué tan pronto puedo unirme.

Puntas:

  • Ten confianza en tu respuesta. Está bien si no sabes alguna respuesta. Decir no cortésmente es mejor que dar una respuesta incorrecta.
  • Practique muchas preguntas de programación de sitios como GeeksforGeeks, HackerRank, etc. Tener conocimientos teóricos es bueno, pero el entrevistador espera conocimientos prácticos y capacidad para resolver problemas.
  • Mantén una sonrisa en tu rostro incluso si te han puesto en una situación difícil. Están poniendo a prueba tu capacidad de cómo te comportas en una situación de presión. Haz tu mejor esfuerzo, tu actitud es lo que les importa.
  • ¡Todo lo mejor, vas a rockear!

Publicación traducida automáticamente

Artículo escrito por avinashkumarb6 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *