Entrevista Técnica Ronda 1:
- El entrevistador no se presentó y directamente me pidió mi presentación (tardó alrededor de 2-3 minutos). Luego me preguntó un problema de DSA (puso una declaración de problema y un caso de prueba en la ventana de chat de la reunión): https://www.geeksforgeeks.org/given-sorted-dictionary-find-precedence-characters/
Le pregunté a un par de preguntas sobre el caso de prueba dado para comprender el problema correctamente y me explicó todo. Después de 10 a 15 minutos de discusión, le expliqué un enfoque de clasificación topológica y quedó satisfecho con él y me pidió que escribiera código para él. Me pidió que abriera Ideone (IDE en línea) y escribí el código para mi enfoque allí, le expliqué mi código y me hizo ejecutar el caso de prueba en seco (ya han pasado 45 minutos después de explicar todo). - Las preguntas que me hizo sobre procesos e hilos. ¿Qué son el multiprocesamiento y los subprocesos múltiples? ¿En qué arquitectura la depuración sería fácil, multiprocesamiento o multiproceso? (Con justa razón). (Esto tomó 3 – 4 minutos)
- Al final, me preguntó si tenía alguna pregunta y le pregunté sobre las responsabilidades individuales del puesto de MTS y en qué estaría trabajando si me seleccionaban.
Entrevista Técnica Ronda 2: Esta ronda tomó alrededor de 50 minutos
- Primero, la entrevistadora comenzó a presentarse y luego me pidió mi presentación seguida de preguntas:
- ¿Qué es el polimorfismo en tiempo de compilación y en tiempo de ejecución? Me pidió ejemplos del mundo real y se esperaba que yo los explicara con código. Me dieron la opción de abrir cualquier IDE (elegí VS Code).
- Luego hizo preguntas básicas sobre arquitectura como ¿qué es un poco? ¿Qué es un byte? Siguió preguntando detalles sobre este tema como (¿Cómo representamos esto y cómo las computadoras entienden 0 o 1 bit, cómo son útiles y cómo se almacena la información en bits y le expliqué todo lo que pude?)
- Una discusión muy detallada sobre el tipo de datos de array en lenguaje C++ seguida de una pregunta en la que tenía que decir cuánta memoria ocupaba la array (si la array contiene 5 enteros y 4 caracteres)
- Siguió preguntando algunos conceptos básicos más como ¿qué es un sistema binario? Me pidió que escribiera una representación binaria de 31 y me preguntó el procedimiento para obtener el resultado.
- Luego me dieron un fragmento de código y tuve que predecir el resultado (ella lo puso en la ventana de chat y lo pegué en mi código vs)
C
- Pregunta DSA: https://www.geeksforgeeks.org/majority-element/
Le dije 2 enfoques y luego me pidió que escribiera código para el enfoque optimizado (O (1) complejidad espacial y O (n) complejidad temporal).
Luego me pidió que ejecutara en seco un caso de prueba más (que tuve que seleccionar yo mismo) junto con el caso de prueba dado. - Al final me preguntó si tenía dudas, le pregunté sobre creative cloud junto con las mismas preguntas de la ronda anterior.
Entrevista Técnica Ronda 3 (1 hora):
- Primero el entrevistador se presentó y luego me pidió mi presentación. Me preguntó cuál era mi lenguaje de programación favorito (C++) seguido de las preguntas:
- ¿Qué es una clase singleton? (No tenía idea al respecto, así que le dije claramente)
- ¿Qué es una función virtual? Que es una clase abstracta? Aplicaciones de estos dos conceptos en el mundo real. ¿Podemos hacer objetos de clases abstractas?
- Dados millones de números en una array, ¿qué algoritmo de clasificación usará para clasificar estos números? (Tuve una discusión detallada sobre esto con él)
- Dada una array de N números, encuentre los 10 números más grandes o más pequeños de la array.
Seguimiento: dada una secuencia de números, encuentre los 10 números más grandes o más pequeños de la secuencia. Estas preguntas solo fueron discutidas (enfoques, complejidad temporal, complejidad espacial) - Dado un conjunto de 2 tipos de objetos (objeto gato, objeto perro), debe ordenar el conjunto de tal manera que todos los gatos vengan antes que los perros. https://www.geeksforgeeks.org/segregate-0s-and-1s-in-an-array-by-traversing-array-once/
Me pidió que abriera un editor y elegí VS Code. Le expliqué dos enfoques y escribí código para el enfoque de dos puntos. - Seguimiento: agregó un ratón en el mismo conjunto y me pidió que ordenara el conjunto de modo que todos los ratones fueran los primeros, seguidos de los gatos y luego los perros (0, 1, 2 clasificaciones). Me preguntó «¿cómo actualizarías tu código para esta situación?»
https://www.geeksforgeeks.org/sort-an-array-of-0s-1s-and-2s/
Discutí todo sobre los enfoques y hablé sobre la complejidad del tiempo y la complejidad del espacio. - Luego me preguntó un problema más de DSA: https://www.geeksforgeeks.org/edit-distance-dp-5/
- Diferentes tipos de algoritmos de programación de CPU
- ¿Qué es el proceso y los hilos? ¿Qué es Mutex? ¿Cómo se implementa el sistema de bloqueo en mutex?
- Al final me preguntó si tenía alguna duda, le pregunté sobre la vida laboral en Adobe y las mismas preguntas que en rondas anteriores.
Finalmente, recibí la oferta 🙂
Publicación traducida automáticamente
Artículo escrito por lokeshpatel082 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA