- No descarte los llamados cursos de “teoría”. Es necesario comprender los algoritmos para pasar entrevistas y escribir código escalable.
- Trabajar en proyectos de programación, cuanto más grande mejor.
- Obtenga su código revisado por otros, cuanto más experimentado mejor.
- Hazte muy bueno en un lenguaje de programación. Si es Java, estudie Java efectivo . Para C ++, C ++ efectivo y su secuela, etc.
- Tome un curso de Lenguajes de programación para exponerse a diferentes paradigmas de programación. Las ideas se trasladarán. (El mapa de reducción de Google vino del mundo Lisp).
- Aprenda sobre la jerarquía de memoria, desde registros hasta almacenamiento secundario, y cómo optimizar el rendimiento.
- Aprenda sobre concurrencia y sincronización.
- Estudie un libro de preparación para entrevistas, como Programar entrevistas expuestas o Romper la entrevista de codificación .
- Cuando presente la solicitud, especialmente si no pertenece a una de las 5 mejores escuelas, busque un empleado de Google / FB que pueda derivarlo. Eso lo lleva a la cima de la pila, y esa persona estará motivada para ayudarlo, incluso para asegurarse de que no se pierda en la confusión. No aplique a través del sitio web. Eso hará que cualquier remitente posterior no sea elegible para un bono de referencia.
FWIW, he trabajado en Google desde 2004 y he dado más de 100 entrevistas con ingenieros de software.