Qué debo esperar en una entrevista de Ingeniero de Software en Google y cómo debo prepararme?

Recientemente me entrevisté para un puesto de Ingeniero de Software en Google (estoy asumiendo que también está solicitando un puesto de ingeniería). A continuación, algunas de las cosas que aprendí del proceso.

(Nota: no tenía ninguna experiencia en entrevistas para puestos de ingeniero de software -- he hecho sobre todo investigación durante los últimos años -- así que pasé bastante tiempo en averiguar qué esperar de este tipo de proceso de entrevista)

1. El primer paso es familiarizarse realmente con el proceso de entrevista. Algunas cosas que puedes hacer para este propósito:

  • Comprueba sitios web como glassdoor.com y careercup.com -- ambos ofrecen mucha información sobre qué esperar de las entrevistas. Yo incluso hice un simulacro de entrevista con careercup (que me ayudó mucho). También compré varios vídeos de entrevistas de careercup (esto también es muy recomendable -- de esta manera puedes aprender no sólo qué esperar de las entrevistas sino también lo que el entrevistador esperará de ti).
  • También deberías preguntar a tu reclutador toda la información posible sobre las entrevistas (por ejemplo, puedes averiguar de antemano qué equipos te entrevistarán y usar esta información para "afinar" tu preparación).
  • Pregunta a tus amigos si conocen a alguien que haya pasado por este tipo de proceso de entrevistas. Hablar con gente que ya ha tenido esta experiencia puede ser muy fructífero (lo fue para mí).
  • Otra cosa que ayudaría MUCHO (pero probablemente ya no es una opción para ti -- ya que te entrevistarán muy pronto) es tener entrevistas con otras empresas. De esta forma, te harás una idea de lo que puedes esperar de las entrevistas de Google (la mayoría de las grandes empresas tecnológicas -como Google, Facebook, Microsoft, Amazon, etc- tienen un proceso de entrevistas muy similar). Estoy convencido de que tener (al menos alguna) experiencia con este tipo de sistema de entrevistas es muy útil para mejorar tus habilidades de entrevista (yo no lo hice pero debería haberlo hecho).

2. Prepárate para las preguntas técnicas. Probablemente/con suerte ya habrás invertido una buena cantidad de tiempo en esto. De todos modos, estos son mis consejos:

  • De nuevo, consulta sitios como glassdoor y careercup (hay varios otros sitios así). Esto te dará una buena idea del tipo de preguntas que puedes esperar.
  • También puedes encontrar varias preguntas de entrevista en libros como "Programming Interviews Exposed..." y "Cracking the Coding Interview". En esos libros encontrarás información detallada sobre cómo resolver esos problemas, además de las soluciones.
  • También comprobé y resolví varios de los problemas de competiciones de programación online como Google Code Jam, Facebook Hacker Cup y Top Coder. Esto es mucho más divertido que simplemente resolver problemas de entrevistas (simpe/ish). Algunas de las lecciones que saqué de la resolución de esos problemas resultaron ser muy útiles durante mis entrevistas online.

(De todas formas, sea cual sea la fuente de problemas que quieras utilizar, la verdadera clave es resolver realmente los problemas tú mismo, es decir, NO te limites a leer las respuestas).

  • ¡Practica las entrevistas con tus amigos! Sé que es aburrido y molesto para tus amigos, pero es realmente importante (te ayudará mucho a tener una buena sensación de cómo es una entrevista de verdad).
  • Algo más (MUY IMPORTANTE): Haz la práctica en una pizarra (preferiblemente) o en papel, en definitiva: NO en un ordenador. El tipo de experiencia que te encontrarás haciendo una entrevista en Google será completamente diferente a la de escribir código en tu ordenador.

3. Sé que esto es difícil, pero es importante: estate relajado durante las entrevistas.

  • Algo que ayudará con esto (pero ciertamente no es suficiente) es estar lo más preparado posible para la entrevista.
  • Tener una oferta de otra empresa también podría ayudar mucho.Esto podría eliminar parte de la presión (de hecho, esto también puede ayudarte a conseguir una oferta - ser buscado por otras empresas tecnológicas dice algo bueno de ti - y también en la etapa de negociación).
  • Algo más que debes tener en cuenta es que TE HARÁN preguntas difíciles y completamente desconocidas/inesperadas. Ser consciente de esto debería ayudarle a no asustarse CUANDO esto ocurra.
  • Si una entrevista no va bien, intente superarlo lo antes posible (esto es muy importante para evitar arruinar las siguientes entrevistas). Esto ocurre muy a menudo (y es parte del juego), sólo recuerda que fastidiar una (o tal vez incluso dos) entrevista(s) no significa que no vayas a conseguir una oferta (a pesar de lo que dicen algunas personas en foros online). He oído muchas historias de personas que han tenido una o dos entrevistas malas y han conseguido una oferta de trabajo. La clave está en que alguno de los entrevistadores te quiera de verdad. Creo que es mejor tener 1 o 2 informes de retroalimentación muy buenos (de los entrevistadores) + algunos comentarios negativos en lugar de todos los informes de retroalimentación "simplemente bien" (no muy entusiasta).

4. Un último consejo: NO hagas la entrevista si no estás bien preparado. Si realmente quieres trabajar para Google tanto como la mayoría de las personas que se entrevistan con ellos, entonces pasar unas semanas extra (o incluso 1-2 meses extra) preparando las entrevistas tiene mucho sentido (este tiempo extra podría ser la diferencia entre conseguir el trabajo de tus sueños y tener que ir con un plan B).

¡Eso es todo! espero que encuentres algo de esta información útil. Buena suerte con tus entrevistas.