Puedes ver el contenido de este vídeo junto con su curso en el modo vídeo (similar a Udemy) si pulsas aquí.

Todo el proceso de entrevistas de Microsoft contado sin filtros

31 May 2025 20 min (0) Comentarios

Estructuras de datos, algoritmos, diseño de sistemas, alguna vez te has pensado que preguntan en las empresas grandes como microsoft para entrar como desarrollador senior a trabajar? 

 

 

No tenía pensado hacer este post, pero hace un tiempo hablando en un podcast con un compañero salió el tema, y hable de lo que me había sucedido a mi en concreto, el clip se hizo viral y hasta llegó a tendencias así que he decidido ampliar. 

 

Voy a explicar no solo que pasos hay que seguir en el proceso y como es cada entrevista sino como me fue a mi en particular. 

 

1 - Aplicar a la oferta

 

Microsoft, igual que muchas empresas grandes tienen tanto una web donde se puede aplicar como tienen empleados o empresas externas que van buscando perfiles que les cuadran. 

La web es esta: https://careers.microsoft.com/v2/global/en/home.html

 

Algo a tener en cuenta dentro de microsoft es que las entidades o como les llamen internamente son completamente independientes, eso quiere decir que si trabajas para microsoft Irlanda y te quieres mudar a España, no puedes simplemente pedir un traslado, tienes que aplicar a una oferta nueva y realizando todo el proceso de selección completo.

Lo mismo aplica para moverte a Seattle o cualquier otra oficina, son completamente independientes.

 

En mi caso envié mi CV en Abril de 2024 y ahí se quedó la cosa. 

 

 

2 - Hiring manager

 

A los meses, mediados de septiembre de 2024, me llegó un mensaje que les gustaba mi CV y que quieren tener una entrevista conmigo. 

Ese mismo día por la tarde tenemos una llamada, me explica un poco el proceso, la posición y hablamos sobre mi CV y cómo encaja con Microsoft. 

 

Todo va bien, y me envían el siguiente paso en el proceso, el test de código.

 

 

3 - Prueba de código en Microsoft para senior software engineer

 

Podríamos decir que esta es la primera entrevista real, aunque técnicamente sea el segundo paso en el proceso aún no hemos hecho nada.

 

Este paso es el típico donde te mandan un problema a casa y tienes que solucionarlo. En concreto Microsoft te manda un enlace a la plataforma Codility donde vas a tener que realizar dos problemas, donde el segundo es claramente más difícil que el primero. 

 

Puedes esperar cualquier tipo de problemas de los que encuentras en este tipo de plataformas como Codility, LeetCode o hackerrank. Tienes una hora y media y el código hay que hacerlo en la propia plataforma, lo cual suele ser un cagarro porque los editores de dichas plataformas son una mierda la mayoría. 

 

Hace cuatro años hice una entrevista con Microsoft y aquí es donde fallé, de hecho tengo un vídeo al respecto (https://youtu.be/Ltd5nteVSEc) . En esa entrevista falle porque el rendimiento de mi solución no era óptimo (pasaba, pero en los test de rendimiento tardaba mucho), y el feedback era que no usara LINQ, la propia librería de Microsoft para trabajar con colecciones.  Así que ya iba con ello en mente.

 

En mi caso tenía dos problemas similares a los siguientes: 

 

Robot room cleaner - https://algo.monster/liteproblems/489

 

 

Parallel courses  https://algo.monster/liteproblems/1136

parallel courses

 

Podríamos decir que uno entra en el grupo de los medios de Leer Code/hackerRank y el otro en el de los de nivel alto.

 

Desde mi punto de vista, no son tan simples como lo que vemos en Leetcode, ya que lo complican un poco con el texto/enunciado. Lo que yo pienso es que se hace para evitar que la gente use la IA para solucionar el problema. Pero bueno, si haces el advent of code cada año, los problemas que te pregunten en cualquier prueba de código son más simples que estos. 

 

Una vez enviéis la solución no sabréis si habéis pasado o no hasta que la propia microsoft os lo comparta, ya que en la propia web tienes dos o tres casos de test, pero internamente tienen muchos más, entre ellos los de rendimiento. Así que aunque lo tengáis todo verde de primeras puede ser que no paseis. 

 

En mi caso en concreto pensaba que no había pasado, pero a mediados de noviembre, el de recruiting de microsoft me llamó y me dijo que mi código era bueno y tenía que hacer la siguiente parte del proceso al día siguiente o al otro.

Para ser claros, entre que hice el test, y me comunicaron el resultado pasaron más de 60 días. 

 

 

4 - Segunda ronda del proceso de microsoft

 

Esta parte del proceso se divide en tres partes donde todas pasan el mismo día. Se hacen todas con indiferencia de si pasas o no una de ellas. Además que no tienen porque ser en este orden

 

Estas partes son las siguientes:

 

4.1 - Entrevista técnica de código en Microsoft

 

Esta entrevista se centra en hacer un problema similar al del punto 3, pero será de nivel medio o difícil. En este caso en concreto fue clone graph, un ejercicio común dentro de este tipo de plataformas. 

https://leetcode.com/problems/clone-graph/description/

clone graph

Durante la entrevista estas haciendo pair programming con otro desarrollador de microsoft, al que le puedes hacer preguntas y si te atascas te dará pistas para que puedas continuar, trata a esa persona como si fuera un trabajador de tu propia empresa y estáis solucionando un problema real. 

Algo importante de estas entrevistas es mencionar y solventar los edge cases, esos casos que pasan muy poco pero pueden existir.

E igual que en el test que te mandan a casa, tienes que terminar en la solución más óptima, ya que internamente tienen más tests de los que tú puedes ver. 

 

Si sabes la solución de memoria los ejercicios estos se hacen en 10 minutos, así que hay tiempo de sobra incluso para empezar con una solución que no es la más óptima e ir evolucionando, eso no resta puntos, siempre y cuando no te vayas atascando. 

 

Recomiendo llevar mirados o bien saber cómo trabajar con graphs, trees, arrays y ante la duda es un hashmap.

 

 

4.2 - Entrevista de programación orientada a objetos en Microsoft

 

Para mi esta era la más rara porque no sabía qué esperar, pensaba, y lo digo enserio que iba a ser una hora de preguntas relacionadas con programación orientada a objetos.

 

Pero no, en verdad es el diseño de una aplicación, no de un sistema, eso vendrá luego, pero de una aplicación aplicando los principios de programación orientada a objetos. 

 

Un ejemplo claro es el de aparcamiento o una biblioteca. Tienes que pensar en las entidades y las  relaciones entre ellas. Las acciones del sistema y cómo se ejecutan, las acciones de usuario y qué efectos puede tener, etc.

Durante el transcurso de la entrevista te irán haciendo preguntas y tendrás que ir modificando tu propia implementación y se espera que hagas preguntas.

La idea principal de esta entrevista es identificar si el entrevistado es capaz de diseñar software mantenible, extensible y limpio en vez de la optimización y el rendimiento que vimos en la otra entrevista. 

 

 

4.3 - Entrevista de diseño de sistemas en microsoft

 

La entrevista de diseño de sistemas se realiza en una pizarra, o lo que se llama whiteboard exercise, en este caso, no programas código sino que explicas arquitecturas y sus componentes.

 

Básicamente tienes que diseñar una aplicación web desde cero, y la pregunta será algo similar a una app de mensajería instantánea o una app de reviews y críticas similar a google reviews o tripadvisor, ambos casos los puedes encontrar en mi libro Construyendo sistemas distribuidos.

construyendo sistemas distribuidos

Hay varios puntos claves en este tipo de entrevistas, el primero y más importante es que no hay una única solución válida, por lo tanto todo tiene pros y contras, lo que quiere decir que debemos comunicar con el entrevistador en todo momento lo que estamos pensando. 

 

Algo tan simple como poner una cola en un sitio, no dices “voy a poner una cola” sino que dices, “voy a poner una cola aquí, por el motivo X para así poder hacer Y de una forma eficiente o que escale”. 

Dividir la aplicación, y sus motivos, ¿usas serverless? si , no por que? La idea es mantener esa conversación fluida mientras diseñas, justificando en cada momento lo que estás haciendo. 

 

Si te centras en detalles minúsculos lo más normal es que te digan que aceleres para no gastar los 45 minutos que dura la entrevista en ello, ya que mucha gente comete el error de centrarse en detalles. 

Piensa siempre en la escalabilidad y mencionarlo en cada decisión puede ser clave.

 

Y al tiempo, en mi caso a los 25 días tenía una respuesta

 

 

5 - Entrevista de comportamiento

 

Si pasas las anteriores tendrás la Behavioural Interview, por lo que he oído esta entrevista no sucede en todos los equipos/orgs pero bueno en mi caso si pasó.

En esta entrevista es donde tu te tienes que vender como ingeniero que soluciona problemas y no como alguien que solo hace los tickets que le dicen.

Te irán haciendo preguntas sobre tu pasado, con tu CV delante, que les expliques problemas que has tenido y como se soluciono o que aprendiste de él. 

 

Cuándo fue la última vez que la has cagado en el trabajo, Quizá no la hayas cagado en mucho tiempo, sobre todo dependiendo del nivel de testeo que tenga tu empresa actual, así que haz memoria, porque en esta situación no puedes contestar algo como “yo nunca despliego un bug a producción” o “mi código nunca falla”, porque además de ser mentira, te hará fallar esta entrevista. 

Por supuesto te harán preguntas para ver si eres capaz de adaptarte a cambios inesperados. Como que si un requisito cambia en el último minuto o si has tenido que aprender algo rápido para una solución.

 

Lo que se recomienda en este tipo de entrevista es que uses el método STAR (Situation, Task, Action, Result) que viene siendo contar una historia, que es la situación. Explicar cuál fue tu responsabilidad (task). Poner en detalle qué acciones específicas se hicieron (Action) y finalmente el resultado de las acciones (Result). La idea es que te centres en lo que TU hiciste y aprendiste. Personalmente no es un método que me agrade, pues en mi opinión somos un equipo pero a las empresas les gusta así que es lo que hay.  

 

 

6 - Oferta

 

Si pasas todas las entrevistas y hay algún equipo que te quiere, te llegará una oferta.

 

En mi caso, en enero de 2025 recibí un mensaje que mi candidatura no había sido seleccionada. Le pregunté al recruiter interno de Microsoft y me dijo que en el sistema los motivos estaban en blanco. 

 

Dos días después despidieron a gente, bastante, así que yo personalmente lo enlazo y pienso que ese puede ser el motivo, pero me gustaría saber si era ese o no, pero vaya, si el interno de Microsoft me dijo que no había motivo, entiendo que nadie lo sabrá nunca. Y como es algo que solo me importa a mi, pues es lo que hay. 

microsoft despidos

Después de que el proceso durase desde principios de abril de 2024 hasta finales de enero del 2025 tampoco puedo esperar mucho más. 

Una experiencia bastante mala como candidato la verdad.

 

© copyright 2025 NetMentor | Todos los derechos reservados | RSS Feed

Buy me a coffee Invitame a un café