Ronda 1 (Prueba escrita – 23 de agosto de 2021): La primera ronda se llevó a cabo en una plataforma llamada Edu Thrill.
- La prueba tenía una duración de 30 minutos y constaba de 30 preguntas de opción múltiple.
- Estos 30 MCQ cubrieron casi todos los temas relacionados con CS, así como preguntas de aptitud.
- Sin embargo, la mayoría de las preguntas fueron sobre DSA.
- Alrededor de 152 estudiantes fueron preseleccionados después de esta ronda.
Ronda 2 (Ronda de codificación: 23 de agosto de 2021): había una pregunta de codificación y teníamos alrededor de 60 minutos para resolverla. Se llevó a cabo en Codelyzer, que es la plataforma de codificación de Accolite.
- Esta fue la pregunta de codificación: https://www.geeksforgeeks.org/count-minimum-steps-get-given-desired-array/
- También se suponía que debíamos escribir nuestros propios casos de prueba de unidad. Sin embargo, esto no era obligatorio.
- 47 estudiantes fueron preseleccionados para entrevistas.
Ronda técnica 1 (Duración: 1 h 15 min – 24 de agosto de 2021): mi entrevista estaba programada para las 9:00 a. m. El entrevistador se presentó. Luego, me pidió que me presentara. Más tarde, comenzó la ronda de codificación. Compartió un tablero de Google Jam conmigo y explicó la pregunta. En total me hizo 3 preguntas.
- Vista superior del árbol binario: https://www.geeksforgeeks.org/print-nodes-top-view-binary-tree/ . Le expliqué mi enfoque y luego me pidió que lo codificara en un bloc de notas. Después de eso, revisó mi código y pareció satisfecho con él.
- Clone una lista vinculada con el puntero siguiente y aleatorio: https://www.geeksforgeeks.org/a-linked-list-with-next-and-arbit-pointer/
- Expliqué el enfoque de cómo se pueden modificar los enlaces entre los Nodes dibujando y mostrando todo en la pizarra. En primer lugar, dije que modificaré los siguientes punteros, luego los punteros aleatorios y separaré las listas individualmente. Parecía bastante satisfecho con el enfoque y me pidió que lo codificara. Escribí el código completo y lo ejecuté en seco para que el entrevistador entienda claramente mi enfoque. También escribí comentarios en mi código y también di nombres de variables significativos.
- Dada una array arr, encuentre el ji máximo tal que arr[j]>arr[i]: https://www.geeksforgeeks.org/given-an-array-arr-find-the-maximum-ji-such-that -arrj-arri/
- Esta fue una pregunta que nunca resolví antes. Sentí que la técnica de dos punteros se puede usar para resolver esta pregunta. Le pregunté al entrevistador si estaba pensando en la dirección correcta. Dijo que sí, y luego discutimos mucho sobre el enfoque. Al final, finalmente se me ocurrió la solución, pero él no me pidió que la codificara porque ya se me había acabado el tiempo. Me preguntó si tenía alguna pregunta para él. Le pregunté sobre sus experiencias y varias oportunidades de aprendizaje en Accolite.
Ronda técnica 2 (Duración: 1 hora – 24 de agosto de 2021): Después de la ronda 1, en los siguientes 30 minutos, recibí una llamada diciendo que fui seleccionado para la ronda 2 de la entrevista.
- Inicialmente, el entrevistador me pidió que me presentara. Luego, me pidió que le explicara sobre mis proyectos. Hablé sobre mi proyecto de desarrollo web full stack y expliqué todas las funcionalidades. También hablé sobre la pila tecnológica del proyecto.
- Me preguntó qué conceptos de Reactjs usé en mi proyecto. Hablé sobre la clase y los componentes funcionales en reactjs, Hooks en reactjs, axios y también destaqué la razón principal por la que elegí reactjs. Luego, preguntó cómo garantizo la seguridad de los datos en mi proyecto.
- Preguntó cómo puedo validar y diferenciar entre varios usuarios (básicamente estaba hablando de acceso basado en roles). Le dije que según la persona que inicie sesión, la página se mostrará en la pantalla. También le dije que usé el concepto de almacenamiento local en javascript para hacerlo. Dije que este era el tipo de verificación que mantuve para que los usuarios con los privilegios correctos pudieran acceder al sitio web. Le dije que solo implementé una verificación de inicio de sesión y le aseguré que intentaré implementar el acceso basado en roles también en mi proyecto más adelante. Las siguientes preguntas fueron sobre cómo puedo mantener segura la información confidencial en mi sitio web. Le dije que usar https es seguro. Me preguntó si conocía SSL. Le dije que no estaba al tanto. Luego, le conté sobre los disparadores que usé en mi proyecto.
- Más tarde, comenzó a concentrarse en la parte de back-end de mi aplicación web. Me pidió que escribiera 2 consultas. Uno estaba en la unión natural y la otra consulta requería que usara la cláusula GROUP BY. Ambos eran específicos de mi proyecto. También me preguntó cómo implementé un bot de chat en mi proyecto. Le dije que usé el flujo de diálogo de Google para desarrollarlo. Luego, me preguntó qué es una base de datos relacional y cuáles son algunos conceptos importantes de las bases de datos relacionales. Me pidió que le explicara sobre la normalización y todas sus formas. Me pidió que explicara en detalle la relación muchos a muchos y cómo se mantiene la integridad referencial en la base de datos. También preguntó si la base de datos en sí puede averiguar y mantener la integridad referencial o si tenemos que hacerlo explícitamente. Le dije que necesitamos escribir «En cascada de eliminación» o «En cascada de actualización» explícitamente. Si no escribimos esto en la consulta, entonces la base de datos arroja errores. Parecía estar satisfecho con mis respuestas.
- Luego, me preguntó si sabía que el acceso a través de la clave principal es extremadamente rápido en las bases de datos. Me preguntó si sabía la razón. Le dije indexación en bases de datos. También le dije que como la clave principal está ordenada y es única, puedo recuperar o buscar cualquier registro mediante búsqueda binaria, es decir, en tiempo O (logN). Entonces, dijo, a veces, es posible que no seamos conscientes de la clave principal. En ese caso, necesitamos buscar registros usando algunas otras claves que incluso tienen duplicados. Luego, expliqué acerca de la indexación agrupada y secundaria. Luego me preguntó la compensación de la indexación. Le dije que conduce al uso de espacio adicional, ya que ahora también necesitamos almacenar la tabla de índice junto con las tablas de la base de datos. Dijo que el espacio no es una preocupación y me preguntó sobre el rendimiento como la inserción y la eliminación. Inmediatamente le dije que la inserción,
- Luego, me preguntó qué lenguajes de programación conocía. Le dije C++ y Python. Me preguntó cuáles son las principales diferencias entre los 2 idiomas. También me pidió que le explicara acerca de las funciones amigas y las funciones virtuales en C++. Me hizo preguntas sobre la herencia múltiple y cómo se implementan en ambos idiomas.
- Después de esta ronda rigurosa, me preguntó si tenía alguna pregunta para él. Le pregunté sobre varias oportunidades de aprendizaje, certificaciones y equilibrio entre la vida laboral y personal en Accolite.
Ronda HR (Duración – 15 min: 24 de agosto de 2021):
- Presentarte.
- ¿Cuáles son sus fortalezas y debilidades?
- ¿Alguna vez has trabajado en un equipo antes?
- ¿Ha enfrentado desafíos al trabajar en equipo? ¿Cómo los resolviste?
- Si usted es el líder del equipo y hay falta de coordinación entre los miembros del equipo, ¿cómo manejará esta situación?
- Si le piden que se traslade, ¿cómo se adaptará a la cultura allí?
- ¿Tienes alguna pregunta para mí?
Veredicto: Seleccionado
En general, fue una gran experiencia. Sentí que tenía una oportunidad perfecta para probarme a mí mismo, ya que me pusieron a prueba en todos los aspectos.
Publicación traducida automáticamente
Artículo escrito por anishacse2018 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA