miércoles, 5 de diciembre de 2007

Microsoft III - Una de puzzles

La segunda entrevista era en el edificio 40 con un tipo llamado Anthony Jones, también del grupo de Core Networking. Llegué al edificio, le dije a la recepcionista que estaba para una entrevista, llamó al entrevistador y en cinco minutos bajó a por mí.

Se trataba de nuevo de un hombre de mediana edad, esta vez americano. Esta vez su despacho se parecía a un despacho, no como en la primera entrevista. Tenía varios libros, cuatro o cinco ordenadores, y varios premios de 'SHIP IT!' que se los dan a todos los empleados que han trabajado en un proyecto cuando este se comercializa.

Tomé asiento y empezamos la entrevista. Las primeras preguntas las de siempre. Luego pasó a preguntarme por el proyecto, en especial por el aspecto del trabajo en equipo: como nos organizábamos, como resolvíamos los desacuerdos, como distribuíamos el trabajo, etc. Le expliqué como lo habíamos hecho a hasta ahora y añadí que uno de los motivos por los que me encantaría trabajar en Microsoft es para conocer como una gran empresa es capaz de organizar a 500 tíos trabajando en lo mismo y que las cosas salgan bien. El entrevistador quedó bastante impresionado cuando escuchó esto, y me dijo que le alegraba oir que pienso que desarrollar un proyecto no es sólo programar como mucha gente cree, sino que implica muchas otras cosas.

Después de esto pasó a una 'coding question'. Era muy facilita. Dadas una cadena principal y una subcadena (menor que la principal), escribir una función que te diga si la subcadena existe dentro de la cadena principal.

De nuevo empecé dibujando un ejemplo y razonando sobre él, mientras le explicaba mis razonamientos. No voy a entrar en detalles de como resolver este problema, ya que es muy muy sencillo. Después de explicarle el algoritmo me dijo que lo codificase en la pizarra. Escribí el código y le hablé de la complejidad y el entrevistador quedó bastante satisfecho.

Parece ser que mi capacidad para escribir algoritmos era suficiente para él, así que dijo que ahora me preguntaría un par de puzzles, es decir, típicos acertijos o preguntas de ingenio. Las que me planteó fueron las siguientes:

PUZZLE 1
Tenemos dos palos, y una cuerda atada entre ellos tal y como muestra el dibujo. La cuerda mide 150 cm (antes había un error, había puesto 175 cm), los palos 100 cm, y la cuerda está colgando a 25 cm del suelo. ¿A qué distancia está un palo del otro?


PUZZLE 2

Tenemos dos cubos, 50 canicas rojas y 50 canicas negras. Distribuir las canicas entre los dos cubos para que, eligiendo un cubo al azar y una canica de ese cubo también al azar tengamos la probabilidad más alta de que esa canica sea roja.


La solución la pondré en unos días para que intentéis resolverlos y pongáis la solución en los comentarios. Yo el 1 lo resolví a la primera y el 2 a la segunda. El entrevistador quedó realmente impresionado y decidió terminar ya la entrevista. Nos quedaban 20 minutos todavía, así que me estuvo explicando como empiezan un proyecto en Microsoft y como se coordinan los tres tipos de empleados: Program Managers, Software Developers y Software Testers. Luego me estuvo contando que llevaba 9 años trabajando en WinSocks, y que ahora estaban trabajando ya en el nuevo Windows, que se llamará Windows Seven. También me dijo que había escrito un libro, pero ya vendía muy pocos ejemplares, y alguna que otra cosilla más. La verdad es que fue una conversación muy interesante.

Después de nuestra pequeña charla, me llevó de nuevo a recepción. La señorita me pidió un taxi al edificio 26 y Anthony se despidió de mi. La siguiente entrevista sería una 'lunch interview', es decir, que primero comería con el entrevistador. Esta vez era con el otro grupo , el de 'Component Platform'. Me monté en el taxi y me dirigí rumbo a la siguiente entrevista mientras pensaba en que nuevas sorpresas me depararía el día.


2 comentarios:

Fede dijo...

diria que la respuesta al primero es aproximadamente 90.14cm,
para el segundo no se me ocurre ninguna posibilidad mayor que el 50% pero supongo q la habra porque sino menuda parida, creo q nunca podria trabajar en microsoft, jo...

Angel dijo...

Había un error en el primer puzzle. La longitud de la cuerda es 150cm y no 175cm como tenía puesto. Lo siento.