Cisco visitó nuestro campus para contratar pasantes para 2020-21. Todo el proceso se hizo de forma virtual debido a la pandemia.
Ronda 1 (Ronda en línea – 60 min): La primera ronda consistió en 2 preguntas de codificación y 15 MCQ. El tiempo asignado fue de 1 hora. Los MCQ consistieron en aptitud, preguntas básicas de resultados, trabajo en red y también algunos otros temas. La prueba se realizó en Hackerrank y se permitió la navegación entre las preguntas. Solo se permitieron tres idiomas para las preguntas de codificación: C, JAVA y Python.
Preguntas de codificación:
-
Dos jugadores están jugando al juego de scrabble ‘n*n’ durante algún tiempo. Las celdas con letras se marcan como 1 y las vacías se marcan como 0.
El objetivo es contar el número de formas con exactamente X caracteres resueltos en el tablero.
Sample Input: 00100 11100 10111 10010 11111 X=3 Sample output: 4
-
El mismo problema exacto se da a continuación con algunas descripciones diferentes. https://www.codechef.com/problemas/H1
Resolví ambos problemas de codificación por completo y resolví más de la mitad de los MCQ. El resultado salió después de 3 o 4 días y fui preseleccionado para la entrevista. La entrevista se programó en Cisco WebEx.
Ronda 2: entrevista técnica (60 min): esta ronda comenzó con una breve presentación de mí mismo y un recorrido rápido por mi currículum. Había mencionado el colaborador del equipo como mi habilidad blanda, por lo que me pidió que le diera una situación en la que había actuado como colaborador del equipo.
- Preguntó sobre las clases de almacenamiento en C. Le expliqué las diversas clases y sus detalles. Luego preguntó sobre la palabra clave estática en C. Luego preguntó la diferencia entre variables estáticas globales y variables globales. No sabía su respuesta, así que siguió adelante.
- Me pidió que escribiera un código de una estructura en C y me dio las variables para esa estructura. Luego me pidió que le dijera el tamaño de esa estructura. Le pregunté si tenía que considerar el relleno de estructura o no. Me dijo que simplemente le dijera cuál será el tamaño del código que se ejecuta. Luego le dije el tamaño teniendo en cuenta el acolchado de la estructura. Me pidió que explicara qué es el relleno de estructura. Luego hizo algunas modificaciones en la estructura dada y nuevamente me pidió que le dijera el tamaño y cómo calculé el tamaño. Luego preguntó si había alguna forma de evitar el relleno de la estructura. Le dije su respuesta y pareció satisfecho con ella.
- Luego, básicamente me dio dos arrays de caracteres y me pidió que calculara el número de ocurrencias de uno en otro. Le dije que la búsqueda ingenua de patrones tomaría O (m * n) tiempo, por lo que usaría el algoritmo KMP. Me pidió que simplemente escribiera su código. Escribí el código y él me pidió que hiciera un simulacro en una entrada de muestra dada. Como expliqué el código, había un error en él y lo identifiqué durante la ejecución en seco y lo corregí. Parecía satisfecho con eso.
- Me preguntó si las redes informáticas habían estado en mi plan de estudios y respondí negativamente. Sin embargo, yo había hecho mi proyecto en programación de sockets, así que me preguntó cómo lo había hecho y me explicó el concepto de sockets y cómo funcionan. Luego me preguntó sobre los tipos de enchufes. Le hablé de TCP y UDP. Luego me pidió que los explicara y dijera las diferencias. Los había estudiado y expliqué los detalles y el funcionamiento de los mismos. Luego me preguntó si sobre otros protocolos a un nivel inferior. Le hablé sobre el Protocolo de Internet. Luego me preguntó si había oído hablar de IPv4 e IPv6. Le dije que sí, luego me pidió que se los explicara. Le conté todo en detalle, incluidas las diferencias clave, y pareció bastante satisfecho.
Después de eso, me preguntó si tenía alguna pregunta. Me hice un par de preguntas y se acabó.
Después de 20 minutos, me informaron que fui seleccionado para la entrevista gerencial.
Ronda 3-Ronda Gerencial (45 min): La entrevista comenzó con una breve presentación mía. Lo primero que me preguntó el entrevistador sobre los proyectos mencionados en mi currículum. Había mencionado dos proyectos, así que expliqué brevemente sobre ambos proyectos.
No hizo preguntas cruzadas sobre los proyectos.
- Luego me dijo que, como había mencionado C++ en mi currículum, me pidió que le contara todo lo que había hecho especialmente en C++. Le dije que uso C++ principalmente para programación competitiva. De nuevo me pidió que le dijera algo que había hecho en C++. Inicialmente, no entendí bien su pregunta, pero luego le comenté varios problemas de programación competitivos que había resuelto usando C++.
- Luego me preguntó acerca de las diversas estructuras de datos que he estudiado. Le dije arrays, pilas, listas enlazadas, gráficos y árboles. Luego me pidió que escribiera un código para una lista enlazada. Pregunté si se trataba de una lista con enlaces simples o enlaces dobles. Me dijo que era la lista de enlaces individuales. Luego escribí código en el Bloc de notas y compartí mi pantalla. Luego me pidió que escribiera una función para recorrer la lista enlazada. Escribí el código y me pidió que lo ejecutara en seco, lo cual hice. Luego me preguntó si había estudiado el gráfico, a lo que respondí afirmativamente. Luego me preguntó cómo se pueden representar los gráficos. Le hablé de la lista de adyacencia y la array de adyacencia. Me pidió que lo representara como un Node de lista enlazada. Luego comencé a escribir código para él y le pregunté si el número máximo de Nodes a los que se fija un Node gráfico o no. Si es fijo, Usaría una array estática de punteros GraphNode para representar los Nodes conectados, mientras que en otro caso, crearía dinámicamente los Nodes secundarios. Quedó impresionado con mi pregunta. Nuevamente le hice un par de preguntas, si la gráfica estaba dirigida o no dirigida, y si la gráfica estaba conectada o desconectada. Discutí diferentes estructuras de Nodes de gráficos con diferentes casos. Parecía impresionado con eso y siguió halagándome acerca de mi proceso de pensamiento.
- Luego me pidió que escribiera un Node gráfico simple y no dirigido, lo cual hice. Luego pidió escribir una función para atravesar la gráfica. Comencé a escribir código, pero me pidió que discutiera el enfoque solo, lo cual hice.
- Luego me preguntó si las diversas materias que estaba estudiando en el semestre actual. Le dije y me preguntó qué se enseñaba en cada materia. Te hablé de la programación de trabajos en los sistemas operativos. Me preguntó acerca de los diversos tipos de algoritmos de programación de trabajos. Luego me preguntó la estructura de datos utilizada en la programación preventiva de trabajos. Le dije cola de prioridad, pero esperaba la cola utilizada en el algoritmo Round Robin. Lo entendí cuando repitió la pregunta, y pareció satisfecho con ella.
Luego no hizo más preguntas y me preguntó si tenía alguna pregunta. Hice las mismas preguntas que había hecho en la ronda anterior que me explicó.
Ronda 4- Ronda de HR (10 min): 2 horas aproximadamente después de la 2da ronda, me llamaron para la ronda de HR. Fue una ronda muy relajada. Comenzó con mi presentación. Entonces el entrevistador me preguntó sobre el proyecto que me era muy cercano y por qué. Luego me preguntó sobre mi preferencia laboral y mi preferencia de reubicación. Me preguntó si tenía alguna duda y le pregunté cómo se asignan los proyectos a los pasantes. Ella explicó todo el proceso y después de eso, esta ronda había terminado.
Por la tarde, la lista de estudiantes seleccionados, y me alegré mucho de encontrar mi nombre en ella.
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