Cada año, Infosys organiza una competencia (en todo el país) llamada HackWithInfy desde 2018 para estudiantes de último año de B.Tech. Hay 3 rondas en esta competencia y obtendrá una PPI (Entrevista previa a la colocación) para el Rol de programador de energía (Programador especialista) o Rol de especialista en ingeniería de sistemas (SES) o Rol de ingeniero de sistemas (SE) si supera la segunda ronda con un buen rango
Las dos primeras rondas son de tipo de codificación pura y se llevan a cabo en la plataforma Hackerrank. Ambas rondas contienen 3 preguntas de codificación (fácil, media y difícil) con un plazo de 3 horas.
Ronda 1 (Ronda de codificación en línea):
Se alojó en la plataforma Hackerrank y consta de 3 preguntas de nivel fácil a difícil. Generalmente, estas preguntas son de arreglos, strings, manipulaciones de bits y DP. Había usado Python y pude resolver 2 preguntas. Algunas preguntas que recuerdo son similares a:
- Variación de la pregunta del problema de suma de subconjuntos. https://www.geeksforgeeks.org/subset-sum-problem-dp-25/
- Una pregunta de manipulación de strings. https://www.geeksforgeeks.org/rearrange-given-binary-strings-to-maximize-their-bitwise-xor-value/
- Una pregunta basada en array. https://www.geeksforgeeks.org/minimum-number-of-operations-toconvert-a-given-sequence-into-a-geometric-progression-set-2/ )
Consejo : Resuelva las preguntas con la mente tranquila. No te estreses durante la prueba.
Ronda 2 (Ronda de codificación en línea): solo si logra completar la primera ronda, será elegible para sentarse en la siguiente ronda. La segunda ronda también se llevó a cabo en la plataforma HackerRank (el 31 de mayo de 2020) y contiene tres preguntas de codificación, pero fue más difícil en comparación con la primera ronda. Esta ronda también tiene un límite de tiempo de 3 horas. Generalmente, las preguntas son de DP, Graph, Tree y Advanced DS.
Las 3 preguntas fueron:
- Se le proporciona una array de tamaño NA, la función X (A) calcula el Xor de todos los valores de la array, es decir. A[1] ^ A[2] ^ A[3] ^ A[4] ^… A[N] donde ^ es la operación Xor bit a bit. Usted forma una array B de tamaño (N*(N-1))/2 a partir de la array A. La array B contiene todos los pares Xor de la array A, es decir, A[i]^A[j] donde i<j. Encuentre el valor de X(B).
- Se le da la array A de N elementos de la siguiente manera: [a1,a2,a3,………….,an] Necesita encontrar la máxima Xor Sum posible de cualquier subsecuencia buena de la array A. Una subsecuencia S es buena si , por cada A(i) presente en S, A(n-i+1) también está presente en S.
- Te dan un gráfico. Inicialmente, está en el Node 1 y desea llegar al Node N. El gráfico consta de N Nodes y M aristas no dirigidas. Se tarda 1 unidad de tiempo en atravesar los bordes. Hay K momentos de tiempo en los que los bordes pueden desaparecer. ¿Cuál es el tiempo mínimo requerido para llegar al Node N? Si es imposible, imprima -1.
Consejo: no dedique demasiado tiempo a ninguna pregunta si no puede resolverla en el primer intento, especialmente las preguntas basadas en gráficos y árboles).
NOTA :
- Si resuelve 2 preguntas (de 3), entonces puede obtener una oportunidad de entrevista para el puesto de SES.
- Si resuelve 2.5 – 3 preguntas (de 3), entonces puede obtener una oportunidad de entrevista para el puesto de PP
Afortunadamente, pude resolver las 3 preguntas y estuve entre los 100 mejores candidatos (en toda la India).
Obtuve la entrevista previa a la colocación para el puesto de PP.
Todos los 100 mejores candidatos son elegibles para sentarse en la Ronda de la Gran Final (Tercera Ronda). Si fue seleccionado para la Gran Ronda Final, Infosys tendrá algunas ventajas para usted. Te invitan a su campus de Pune (para la 3.ª ronda a cargo de ellos), que es una ronda de Hackathon. Esta ronda es de 24 horas durante las cuales debe desarrollar una aplicación/sitio web que le proporcionarán. Pero debido a la pandemia de COVID-19, se organizó prácticamente desde casa.
NOTA: El resultado del hackathon y el resultado del PPI (realizado antes del hackathon) es diferente y no depende el uno del otro.
Ronda de entrevistas: la entrevista se realizó en la plataforma Google Meet el 24 de agosto de 2020. Recibí el correo 2 días antes de mi entrevista.
El entrevistador primero me pidió que me presentara. Luego publicó una pregunta de codificación en la ventana de chat y me pidió que codificara , compilara y ejecutara en cualquier IDE de mi elección compartiendo la pantalla.
Se basó en el problema del viajante de comercio (TSP).
Dado un conjunto de ciudades (gráfico) entre las que se encuentran las ciudades turísticas privilegiadas y el coste del transporte entre cada par de ciudades, hay que encontrar el coste mínimo posible que tendrá que pagar un turista para visitar cada ciudad turística exactamente una vez y vuelve a la misma ciudad de partida de donde había partido.
Yo: Como era un problema NP-Difícil, no se puede resolver en tiempo polinomial complejo. Le ofrecí 2 enfoques: enfoque ingenuo y enfoque de solución aproximada.
- Enfoque ingenuo: uso de Backtracking con la complejidad temporal de O(n!). https://www.geeksforgeeks.org/traveling-salesman-problem-tspimplementation/ )
- Enfoque de solución aproximado: uso del algoritmo de Krushkal con una complejidad de tiempo de O ((ElogV). https://www.geeksforgeeks.org/kruskals-minimum-spanning-treealgorithm-greedy-algo-2/ )
Resolví ambos enfoques usando Python y luego compilé y pasé con éxito todos los casos de prueba proporcionados por él. Luego le expliqué a ambos el acercamiento al cual se mostró satisfecho. Duró 30 minutos y luego pasó a la parte Técnica.
Comenzó con mis proyectos, pasantías y luego académicos. Se interesó en mi pasantía y discutió lo mismo. Algunas preguntas que hizo fueron:
- Acerca del marco angular.
- Ciclo de vida de Angular8.
- Acerca del enrutador y su significado.
- Que es SPA.
Luego hizo varias preguntas sobre las últimas tecnologías como:
- Inteligencia Artificial (IA)
- Aprendizaje automático (ML)
- Grandes datos
Luego tuvimos una larga discusión sobre Big Data Technology (durante aproximadamente 15-20 minutos) en la que interrogó varias veces.
Luego hizo algunas preguntas relacionadas con RDBMS como:
- Diferentes tipos de Uniones.
- Arquitectura de 3 niveles
- Programación e indexación
- Propiedades del ÁCIDO
- Normalización.
- Sistema de archivos planos
- Acerca de RMS (Sistema de Gestión de Recuperación)
Y relacionado con NoSQL como:
- Cuándo preferimos NoSQL y por qué.
- Datos estructurados y no estructurados
- Diferentes tipos de NoSQL.
- ¿Qué es la «persistencia políglota» en NoSQL?
- ¿La base de datos NoSQL interactúa con la base de datos Oracle?
Finalmente, algunas preguntas sobre OOP como:
- Diferencia entre Abstracción y Encapsulación.
- Diferencia entre clase abstracta e interfaz
- Concepto de subprocesamiento múltiple.
- Algunas aplicaciones de la vida real del polimorfismo.
- Algunos conceptos más profundos del manejo de excepciones.
- Marco de la colección.
La entrevista tuvo una duración de 1h 15 min.
Luego me preguntó si tenía algunas preguntas a las que respondí afirmativamente e hice 3-4 preguntas. (Ya lo había preparado antes de la entrevista).
Finalmente, terminó la sesión y me dijo que el resultado se dará a conocer pronto en el último día de Hackathon.
Consejo : – Debe conocer todas y cada una de las palabras de su currículum. Sea minucioso con todos sus proyectos y siempre trate de explicar usando ilustraciones y ejemplos relevantes.
Ronda de recursos humanos: después de 3 o 4 días, recibí una llamada sorpresa de recursos humanos (en la tarde mientras me relajaba). Era la ronda telefónica. Me hizo algunas preguntas como qué tan buena fue mi entrevista, cómo estuvo el entrevistador, sobre la preferencia laboral y la reubicación, y finalmente me preguntó si tenía algunas preguntas. Duró entre 7 y 10 minutos.
El 31 de agosto de 2020, durante el Hackathon, anunciaron el resultado. Mi alegría no conoció límites cuando escuché “¡Felicidades Ashish Raj! Ha sido seleccionado para el rol de programador de potencia (ingeniero especialista)”.
Muchas gracias a Geeksforgeeks por brindar una plataforma tan excelente y maravillosa para aprender y mejorar nuestras habilidades. GFG siempre ha sido una parte importante de mis estudios desde el comienzo de mi universidad. Buscar un tema, algoritmo y código en particular es muy fácil y también en varios idiomas.
Publicación traducida automáticamente
Artículo escrito por ashish898raj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA