software1

Microsoft Interview Experience para la pasantía de verano 2020


Ronda 1) Prueba escrita realizada en mettl.com

Hubo un grupo de preguntas de las cuales todos obtuvieron 3 preguntas en 1,5 horas. Las preguntas fueron fáciles, fáciles e intermedias. Me preguntaron:

  1. Encuentra las raíces de una ecuación cuadrática dada. La parte difícil fue que se les pidió que los devolvieran con solo 3 decimales (no imprimibles).
  2. Verifique que se especifique una Parálisis equilibrada en un código dado.
  3. Incluya n estudiantes, m universidades y n * m matriz booleana, indicando si un estudiante solicitó o no una universidad. Además, dado el número de cupos en la universidad, ¿cuáles son las admisiones máximas posibles que se podrían dar en general?

Hice los tres para estar en el lado seguro. Pero el límite fue sorprendentemente bajo en 1.6 preguntas. Tienen casos de prueba especiales en términos de casos de esquina, casos de complejidad de tiempo, etc. 10 casos de prueba por pregunta.

54 estudiantes fueron preseleccionados para la siguiente ronda.

Ronda 2) Vuelo grupal

Me pregunto, ¿por qué se llama vuelo grupal cuando ni un grupo ni nada vuela? Aquí dieron 2 preguntas en 1 hora, en las que necesitamos escribir el código completo en cualquier idioma de su elección en papel. Se recomienda usar C, C ++ o Java. Las preguntas son: Imprimir todos los nodos con k-distancia desde el nodo de destino. Algoritmo de relleno de inundación, d. H. Dada una matriz n * m con diferentes colores en cada píxel. Para una coordenada dada (i, j) y un nuevo color k, debe rellenar el color k en una coordenada dada, y todos los píxeles adyacentes del mismo color se rellenarán con un nuevo color. Esto sucede recursivamente hasta que los bordes tengan diferentes colores.

Ejecuté ambos. Recomendaría practicar bien las estructuras de datos y los algoritmos básicos. Las áreas incluyen árboles, pilas, listas vinculadas, gráficos y programación dinámica en ese orden. Resolver todas las preguntas hasta esta ronda le da una sensación de seguridad en caso de que arruine una ronda de entrevistas. Intenta escribir código limpio sin romper una declaración.

Después de esta ronda, hicieron una pausa, seguida de una presentación de los funcionarios corporativos. Después del almuerzo, se anunciaron los resultados y 21 estudiantes pasaron a la siguiente ronda.

Ronda-3) Técnica-1

Solía ​​pensar que al principio literalmente harían todas las preguntas con sabores como Imagine, etc. Digamos, tan pronto como entré, el entrevistador dijo: comencemos con la resolución de problemas. Me dijo que primero explique su enfoque, si está bien, luego escriba el código para ello.

  1. Se especifica una matriz siempre decreciente. Escriba un programa para buscar un elemento en él.
  2. Vigila el primer personaje que no se repite en cada caso.

Le expliqué el enfoque usando un ejemplo. Después de explicarle los códigos, me pidió que escribiera casos de prueba para ello. Lo más importante al escribir casos de prueba es que se deben verificar todas las rutas que su programa podría tomar.

Ronda 4) Técnica-2

Fue una especie de fuego rápido hasta que me quedé atrapado. Comenzó con ¿Qué es HashTable? ¿Por qué lo usamos? ¿Qué complejidad temporal se asocia con diferentes operaciones? ¿Qué es una buena función hash? ¿Cómo resuelvo las colisiones? Si todas las n teclas tienen el mismo valor hash, se viola la búsqueda de O (1). ¿Cómo se puede lograr esto? ¿Cómo se implementa HashMap? Ahora vino la pregunta que se quedó: "Devolver un número aleatorio de una tabla hash dada". Lo que escribió fue: X = H.random (); ¿Cómo implementas eso? En realidad, traté de convencer al entrevistador, pero parecía menos satisfecho. Luego dijo: pasemos a la resolución de problemas.

  1. Si una matriz consta de 0, 1 y 2 solamente. Orden.
    Explica varios enfoques. Ahora comenzó a probar el código que escribí para el algoritmo de la bandera nacional holandesa. Afirmó que mi código no funciona. Se lo expliqué tres veces, pero cada vez que se perdió algo y condujo a un resultado incorrecto. Luego dijo que no nos queda tiempo, pasemos al siguiente problema.
  2. ¿Conoces la programación dinámica? Dije que me preguntó qué problemas de dp resolviste. Di una lista de 12-15 problemas de patrones diferentes. Él respondió: está bien, no te preguntaré un problema de dp. (Probablemente escuché de todos los problemas en su lista.) Luego preguntó de una vez cómo verificar si una lista vinculada es un palíndromo.

Escribí código para ambos. Al final, parecía insatisfecho. Dijo un buen día. Pensé que se había acabado. Pero fue solo el comienzo. El coordinador de recursos humanos me pidió que fuera a otra habitación y esperara. Me preguntaba si deberían haber dicho adiós, pero a los pocos minutos hubo una sorpresa para mí. HR me llamó, por favor ven.

Ronda 5) Técnica + RR. HH.

¿Qué aprendiste en tu empresa anterior? ¿Por qué MTech? ¿Cuál es su interés de estudio actual? Fue más una conversación, porque mi compañía anterior estaba al lado de Microsoft Office, ¡qué tipo de conversaciones vecinas! Mencionaste el solucionador de sudoku, ¿qué es? ¿Cómo lo implementaste? Ok, pasemos a un problema básico. Me pidió que escribiera y explicara una ecuación recursiva para el problema de la mochila 0-1. Estaba contento y me preguntó cómo estaba mi vuelo escrito y grupal. Le dije que había hecho todo, pero que podría haber resuelto un problema mejor, así que estaba impresionado.

Me llamaron de inmediato.

Ronda 6) Ingeniería + Personal

El gerente principal con 17 años de experiencia ha realizado esta entrevista. Ella preguntó cuál era su sitio web favorito. Estaba tan cansada que apenas podía hablar. No tenía almuerzo real ni bocadillos. Sin embargo, le dije algo y le conté sobre Quora y por qué me gusta Quora. Entonces ella me preguntó problema de celebridades. No podía pensar, pero me ayudó a pensar y pude responder por tercera vez. ¿Qué haces además de tu tiempo habitual? Le conté sobre maratones y fútbol. Ok, ya hemos terminado. Alguna pregunta? Le informaremos sobre los resultados que puede estar dejando.

Los resultados se anunciaron el mismo día y por la noche. Estuve entre las 6 personas seleccionadas, seguido de celebraciones.

Algunas sugerencias:

  • Prepárese para sitios como Leetcode, Geeksforgeeks, Careercup, Interview Bit, etc. Pero quédate con uno, no dejes que otras personas te confundan. Yo no hago eso
  • Aprende a escribir código en papel, no solo en la computadora.
  • Pruébalo antes de renunciar a cualquier solución durante la entrevista. Los entrevistadores son muy, muy generosos y te ayudan mucho. Piensa que solo están ahí para ti para que puedas resolverlo todo.
  • Asegúrate de saber todo lo que escribes. Escribe menos, habla más. Si escribe más, ¿qué tendrá que contar en la entrevista?
  • Recomendaría escribir pequeños proyectos, pero has aprendido un buen concepto de ellos. Mencioné el solucionador de sudoku y me preguntaron al respecto.
  • Siguen el sistema basado en comentarios después de cada entrevista, lo que significa que continúan adjuntando todas las hojas que ha usado antes, escriben sus comentarios y lo envían al siguiente entrevistador si ese no fuera el caso en una entrevista no está bien, no te sientas mal, haz tu mejor esfuerzo en la próxima entrevista y aún pueden elegirte.

Finalmente, no se desanime si no puede codificar todo de una vez. Aprenda un concepto en un día y resuelva 3-5 preguntas. Un día, cuando sea tuyo, todo vendrá a ti.

Hasta entonces, ¡salud!

Si desea y desea contribuir a GeeksforGeeks, también puede escribir un artículo con Contribute .geeksforgeeks.org o enviar su artículo a contrib@geeksforgeeks.org. Vea su artículo en la página principal de GeeksforGeeks y ayude a otros geeks.

Mejore este artículo si encuentra errores haciendo clic en el botón "Mejorar artículo" a continuación.