Hola amigos, recientemente me entrevistaron en PayPal para el puesto de desarrollador Java backend (desarrollador de software). Para dar una visión general, tengo una experiencia de más de 2,5 años.
Ronda 1: OA (HackerRank) 3 preguntas de nivel medio-difícil basadas en programación dinámica y manipulación de strings. En todas las preguntas, se pasaron todos los casos de prueba. El mismo día por la noche, me informaron que había aprobado OA y que programarían 3 o más rondas de entrevistas después de una semana. Cada ronda sería una ronda de eliminación.
Ronda 2: DSA + Algoritmos
- Dado un tablero de m*n que tiene los caracteres ‘+’ y ‘0’, origen y destino. Calcular si podemos llegar desde el origen al destino dado que no podemos movernos a la celda ‘+’ (Un problema tradicional de BFS/DFS). Más tarde se modificó para que podamos salir de cualquier límite donde la celda límite sea 0, calcular los movimientos mínimos.
https://www.geeksforgeeks.org/check-possible-path-2d-matrix/ - Encuentre la intersección en múltiples LinkedList cuando los Nodes pueden tener valores duplicados. Luego discutimos el concepto de secuenciación.
https://www.geeksforgeeks.org/write-a-function-to-get-the-intersection-point-of-two-linked-lists/
Ronda 3: Codificación básica de Java + LLD
- Establecer s = new TreeSet<Object>()
s.add(10)
s.add(“ABC”)
s.add(new User())
¿Funcionará esto? No, lanzará ClassCastException. - Encuentre el último tercer Node en LinkedList. Más tarde me pidieron que escribiera un código genérico donde podemos encontrar el último elemento k en cualquier LinkedList.
https://www.geeksforgeeks.org/nth-node-from-the-end-of-a-linked-list/ - LLD: inicio de sesión + registro + página de perfil (API REST)
El diseño debe admitir la autenticación y autorización de los usuarios (elegí la seguridad de primavera). Tuve que definir clases, métodos, tablas de base de datos y elegir la base de datos (elegí MongoDB porque es barato).
Más tarde me hicieron preguntas sobre cómo manejaré subprocesos múltiples y escalado.
Ronda 4: Discusión del gerente de contratación
- Discusión detallada sobre Proyectos.
- El más desafiante
- Discusión detallada sobre las características de Java 8
- REST sin estado
- Marcos de prueba
- Usamos SonarQube para las comprobaciones de calidad del código, así que las preguntas relacionadas con eso.
Veredicto: Seleccionado
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