Este artículo trata sobre mi experiencia de entrevista de pasantía con el Programa de Reclutamiento de Campus de Salesforce (Futureforce) en IIT (ISM) Dhanbad. El proceso se llevó a cabo en la primera semana de septiembre en modalidad totalmente virtual.
Ronda 1: Ronda de codificación en línea
- Plataforma: Hackerrank
- Duración: 1 hora 15 min.
- No. de preguntas: 3
Las preguntas son las siguientes:
-
Dada una string de longitud n. Gírelo a la derecha n veces y cuente el número total de strings distintas después de todas las rotaciones.
Ejemplo:
Input:"abc" Output:3 Eplaination:"cab", "bca", "abc". Input:"aaa" Output:1 Eplaination:"aaa".
-
Dado un punto de entrada y una bóveda y diferentes corredores que los conectan. Cada conexión tiene un costo para viajar junto con ella. Genere todas las rutas de entrada a la bóveda junto con el costo total de esa ruta. Todas las rutas resultantes deben estar en orden no decreciente de su costo asociado. Si el costo total de dos caminos es el mismo, entonces el camino con el menor número de corredores visitados debe ser el primero. Si no. de corredores también son iguales, entonces deberían estar en orden alfabético.
Input:"Entrance Vault 75" "Entrance CorridorA 55" "CorridorA Vault 15" Output:"Entrance CorridorA Vault 70" "Entrance Vault 75"
Esta fue una pregunta bastante fácil y la complejidad de tiempo esperada para esto fue O (n).
Esta pregunta parece ser simple y similar para encontrar todas las fuentes a las rutas de destino, pero el problema principal era que todas las entradas estaban en forma de string y uno debe tener que construir una entrada adecuada analizándola. Muchos estudiantes se quedaron atascados aquí analizando y depurando su código.
Dado solo un número n de caracteres se pueden imprimir en una línea. Alinea a la izquierda un texto dado usando el relleno adecuado. Fue una cuestión bastante fácil de implementación y los casos de prueba también fueron bastante fáciles sin casos difíciles.
Más de 200 estudiantes participaron en esta ronda y aquellos que completaron al menos 2.5 preguntas fueron preseleccionados para la siguiente ronda. Hice las tres preguntas, así que fui preseleccionado con otros 13 estudiantes para las entrevistas.
Ronda 2: Primera entrevista técnica en Google Meet. Para esta ronda, me han proporcionado un enlace de par de códigos de hackerrank para codificar en línea. El entrevistador comenzó con una presentación saludable de él y luego, para aligerar el ambiente, me preguntó sobre mi experiencia de encierro y todo eso. Después de una conversación de unos 5-6 minutos, saltó a mi currículum y me pidió que le presentara uno de mis proyectos. Fuera de mis expectativas, me pidió además que dibujara todo el flujo del sistema del proyecto en la pizarra provista en el par de códigos. Hice lo mismo según su consulta y después de una discusión de aproximadamente 10-15 minutos. pasó a la resolución de problemas. Me pidió que implementara el algoritmo de caché LRU en el par de códigos. Escribí el código completo que se puede encontrar aquíy se compiló y ejecutó en el primer intento. Después de esta pregunta, me hizo una pregunta más basada en la implementación de listas vinculadas y luego pasó a los conceptos de ups. Me hizo preguntas como cuál es la diferencia entre clase abstracta e interfaz, qué es una clase interna y en qué se diferencia de una herencia, qué es el polimorfismo y cómo podemos lograr el polimorfismo en tiempo de ejecución, etc. Empecé a responder dando definiciones pero pronto me detuvo y me pidió que le diera ejemplos de la vida real para cada uno de ellos y luego me hizo preguntas una y otra vez. Esta discusión dura alrededor de 20-25 min. Después de eso, me pidió un acertijo basado en el enfoque de divide y vencerás y me pidió que escribiera iteraciones paso a paso de su solución.
Esta ronda tardó alrededor de 1 hora en completarse. El entrevistador fue muy educado y servicial. Después de esta ronda, 5 estudiantes fueron eliminados y el resto pasó a la segunda ronda de entrevistas.
Ronda 3: Segunda Entrevista Técnica en Google Meet. Para esta ronda nuevamente se proporcionó un enlace de par de códigos. El entrevistador primero me pidió que me presentara e interactuara conmigo durante 2-3 minutos. Después de eso, comenzó a cuestionarme sobre la resolución de problemas. La primera pregunta fue,
-
Dada una array, cuente todas las inversiones de longitud tres donde podamos definir una inversión como una secuencia decreciente de elementos.
Ejemplo:
Input:{4,5,3,2} Output:2 Explaination:{{4,3,2},{5,3,2}}
Rápidamente escribí una solución de fuerza bruta con una complejidad temporal de O(n 3), pero para algunos casos de prueba mostraba TLE, por lo que me pidió que optimizara mi solución. Pensé durante aproximadamente 1 min. y luego le dijo un enfoque con triples y codificarlo rápidamente. Pero como la array no estaba ordenada, no funcionó. Luego me dio una pista para usar el concepto de clasificación por fusión y me guió hacia el enfoque lentamente. Finalmente, completé mi solución y él pareció estar satisfecho con ella. Luego pasó a los conceptos de Ups y me pidió que definiera el constructor de copias, el enlace estático y dinámico y las conversiones de tipos. Luego pasó a Sistemas Operativos y me pidió que ilustrara problemas de concurrencia y semáforos. Luego me preguntó cuáles son las operaciones permitidas en el semáforo y definió rápidamente el Problema del Productor-Consumidor. Luego se pasó a DBMS y me hizo un par de preguntas sobre las responsabilidades de Locking y DBA. En este momento, mi red tuvo algunos problemas, por lo que nuestra reunión se canceló y comenzamos nuevamente desde donde lo dejamos en aproximadamente 5-6 minutos. Fue muy solidario y comprensivo en este caso. Me hizo 2 o 3 preguntas sobre redes informáticas como el ducking y la criptografía. Ciertamente quedó muy satisfecho con todas las respuestas que le di. Al final, me preguntó si tenía alguna pregunta, así que me pidió comentarios sobre mi entrevista, y me dijo que la mayoría de los candidatos dan su mayor prioridad a la resolución de problemas y DSA únicamente e ignoran otros conceptos de informática, pero yo Le respondí todas las preguntas sobre informática que me dieron una ventaja adicional sobre otros candidatos. Me hizo 2 o 3 preguntas sobre redes informáticas como el ducking y la criptografía. Ciertamente quedó muy satisfecho con todas las respuestas que le di. Al final, me preguntó si tenía alguna pregunta, así que me pidió comentarios sobre mi entrevista, y me dijo que la mayoría de los candidatos dan su mayor prioridad a la resolución de problemas y DSA únicamente e ignoran otros conceptos de informática, pero yo Le respondí todas las preguntas sobre informática que me dieron una ventaja adicional sobre otros candidatos. Me hizo 2 o 3 preguntas sobre redes informáticas como el ducking y la criptografía. Ciertamente quedó muy satisfecho con todas las respuestas que le di. Al final, me preguntó si tenía alguna pregunta, así que me pidió comentarios sobre mi entrevista, y me dijo que la mayoría de los candidatos dan su mayor prioridad a la resolución de problemas y DSA únicamente e ignoran otros conceptos de informática, pero yo Le respondí todas las preguntas sobre informática que me dieron una ventaja adicional sobre otros candidatos.
Esta ronda dura unos 55 min. y me informaron de inmediato que me trasladaron a la última ronda de entrevistas.
Ronda 4:Entrevista final en Google Meet. Según mis expectativas, esta ronda debería haber sido una ronda de recursos humanos y fue al principio cuando me pidió que me explicara el proyecto, los desafíos que enfrenté durante el mismo y por qué elegí ese proyecto. Pero de repente, fuera de mi expectativa, pasó a la resolución de problemas y me hizo una pregunta. El problema era que, dadas dos arrays ordenadas A y B con algo de espacio adicional en la array B. Tengo que fusionarlos en O (n) complejidad de tiempo sin usar espacio adicional. Le proporcioné 2-3 enfoques y también escribí el código. Luego me dio un acertijo para encontrar el número mínimo de operaciones de pesaje para encontrar una bola de peso impar en un grupo de 6 bolas donde las cinco restantes tienen el mismo peso. Le doy una respuesta satisfactoria y al final me pregunta si tengo alguna pregunta para él.
Esta ronda dura unos 25 min. y por la tarde recibimos los resultados. Se seleccionaron 4 estudiantes de mi universidad y yo fui uno de ellos 🙂
Las cosas clave que aprendí a través de estas entrevistas fueron, trate de ser práctico y tranquilo tanto como pueda, no se siente en silencio por mucho tiempo, no ignore las materias de informática y practique la resolución de problemas tanto como pueda.
Mis mejores deseos !!
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