Para el rol de desarrollador de software (analista):
Ronda 1: Ronda de codificación en línea
2 preguntas de codificación en un límite de tiempo de 2 horas.
Q1. Dado un número ‘x’, y un rango de ‘y’ a ‘z’. Encuentre el conteo de todos los números ‘n’ en ese rango tal que el producto del número ‘n’ y ‘x’ no contenga ningún dígito del número ‘n’. Por ejemplo, si x=2, y=11, z=13, entonces,
- para n=11, 2*11=22 //válido
- for n=12, 2*12=24 //no válido porque 24 contiene 2 de n=12
- para n=13, 2*13=26 //válido
por lo tanto, cuenta=2 ( https://www.geeksforgeeks.org/count-numbers-in-range-such-that-digits-in-it-and-its-product-with-q-are-unequal/ )
Q2. Un hombre viaja de la ciudad A a la ciudad B. Comienza con X cantidad de dinero. Todos los días gasta algo de dinero y también puede trabajar algunos días para ganar dinero. Puede ganar más de lo que gasta el mismo día o puede gastar más de lo que gana el mismo día. Se le proporciona una array de números enteros que representan sus ahorros netos (ingresos-gastos), encuentre la cantidad mínima de dinero con la que debe comenzar para asegurarse de que siempre tenga algo de dinero (> 0) al final de cualquier día. ( https://www.geeksforgeeks.org/minimum-initial-energy-required-to-cross-street/ )
Ronda 2: Ronda Coderpad
2 preguntas de codificación en 1 hora y breve discusión del enfoque con el entrevistador. También escriba una prueba para que el código ejecute casos de prueba.
1. Implementar la clase Deque y sus métodos en Java (enfoque tomado usando una cola de dos extremos).
2. Atrapar el agua de lluvia: https://www.geeksforgeeks.org/trapping-rain-water/
Ronda 3: Ronda de entrevistas – Técnica
- Se le preguntó acerca de la lista doblemente enlazada y cómo funciona. Dado que ocupa espacio, ¿cómo lo optimizaría usando un solo puntero (di la solución usando la lista vinculada XOR).
- Implemente LRU Cache ( https://www.geeksforgeeks.org/lru-cache-implementation/ ).
- Diferencia entre Comparador y Comparable. Dada una clase definida por el usuario Empleado y una lista de empleados, ordene la lista según la edad de los empleados. ¿Qué usará para ordenar, comparador o comparable y por qué? ¿Cómo decidirá cuándo usar comparable y cuándo usar comparador?
- Preguntado sobre objetos anónimos.
- Diferencia entre == y equals().
- Funcionamiento interno de HashMap en java. Cuándo anular equals() y cuándo anular el método hashCode().
Ronda 4: Ronda de entrevistas – Técnica
- Dado n, escribe código recursivo para imprimir series de fibonacci hasta n ( https://www.geeksforgeeks.org/tail-recursion-fibonacci/ ).
- Dada la longitud n, imprima todas las strings binarias posibles de longitud n ( https://www.geeksforgeeks.org/generate-all-the-binary-strings-of-n-bits/ ).
- Tiempo dado hh:mm. Encuentre el ángulo entre las manecillas de minutos y horas del reloj. ( https://www.geeksforgeeks.org/calculate-angle-hour-hand-minute-hand/ )
- Dado un diccionario de palabras más grande, qué estructura de datos usaría para diseñar una opción de búsqueda de tal manera que cuando busque, digamos «escribir», brinde posibles resultados del diccionario como «escrito», «escribiendo», etc. (dije Trie)
- Dadas dos strings S y T. Encuentre la substring más pequeña en S que contiene todos los caracteres de T.( https://www.geeksforgeeks.org/find-the-smallest-window-in-a-string-containing-all-characters- de-otra-string/ )
Ronda 5: Ronda de entrevistas – Técnica
- Dada una lista de dos enlaces donde cada Node en la lista de enlaces denota un número de un solo dígito. Encuentre la suma de ambas listas de enlaces. Foreg- Lista A: 1->2->3, Lista B: 9->1->5, entonces la suma será: 1->0->3->8. ( https://www.geeksforgeeks.org/add-two-numbers-represented-by-linked-lists/ )
- En un entorno de subproceso único, encuentre el primer carácter que no se repite en una string. ( https://www.geeksforgeeks.org/given-a-string-find-its-first-non-repeating-character/ )
- En un entorno de subprocesos múltiples (4 subprocesos), busque el primer carácter que no se repite en una string larga y cada subproceso debe funcionar de forma independiente y simultánea. (Divido la string en 4 substrings y dejo que cada subproceso la resuelva de forma independiente en paralelo y almacene el índice de caracteres no repetidos de substrings en hashmap y luego devuelva los 4 hashmaps al subproceso principal. Luego, el subproceso principal leerá 4 hashmaps y encontrará el resultado final de primer carácter no repetido)
- ¿Cómo escribirás pruebas para una función (pruebas unitarias)? Preguntado sobre burlas y parches.
- Se le preguntó acerca de la inyección de dependencia (debido a mi proyecto en primavera) y ¿mejora la prueba de su aplicación? Si es así, ¿cómo?
- Preguntado sobre patrón singleton.
Ronda 6: Ronda de entrevistas – Gerente de contratación
- Preguntado sobre el proyecto actual en la empresa en detalle.
- ¿Por qué dejar la empresa actual?
- ¿Por qué Goldman Sachs?
- Además de los aspectos técnicos, ¿alguna vez contribuyó en aspectos no técnicos en su organización actual?
- Se le preguntó un poco sobre el flujo de trabajo ágil.
¡¡Por fin CONTRATADO!!
Gracias GeeksForGeeks por proporcionar una plataforma tan increíble para prepararse.
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