Recientemente, OYO Rooms vino a nuestro campus para contratar a tiempo completo para el puesto de ingeniero de software.
Ronda 1: prueba en línea
20 MCQ sobre estructuras de datos, OS, DBMS, preguntas de salida C. Sin marcado negativo.
2 preguntas de codificación –
- Hay una pista circular y N corredores. Se le da una serie de minutos que cada corredor tarda en completar una ronda de la pista. El tiempo es un factor de K entero. Cada corredor tiene una gema y cada vez que se cruzan corredores que corren a diferentes velocidades, intercambian gemas. Debe imprimir el número total de intercambios realizados después de que hayan transcurrido K minutos.
La solución basada en los ejemplos fue crear una nueva array de la cantidad de rondas completadas por cada corredor y luego encontrar la suma de las diferencias de todos los pares.
- Dada una serie de clasificaciones de películas donde -10<= Clasificación <= 10, y ‘K’ tal que exactamente las clasificaciones K en la array se pueden cambiar (positiva a negativa y viceversa, cualquier número de veces), proporcione la suma máxima de clasificaciones de películas posibles.
Enfoque: Piense en términos de todas las calificaciones positivas, número de calificaciones negativas > K y si el número de calificaciones negativas < K
Preseleccionaron a 35 estudiantes de aproximadamente 100 estudiantes después de esta ronda.
Ronda 2: Entrevista Técnica – I
- ¿Qué es un semáforo ? ¿Vida real, ejemplo práctico?
Hice preguntas sobre lo que expliqué, como qué es una sección crítica, conteo y semáforos binarios, etc. - Ventaja de la lista doblemente enlazada sobre la lista enlazada simple. ¿Qué operación es mejor en la primera, por qué?
Esta fue una prueba de presión. El entrevistador preguntaba constantemente “¿Estás seguro? ¿Es esa la única razón por la cual?” aunque yo había dado la respuesta correcta. - Breve introducción de la aplicación web del lado del cliente que hice.
- Busque en una array ordenada y rotada.
Se preseleccionaron entre 15 y 20 estudiantes.
Ronda 3: Entrevista Técnica – II
- presentarse brevemente
- Dada una lista enlazada con 2 punteros asociados con cada Node; uno que apunta al siguiente Node y otro que apunta a un Node aleatorio en la lista enlazada. Duplica esta lista enlazada.
No tenía la menor idea de cómo hacer esto y la respuesta se pensó en el acto. Primero comencé con un enfoque de complejidad de tiempo O (n ^ 2), luego pidió una solución en tiempo lineal. Di una solución en tiempo lineal pero requería O(n) espacio extra. Además, me pidió que optimizara esto, aquí estaba atascado e insinuó que podía modificar la lista original y le di una solución, pero no pude descubrir cómo restaurar la lista vinculada modificada a su estructura original. Pero él estaba satisfecho con mi solución, dijo: «Estás muy cerca, si piensas un poco más, lo obtendrás», pero siguió adelante de todos modos.
- Si quiero imprimir «1» 100 veces, puedo ejecutar un bucle for una vez o ejecutar 10 subprocesos que impriman 10 1 en cada subproceso. Qué enfoque es mejor en qué caso.
Dije que en un sistema de un solo procesador, el proceso único es mejor ya que el cambio de subprocesos llevará tiempo y la ejecución simultánea de subprocesos solo es posible en un sistema multiprocesador y también los recursos que se asignarán a los 10 subprocesos, por separado para realizar lo mismo operación, que en cierto modo es un desperdicio. Quedó satisfecho con mi respuesta.
(basado en CV)
- Describa el patrón MVC. Cualquier patrón de diseño que no sea MVC.
- Qué es la programación de sockets y una breve discusión sobre los eventos y los respaldos en caso de que los sockets no sean compatibles con el navegador.
- (Basado en lo que respondí anteriormente) ¿Qué significa que HTTP no tiene estado? ¿Podemos almacenar datos en el lado del cliente? (cookies y almacenamiento local)
- Cualquier pregunta para él. Pregunté a algunos sobre el proceso de capacitación, con qué equipo trabajaremos, el equilibrio entre el trabajo y la vida, etc.
Fui uno de los 10 estudiantes que seleccionaron. Habían mantenido la tercera ronda como opcional, según los comentarios del entrevistador.
En general, los entrevistadores fueron muy, muy serviciales, educados y comprensivos. Todo el equipo dio una buena vibra y tuvo un enfoque positivo.
Mi más sincero agradecimiento a geeksforgeeks por proporcionar una plataforma maravillosa para estudiar y practicar para las prácticas. Gracias !
Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
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