Mi experiencia de pasantía en Microsoft Redmond y obtener una oferta


una reimpresión del artículo "" Cada año, Microsoft recibe 2 millones de CV "Desarrollador Minsk -. de 7 años en la empresa (+ Directrices y una lista de libros)" dev.by sitio .

Andrey Artemyev - Ingeniero de desarrollo de software en la oficina de Microsoft en Seattle, trabajando en el sistema operativo Windows. Su camino a la compañía tomó 7 años, con cinco presentaciones de currículums, una entrevista fallida y una pasantía de verano en Microsoft Redmond. Andrey comparte su experiencia con los desarrolladores de lectores.

"Mi experiencia es que la perseverancia, no el talento, gana en un amplio intervalo"


Entrar en Microsoft es bastante difícil, porque contratar a la persona equivocada puede ser costoso para la empresa. Esto incluye no solo los costos de la reubicación, sino también el daño potencial a la empresa por errores de los empleados que conducen a consecuencias desagradables, ya sea el robo por parte de piratas informáticos rusos de una carta de la candidata presidencial Hillary Clinton, la propagación del virus Petya ransomware y la caída del servidor de la base de datos de pacientes en un hospital japonés o el incumplimiento de un contrato de $ 19 millones con un fabricante de computadoras portátiles.

Microsoft recibe anualmente alrededor de 2 millones de currículums, por lo que cualquier duda sobre el candidato implica rechazo. El fracaso durante la entrevista final significa que el próximo intento será solo después de 6 meses, pero de hecho, solo después de un año. Mi experiencia es que la perseverancia, no el talento, gana en un amplio intervalo.

Todo comenzó en diciembre de 2008, cuando yo, un estudiante de tercer año de BSUIR (Universidad Estatal de Informática y Radio Electrónica de Bielorrusia), asistí a una conferencia sobre MS HPC Server 2008, organizada en Minsk por el empleado de Microsoft Vsevolod Ukrainsky. En una conferencia, mencionó las pasantías de verano para estudiantes en la sede de la compañía en los Estados Unidos.

Era incomprensible para la mente, un propósito y un significado aparecieron en mi vida: tengo que ir a Microsoft. Inmediatamente envié mi currículum (tengo que enviarlo aquí ), y aunque no recibí una respuesta, no estaba molesto: ya en ese momento me di cuenta de que todos los grandes logros requerían preparación.

Desde enero, me he sumergido por completo en el proceso de recopilación de información y preparación. Encontré el blog de Sergey Grebnov de Ivanovo (RF), que acababa de regresar de una pasantía de verano en Microsoft desde los EE. UU. Y me pidió que contara más sobre esta experiencia, por lo que recibió una serie de publicaciones sobre el proceso de entrevista y las tareas de la entrevista. En el curso de cómo se aclaró el contenido de la entrevista, el trabajo comenzó a hervir, y lamenté que solo hubiera 24 horas en un día. Mis compañeros de clase no entendieron esto.

Para comenzar, su currículum debe ser notado. Si ha superado esta etapa, en septiembre - octubre tendrá una entrevista telefónica que durará 30 minutos en inglés, lo que eliminará a aquellos que definitivamente no pasarán la entrevista final con los estadounidenses en la oficina europea. En la segunda ronda habrá cuatro o cinco entrevistas de cuarenta y cinco minutos cada una, durante las cuales se le ofrecerán problemas algorítmicos, se le preguntará cómo probará su solución y verá su código y enfoques para resolver problemas. Sergey Grebnov fue el ganador de la programación de las Olimpiadas, el finalista de la Microsoft Imagine Cup 2008, pero tampoco fue la primera vez.

"En una entrevista, debe estar sinceramente interesado en cómo puede mejorar, y no solo realizar un ritual".


No pongo la palabra "preparación" en el sentido de que se la dan a la universidad: memorizar en un par de días, escribir espuelas, entrenar a un maestro, engañar. Si se le advirtió que durante la entrevista necesita pedirle comentarios al entrevistador, entonces debe estar sinceramente interesado en cómo puede mejorar, y no solo realizar el ritual.

Por el comportamiento de los entrevistadores, debes entender a quién buscan y hacerte así. Prepararse es desarrollar las habilidades y hábitos en ti mismo, para lo cual no tendrás que agotar tu memoria. Quizás tomará seis meses, quizás varios años. El boxeador en el ring no recuerda cómo poner el bloqueo, y no piensa dónde esquivar, estas habilidades se resuelven. El día de la entrevista, todo debería funcionar a la perfección, todas las preguntas deberían ser respondidas y todas las tareas resueltas, solo así entrará en la "gran liga".

Aprendí inglés leyendo literatura técnica, viendo dibujos animados Futurama, Los Simpson, South Park. Revisé muchos episodios unas cuarenta veces, escribí nuevas palabras con traducción y transcripción en un cuaderno y las releí estúpidamente cuando viajaba en transporte público. Los cursos de idiomas extranjeros, en mi opinión, son inútiles: estudié alemán así, y me pareció que su objetivo no era enseñar, sino ganar dinero.

Una entrevista telefónica fue simple: me preguntaron algo sobre las listas enlazadas y la experiencia laboral. En una entrevista, no solo la empresa lo conoce, sino que usted lo conoce, por lo que es muy importante preparar preguntas. Estaba interesado en la persona en el otro extremo de la línea, en qué están trabajando, con qué frecuencia se producen las horas extraordinarias, qué tan bueno es el equilibrio entre el trabajo y la vida personal, cuáles son los planes para los pasantes, etc. La falta de interés en un trabajo futuro puede no jugar a favor del candidato. Después de un tiempo, descubrí que la primera etapa ya pasó y nos contactarán nuevamente pronto.

El otoño lluvioso de Minsk dio paso al frío invernal. A mediados de febrero de 2010, recibí una carta invitándome a venir a Munich para una entrevista en el campus de la compañía. Me esperaban 4 entrevistas de 45 minutos, Microsoft pagó todos los gastos. Quedaba menos de un mes antes del día señalado, y no tenía visa. Tuve que correr, porque para obtener una visa alemana (no Schengen), necesitaba un extracto del registro de la propiedad sobre Microsoft Deutschland Gmbh.

En general, el proceso de contratación en Microsoft es bastante "descuidado", y creo que no solo yo. A veces, los reclutadores se olvidan de enviar documentos o enviar los incorrectos sin una firma, o simplemente dejan a los candidatos poco tiempo para recopilar documentos. Se cree que esto se hace a propósito para eliminar a los candidatos, pero tal vez solo el departamento de recursos humanos no puede hacer frente a una gran cantidad de candidatos. Así que no te relajes, sigue todo el proceso tú mismo y no tengas miedo de escribirles.

Microsoft a menudo realiza entrevistas en las oficinas de la UE, donde llega un equipo de reclutadores de los EE. UU. Grebnov lo tuvo en Varsovia, lo tuve en Munich. A veces, también se realizan eventos similares en Rusia, una vez que se realizó un evento de contratación en la BSU (Universidad Estatal de Bielorrusia). Una entrevista en un país extranjero es mala porque necesita adaptarse a un nuevo entorno, un sistema de transporte público desconocido, esto agrega riesgos. Llegué una hora antes de la entrevista y caminé cerca. Luego, los cuatro con los otros candidatos nos reunimos en el lobby y fuimos invitados uno por uno a diferentes entrevistadores.

"El error más estúpido es comenzar a escribir código sin especificar todos los detalles"


En la primera entrevista me preguntaron sobre mi experiencia laboral, luego me dieron un folleto en el que se implementó la clase CString de C ++, la tarea es encontrar todos los problemas. Desde que leí Efectivo C ++ y Más Efectivo C ++, tuve éxito.

La siguiente tarea fue más difícil: implementar la función bool IsMatch (char * pszText, char * pszPattern). Se pasa una cadena como patrón, que puede contener *, que denota 0 o más caracteres. No resolví este problema. Cuando decida, considere estas opciones: "Abcde", "A * c ** d * ek".

En la segunda entrevista, la tarea consistía en implementar una función que voltee todas las palabras en una línea. Por ejemplo, "¡Hola, Microsoft Deutchland!" - "Deutchsland Microsoft Hola". La tarea puede parecer simple, pero en realidad no lo es. El error más estúpido en la entrevista es comenzar a escribir código sin especificar todos los detalles. Para seleccionar una solución, debe tener datos precisos que se deben tomar del entrevistador. Necesitamos aclarar qué hacer con los signos de puntuación, si se necesita compatibilidad con Unicode, porque hay varios caracteres (por ejemplo, emoticones con diferentes colores de piel), qué tan grande es el archivo, qué restricciones de tiempo / memoria son. También es necesario explicar la elección del algoritmo y la elección de la estructura de datos. Al final de la entrevista, me preguntaron cómo probaría este código, respondí mal y ese fue el final para mí.

Regresé a Minsk con la firme intención de prepararme mejor la próxima vez. No le dije a nadie en la universidad, ni siquiera el director sabía por qué estaba ausente. Inmediatamente envió escaneos de cheques para alimentos y transporte público a Microsoft, y FedEx respondió enviando un cheque por $ 215, del cual tuvo que pagar el impuesto sobre la renta. El alojamiento y el vuelo ya han sido pagados por la empresa.

En el otoño, volví a presentar mi currículum, pero pasé volando. De acuerdo con los requisitos de la visa J-1 (visa de estudiante requerida para una pasantía en los EE. UU.), Al final de la pasantía debe ser un estudiante universitario, y en 2011 ya me gradué de la universidad.

En caso de falla, tenía el Plan B, así que seguí trabajando. De vez en cuando resolvía problemas y perdía situaciones de una entrevista en mi cabeza. El proceso de preparación pasó a un segundo plano: leí libros sobre programación, pero no había fusible pasado. Alemania no me dio descanso, así que envié los documentos al Máster en Informática de la Universidad Técnica de Munich. No lo hicieron.

La preparación continuó, a veces resolví problemas y probé el código. En el otoño, volvió a postularse en tres universidades diferentes, y esta vez recibió respuestas positivas de todos a la vez. La Universidad Técnica de Munich estaba en la parte superior de la lista (37 en el mundo), así que la elegí. Entonces, en abril de 2012, me convertí en estudiante en una universidad alemana. Más tarde me decepcioné con él.

"Está oscuro fuera de la ventana, me paro con un marcador frente a un tablero de papel e implemento el juego Buscaminas en C ++"


A finales de agosto, ya desde Munich, solicité nuevamente una pasantía en Microsoft y me invitaron a la primera etapa. El estaba en mi universidad. Llegué 20 minutos antes del comienzo, varias personas estaban sentadas debajo de la puerta. Uno de ellos resultó ser un reclutador, y hablamos durante unos 15 minutos: hice preguntas sobre la empresa que había preparado de antemano.

En la entrevista, necesitaba escribir una aplicación de consola C # en la pizarra, que considera la cantidad de caracteres en el archivo y los imprime en orden descendente. Cuando lo haga, piense en caracteres Unicode compuestos, caracteres de formato y caracteres invisibles (espacio), y qué considerar los mismos caracteres, porque en algunos idiomas pueden parecer diferentes, pero significan lo mismo. Durante tales entrevistas, se eliminan los especialistas que no alcanzan el nivel mínimo. El entrevistador evalúa cómo escribo el código, cómo razono, cómo abordo la solución del problema. Aproximadamente una semana después, me notificaron que había pasado la primera etapa.

En febrero de 2013, me invitaron a una entrevista en el campus de Zurich, lo que me permitió elegir varias fechas. A mediados de marzo, dos muchachos de Polonia se reunieron en un lobby de Microsoft en Zurich, un estudiante indio en Suiza y yo. Todo fue igual que en 2010: cuatro entrevistas de 45 minutos cada una.

En la primera entrevista, un gerente de Microsoft me pidió que escribiera algunos algoritmos de LinkedList, uno de los cuales fue encontrar un anillo en la lista SingleLinked. No recuerdo otros problemas técnicos, pero las listas enlazadas se utilizan en todas partes del sistema operativo, por lo que debe conocerlas bien. Entonces el entrevistador me preguntó si tenía preguntas para él. Les pregunté a todos sobre la pasantía, sobre el equipo y el entorno de trabajo, fue interesante para mí.

La segunda entrevista fue con un empleado ruso de Microsoft. No recuerdo lo que estábamos haciendo, pero al final me dio 7 minutos para implementar el algoritmo en C #. Inmediatamente encendí el cronómetro en el reloj (lo que alteró su plan) y así pude concentrarme en resolver el problema. Como resultado, escribí todo a tiempo. El interlocutor me preguntó si quiero trabajar con Windows Phone o SQL Server. Recuerdo que cuando regresé de esta entrevista a la sala de conferencias, vi a un chico indio con cosas cerca del elevador; el resto de los muchachos todavía estaban en las entrevistas.

Con el tercer entrevistador, no encontré de inmediato un lenguaje común. Era necesario organizar la clasificación de las tarjetas. Al principio descubrí la mejor manera de representar las tarjetas en la memoria, como resultado la tarea se redujo a reorganizar los elementos en la matriz. Luego, el reclutador agregó la condición de que las tarjetas nunca deberían permanecer en su lugar. Implementé el algoritmo en C ++. Antes de escribir el código, aclaré si es posible usar un generador de números pseudoaleatorio estándar.

La cuarta entrevista. Está oscuro afuera, me paro con un marcador frente a un tablero de papel e implemento el juego Buscaminas en C ++. En el camino, el reclutador pregunta cuánto toma la variedad de punteros a punteros y cómo puede repetir el ciclo for nuevamente, cómo implementaré el juego si el campo es enorme, digamos, un millón por millón.

Como resultado, quedamos dos de nosotros, estamos esperando una decisión final. Frente a nosotros hay una reclutadora de Estados Unidos sentada con una computadora portátil, ella pregunta quién quiere saber primero su resultado. Expreso un deseo, vamos a otra habitación, nos sentamos, el reclutador me agradece por la atención a las pasantías de Microsoft, expresa la esperanza de que la experiencia adquirida me haya sido útil y la alegría de unirme a la compañía en el verano de 2013.

Ese chico también falleció. Salimos a las 18:30 y fuimos al hotel, donde celebramos la victoria con dos vasos de cerveza.

"Llegó una carta de la embajada de que el procesamiento de mis documentos se retrasó, ya que me encontré con Procesamiento adicional"


Se suponía que la pasantía comenzaría el 7 de junio de 2013. Regresé a Alemania y comencé a recopilar documentos para una visa J1. No era hora de estudiar, estaba enferma. Preparé los documentos muy rápidamente, porque todas las traducciones necesarias y la notarización se hicieron cuando ingresé a la universidad alemana.

En el sitio web de la embajada, era necesario pasar una prueba con preguntas estúpidas, como: ¿eres miembro de una organización terrorista? ¿Tienes la intención de llevar drogas a los EE. UU.? Cuando vayas a la embajada de los Estados Unidos, es mejor no llevar tus productos electrónicos contigo, porque no hay dónde guardarlos. Alguien entierra sus tabletas y relojes inteligentes en el cantero, alguien se los da a los estafadores para que los almacenen y nunca los vuelve a ver, fui a la tienda y dejé mis cosas en el almacén.

Aproximadamente una semana después, recibí una respuesta de la embajada de que el procesamiento de mis documentos se retrasó, ya que estaba bajo Procesamiento adicional. Este es el procedimiento al que se someten muchos programadores, físicos y especialistas en explosivos durante la primera solicitud de visa estadounidense. Por lo tanto, la consideración de mis documentos se retrasó por más tiempo de lo planeado.

Escribí a Microsoft y me dijeron que solo puedo esperar. Todos los días iba al buzón, pero estaba vacío. El tiempo de mi pasantía se pospuso, completamente "califiqué" mis estudios, aunque los exámenes se acercaban. En ese momento, alquilé un ático de una familia alemana cerca de la universidad, pero se estaban preparando para mudarse a otra casa. Recuerdo que la casa ya no tenía más cosas que la mía, el período de alquiler estaba llegando a su fin y era necesario tomar una decisión. Una vez, en un día caluroso de Munich, vi un sobre pesado en una caja, y en él, un pasaporte con una visa y un montón de papeles. Microsoft inmediatamente me compró boletos y me fui volando. Por lo tanto, la pasantía en Redmond comenzó con un retraso de un mes.

"Por lo general, los pasantes de Microsoft reciben una oferta de trabajo a menos que hagan algo estúpido".


Durante la pasantía, Microsoft me proporcionó un automóvil y un descuento en viviendas de alquiler. Los pasantes tenían tiempo suficiente no solo para trabajar, sino también para viajar.


Estación de trabajo interna de Microsoft

Trabajé en Windows Phone 8.1, le agregué algún tipo de API (no recuerdo cuál). Primero, era necesario comprender el proyecto, luego redactar un documento de diseño, discutirlo con otros empleados, obtener su aprobación, luego implementarlo y probarlo. Al final de una pasantía de 12 semanas, presenté mi proyecto al equipo y recibí una oferta de trabajo. La mayoría de los pasantes reciben tal oferta solo si no hacen algo estúpido.

Recibí una invitación para trabajar en Microsoft a principios de septiembre, pero recibí una tarjeta azul de empleado solo dos años después.

Viajé por América y regresé a Minsk durante la duración de mi visa de trabajo. Este es un proceso muy largo. En los Estados Unidos, el número de trabajadores extranjeros es la cuota; en los últimos años, el número de solicitantes ha excedido el número de cuotas, por lo que se sortean de acuerdo con el principio de la lotería.

Fuera de la ventana en 2014, vivo con mis padres, estoy esperando una visa. Si todo va bien, en el otoño iré a los EE. UU., Así que no puedes buscar trabajo. Pero en abril, quedó claro que este año no recibí una visa y no fui a los Estados Unidos, sino que había una opción para trabajar en la oficina de Vancouver, a tres horas en automóvil de Seattle: después de un año de trabajar en Canadá con una visa L1, me trasladarían a Redmond. Sin embargo, esta opción tampoco funcionó. Como resultado, en el otoño fui a una entrevista en Softeq. Mi experiencia en Microsoft y un sólido conocimiento del inglés me han dado una ventaja notable cuando solicito un trabajo.

La primavera de 2015 entró sigilosamente. En abril, finalmente se aprobaron mis documentos de visa de trabajo. La entrevista en la Embajada de los Estados Unidos en Moscú fue muy breve: me preguntaron dónde trabajaría y con qué salario, me quitaron el pasaporte y regresaron el mismo día con una visa. Todos los empleados extranjeros comienzan a trabajar en octubre, cuando comienza el nuevo año fiscal. Por lo tanto, mi primer día hábil fue el 5 de octubre de 2015.

Referencias de Andrei Artemyev :

Literatura para "físicos" que ayudará a prepararse para entrevistas técnicas. No es necesario leer de principio a fin; te recomiendo que estudies algoritmos con un lápiz en tus manos.

Las entrevistas comenzarán el próximo otoño del próximo año: prepárese y envíe su currículum. Si no funciona, saque conclusiones e intente nuevamente.

  • Thomas Cormen Algoritmos y estructuras de datos;
  • Boris Kordemsky. Conocimiento matemático;
  • Alexander Shen. Programación. Teoremas y problemas;
  • William Pandstone. Cómo mover el monte Fuji.
  • Una colección de tareas de programación y soluciones para ellos en topcoder.com ;
  • Descifrando la entrevista de codificación: 150 preguntas y respuestas de la entrevista de programación;
  • Preguntas de la entrevista de Microsoft en glassdoor.com ;
  • C ++ efectivo;
  • C ++ más eficaz;
  • Programación de perlas;
  • Página de Microsoft en FB para estar al tanto de los eventos

Literatura motivacional para las "letras":

  • M. Weller. Las aventuras del mayor Zvyagin;
  • A. Schwarzenegger. Recuerda todo. Mi increíblemente verdadera historia;
  • M. Sharapova. Imparable. Mi vida;
  • Malcolm Gladwell. 10.000 horas
  • C. Lengold. Solo espacio: un taller sobre la vida ágil, lleno de significado y energía;
  • Timothy Ferris Cómo trabajar 4 horas a la semana.

Además del artículo del autor : si planeaba realizar una pasantía nuevamente, enviaría un currículum de inmediato a todas las grandes empresas. Casi todos tienen pasantías: Microsoft, Google, Amazon, Facebook, Intel, Apple y el resto. Además de las pasantías en los Estados Unidos, hay pasantías en las oficinas europeas. Europa no tiene requisitos de visa tan estrictos como los Estados Unidos. Hay pasantías en Microsoft Research para personas dedicadas a la ciencia.

All Articles