Experiencia de entrevista de Goldman Sachs | Conjunto 23 (más de 2 años de experiencia para el rol de desarrollador de Java)

Pasé por una entrevista en Goldman Sachs en su oficina de Bengaluru para el rol de desarrollador de Java, y me gustaría compartir mi experiencia con usted para ayudar a todos a pasar y prepararse bien para lo mismo.
La hora de presentación era a las 9:30 am, llegué allí antes de tiempo, me dieron una identificación temporal y las rondas comenzaron alrededor de las 11:00 am.

Ronda 1 (escrito: 1 hora)
Todos recibimos un cuestionario con 3 preguntas y hojas de respuestas con una duración de 1 hora.
1. Escriba un método para convertir un número (rango: 0 a 9 mil millones) en un literal de string, por ejemplo, entrada de muestra: 12345, salida de muestra: Doce mil trescientos cuarenta y cinco.
2. Combine dos listas de arreglos en una sin usar las funciones incorporadas, asigne y establezca, elimine todos los duplicados de la lista combinada y también imprima el número de duplicados.
3. Se proporcionaron dos tablas con relación de clave externa en una tabla con la otra, y se dieron 2 escenarios, es necesario escribir SQL con operadores de combinación, agregados, etc. entre ambas tablas y obtener resultados.

Después de esto, en media hora se declararon los resultados, y justo después de eso me llamaron para la próxima ronda.

Ronda 2 (F2F: alrededor de 40 minutos)
Dos muchachos tomaron esta ronda
1. Se les preguntó sobre el trabajo actual, el trabajo, el proceso de construcción y los procesos de prueba que usamos, etc.
2. Se hicieron muchas preguntas de las colecciones de Java, Comparable, Comparator, hashmap sincronizado, equals(), hashcode(), funcionamiento interno de hashMap, etc.
3. Algunas consultas SQL usan uniones, agrupar por, tener, contar, etc.
4. Escenarios de subprocesos múltiples, problema del consumidor del productor, escribir un programa para interbloqueo entre 2 subprocesos, bloqueo en el objeto etc.
5. Busque el elemento medio de la lista enlazada, busque el último elemento enésimo de la lista enlazada.
6. Programa para series tribonacci.
7. Características de java8.

Esta ronda salió muy bien, di respuestas optimizadas para la mayoría de los problemas. Después de esto, esperé alrededor de 3 horas antes de la siguiente llamada de ronda, almorcé en el medio.

Ronda 3 (F2F: alrededor de 20-25 minutos)
Dos damas tomaron esta ronda
1. Cuando me preguntaron sobre mi proyecto actual en detalle, me dieron varios escenarios, cómo sucederá esto en su proyecto actual, explicar paso a paso, tablas DB involucradas, cómo los datos persistirán, etc.
2. Me dieron un escenario hipotético y me dijeron que diseñara una aplicación para él (ya sea usando el modelo DB o el modelo Object) y lo explicara.

Expliqué todo bien y también creé un buen diseño para el segundo problema. Después de esta ronda esperó alrededor de 15 minutos, para la siguiente ronda

Ronda 4 (F2F: alrededor de 20-25 minutos)
1. Se le preguntó sobre el proyecto completo en detalle, la organización actual, el motivo del cambio, etc.
2. Escriba un programa para implementar la cola usando no más de 2 pilas
3. Escriba un programa para equals() método para comparar el contenido de 2 objetos, usé el operador instanceOf para verificar el tipo de clase, pero me pidió que lo cambiara de tal manera que todos los objetos de la subclase (con el mismo contenido) también devolvieran falso cuando se compararon usando el método equals(), así que usé método getClass() en lugar de instanceOf para comparar el tipo de objeto.

El entrevistador parecía estar muy impresionado después de esta ronda, en unos 5 minutos, recibió una llamada para la próxima ronda.


Ronda 5 (F2F: alrededor de 20-25 minutos) El

entrevistador era el jefe de tecnología de Java

1. Dio algunos escenarios relacionados con el borrado de tipos en Java, y me preguntó el resultado/error esperado, no estaba muy al tanto de esto, primero di una respuesta incorrecta, luego me explicó qué tipo de borrado es, pude responder más preguntas en este.
2. Algunas preguntas relacionadas con String Constant Pool, respondí correctamente.
3. ¿Qué no te gusta/inconvenientes de Java? nuevas características en java8.
4. Luego me dio el siguiente escenario y me dijo que escribiera el programa,
Escriba un método que tome la lista como entrada y devuelva cualquier valor aleatorio de la Lista como salida, con la probabilidad de devolución debe ser la misma para todos los elementos de la lista, se le proporciona una función aleatoria de ayuda que da un valor de 0.0000 a 0.9999999 (considere estos los números son muy precisos y no debemos preocuparnos por la precisión). No pude llegar a un enfoque de igual probabilidad, así que finalmente me dio algunas pistas, con las que obtuve la respuesta.
Sea x el valor aleatorio devuelto por el método aleatorio y n el tamaño de la lista de entrada.
x puede variar de 0.000 a 0.999
, queremos devolver el índice de lista de 0 a n-1.
respuesta tan simple, multiplique x con n, para obtener índices de 0 a n-1, y devuelva el valor correspondiente de la lista.

5. Luego cambió el método aleatorio de la pregunta anterior y le dijo que puede dar cualquiera de estos valores 0,1,2,3,4,5,6,7,8 o 9, ahora resuelva el mismo problema, probé muchos enfoques pero no fue capaz de obtener ninguna respuesta satisfactoria.
Más tarde, después de que terminó la entrevista, lo pensé y obtuve la respuesta usando el siguiente enfoque
. Sea x el valor aleatorio devuelto por el método aleatorio, y n sea el tamaño de la lista de entrada.
x puede variar de 0 a 9.
Obtenga el número de dígitos en n (tamaño de la lista), digamos que el tamaño de la lista es 230, por lo que tiene 3 dígitos.
Ahora necesitamos convertir x de 0 – 9 a 0.000 – 0.999
Para esto podemos llamar al método aleatorio 3 veces, y digamos que devolvió 3 valores aleatorios x1,x2,x3 (todos los valores se encuentran en 0,1,2,3, 4,5,6,7,8,9)
Ahora podemos hacer 0.1*x1 + 0.01*x2 + 0.001*x3 para obtener un número aleatorio de 0.000 a 0.999. Ahora, utilizando el enfoque de la pregunta 4, podemos obtener la respuesta.
Ojalá hubiera podido pensar en esto durante la entrevista.

Mi entrevista se llevó a cabo el sábado, me dijeron que volverían el lunes, pensé que mis rondas anteriores fueron muy bien y es posible que equilibren algunas fallas en la última ronda, pero desafortunadamente no fue así, el lunes me informaron que pueden No llevaré adelante mi candidatura. Sentí que perdí una oportunidad muy grande por un margen muy pequeño. 🙁
Deseo que esta publicación sea útil para todas las personas que aparecerán en la entrevista de Goldman Sachs, todo lo mejor para todos ustedes. 🙂

Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo y enviarlo por correo electrónico a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *