Recibí una llamada de Google después de solicitar una billonésima vez.
Y esto es lo que recibí de un buen amigo mío que estuvo asociado con Google durante mucho tiempo.
——————
- ¿Hay algún tema de juegos relacionado con 'Entrevista de trabajo'?
- ¿Qué se debe esperar durante una entrevista de Android en el sitio?
- Cómo prepararse para una entrevista con el ingeniero de software de Microsoft / probador de software
- Cómo escribir una carta informal de agradecimiento después de una entrevista
- ¿Cuáles son las preguntas formuladas en la entrevista de Tata Steel MT?
Materiales para revisar antes de programar su entrevista telefónica:
• una copia no oficial de su transcripción
• AL MENOS 3 días y horarios en los que estaría disponible para el teléfono técnico
entrevista incluyendo la zona horaria en el siguiente formato (ej .: 6/12 – 10:00 am – 2:00 pm
PST)
• el lenguaje de programación que le gustaría usar para la entrevista: Java, C ++, C o Python
• el mejor número de contacto para que el ingeniero se comunique con usted el día de la entrevista
Consejos para la entrevista de Google:
¡Aquí hay algunos consejos y sugerencias para ayudarlo a prepararse para el éxito! ¡Los que estudian tienden a hacerlo MUCHO mejor en sus entrevistas!
1) Planifique con anticipación:
Los ingenieros de Google que lo entrevistarán solo tienen un tiempo limitado para sus proyectos, ¡así que reserve tiempo en su agenda también! Esto también lo ayuda a relajarse y desempeñarse mejor en la entrevista. Tenga a mano un bolígrafo y papel en caso de que se le pida que escriba algunas cosas.
2) Qué esperar:
Entrevista técnica de hasta 45 minutos con un ingeniero de software de Google.
El entrevistador estará interesado en su conocimiento de los principios de la informática (estructuras de datos, algoritmos, etc.) y cómo se pueden utilizar en sus soluciones.
3) Preguntas de la entrevista:
Los temas de la entrevista pueden cubrir cualquier cosa en su CV (¡especialmente si ha declarado que es un experto!), Preguntas de codificación de pizarra, construcción y desarrollo de algoritmos complejos y análisis de sus características de rendimiento, problemas lógicos, diseño de sistemas y principios básicos de informática – tablas hash , pilas, matrices, etc. Los fundamentos de informática son requisitos previos para todos los roles de ingeniería en Google, independientemente de la antigüedad, debido a las complejidades y la escala global de los proyectos en los que terminaría participando.
4) Cómo tener éxito:
En Google, creemos en la colaboración y el intercambio de ideas. Lo más importante, necesitará más información del entrevistador para analizar y responder la pregunta en toda su extensión.
* Está bien cuestionar a su entrevistador.
* Cuando se le solicite que brinde una solución, primero defina y enmarque el problema tal como lo ve.
* Si no comprende, solicite ayuda o aclaraciones.
* Si necesita asumir algo, verifique verbalmente que sea una suposición correcta.
* Describa cómo quiere abordar la resolución de cada parte de la pregunta.
* Siempre hágale saber a su entrevistador lo que está pensando, ya que él / ella estará tan interesado en su
proceso de pensamiento como su solución.
Además, si está atascado, pueden proporcionar pistas si saben lo que está haciendo.
* Finalmente, escuche, ¡no se pierda una pista si su entrevistador está tratando de ayudarlo!
5) ¿Qué busca Google ?:
“No estamos simplemente buscando ingenieros para resolver los problemas a los que ya conocen las respuestas;
estamos interesados en ingenieros que puedan resolver las respuestas a preguntas que no habían encontrado antes “.
Los entrevistadores analizarán tanto el enfoque de las preguntas como la respuesta:
* ¿El candidato escucha atentamente y comprende la pregunta?
* ¿Se hacen las preguntas correctas antes de continuar? (¡importante!)
* ¿Se utiliza la fuerza bruta para resolver un problema? (¡no está bien!)
* ¿Se asumen las cosas sin verificar primero? (¡no está bien!)
* ¿Se escuchan y se escuchan sugerencias?
* ¿El candidato es lento para comprender / resolver problemas? (¡no está bien!)
* ¿Le gusta al candidato encontrar múltiples soluciones antes de elegir la mejor?
* ¿Se buscan nuevas ideas y métodos para abordar un problema?
* ¿Es el candidato inventivo y flexible en sus soluciones y abierto a nuevas ideas?
* ¿Pueden las preguntas pasar a una resolución de problemas más compleja?
Google desea ver un código claro, eficiente y de muy alta calidad sin errores de escritura. Debido a que todos los ingenieros (en todos los niveles) colaboran en toda la base de código de Google, con un proceso de revisión de código eficiente, es esencial que cada ingeniero trabaje con el mismo alto nivel.
6) ¡Haz más preguntas !:
Asegúrese de tener una comprensión decente de Google como empresa, más allá de los principales productos de Google, descubra lo que hacemos aquí:
Sobre nosotros | Google OR:
Google – Wikipedia
Al final de la entrevista, la mayoría de los entrevistadores le preguntarán si tiene alguna pregunta sobre la empresa, el entorno laboral, su experiencia, etc. Es inteligente tener algo preparado previamente para cada entrevista, pero no se preocupe demasiado si su la mente se queda en blanco.
Si tiene preguntas sobre el proceso de la entrevista, la remuneración o su desempeño, diríjalas a su reclutador.
7) Lectura adicional:
* Para comprender cómo funcionan los equipos de desarrollo de Google:
Desarrollo de software ágil – Wikipedia
* Para saber más sobre los proyectos principales de Google: http://labs.google.com/why-googl…
Si aún no ha leído los consejos de preparación técnica de Steve Yegge, consulte su blog:
Consigue ese trabajo en Google
* Debido al tamaño de los productos que va a construir, es imperativo que se sienta cómodo con la notación O grande, aquí es donde debe repasar:
Notación O grande – Wikipedia
8) Consejos de preparación técnica !:
Las principales áreas de ingenieros de software deben prepararse para tener éxito en la entrevista en Google:
Complejidad del algoritmo: es bastante crítico que comprenda el análisis de complejidad big-O. Nuevamente, ejecute algunos problemas de práctica para obtener esto en la aplicación.
Clasificación: Sepa cómo ordenar. No hagas burbujas. Debe conocer los detalles de al menos un algoritmo de clasificación n * log (n), preferiblemente dos (por ejemplo, clasificación rápida y clasificación por fusión). La ordenación por fusión puede ser muy útil en situaciones en las que la clasificación rápida no es práctica, así que échale un vistazo.
Hashtables: posiblemente la estructura de datos más importante conocida por la humanidad. Absolutamente deberías saber cómo funcionan. Sea capaz de implementar uno usando solo matrices en su idioma favorito, en aproximadamente el espacio de una entrevista.
Árboles: saber acerca de los árboles; Algoritmos básicos de construcción, transversal y manipulación de árboles.
Familiarícese con los árboles binarios, los árboles n-ary y los árboles trie. Familiarícese con al menos un tipo de árbol binario equilibrado, ya sea un árbol rojo / negro, un árbol splay o un árbol AVL, y sepa cómo se implementa. Comprenda los algoritmos de recorrido de árbol: BFS y DFS, y conozca la diferencia entre orden, postorder y preorder.
Gráficos: los gráficos son realmente importantes en Google. Hay 3 formas básicas de representar un gráfico en la memoria (objetos y punteros, matriz y lista de adyacencia); familiarícese con cada representación y sus pros y contras. Debe conocer los algoritmos básicos de recorrido de gráficos: búsqueda de amplitud y búsqueda de profundidad. Conozca su complejidad computacional, sus compensaciones y cómo implementarlos en código real. Si tienes la oportunidad, trata de estudiar algoritmos más sofisticados, como Dijkstra y A *.
Otras estructuras de datos: debe estudiar tantas otras estructuras de datos y algoritmos como sea posible. Debería saber especialmente sobre las clases más famosas de problemas NP-completos, como el vendedor ambulante y el problema de la mochila, y ser capaz de reconocerlos cuando un entrevistador le pregunte disfrazado. Descubra lo que significa NP-complete.
Matemáticas: algunos entrevistadores hacen preguntas básicas de matemáticas discretas. Esto es más frecuente en Google que en otras compañías porque estamos rodeados de problemas de conteo, problemas de probabilidad y otras situaciones de Discrete Math 101. Pase algún tiempo antes de la entrevista refrescando su memoria (o enseñándose) los elementos esenciales de la combinatoria y la probabilidad. Debería estar familiarizado con los problemas de n-choose-k y sus gustos: cuanto más, mejor.
Sistemas operativos: Conozca los procesos, hilos y problemas de concurrencia. Conozca las cerraduras y mutexes y semáforos y monitores y cómo funcionan. Conozca el punto muerto y el bloqueo en vivo y cómo evitarlos. Sepa qué recursos necesita un proceso y necesita un subproceso, y cómo funciona el cambio de contexto y cómo lo inicia el sistema operativo y el hardware subyacente. Conozca un poco sobre la programación. El mundo se está moviendo rápidamente hacia múltiples núcleos, así que conozca los fundamentos de las construcciones de concurrencia “modernas”.
Codificación: debe conocer al menos un lenguaje de programación realmente bueno, y preferiblemente debe ser C ++ o Java. C # también está bien, ya que es bastante similar a Java. Se espera que escriba un código en al menos algunas de sus entrevistas. Se espera que conozca una buena cantidad de detalles sobre su lenguaje de programación favorito.
9) Temas de muestra:
Codificación de temas de muestra: construir / atravesar estructuras de datos, implementar rutinas del sistema, destilar grandes conjuntos de datos a valores únicos, transformar un conjunto de datos en otro.
Diseño / Análisis de Algoritmo
Temas de muestra: análisis big-O, clasificación y hashing, manejo de cantidades obscenamente grandes de datos.
Consulte también los temas enumerados en “Codificación”.
Diseño de sistemas
Temas de muestra: conjuntos de características, interfaces, jerarquías de clases, diseño de un sistema bajo ciertas restricciones, simplicidad y robustez, compensaciones.
Discusión abierta
Temas de muestra: mayores desafíos enfrentados, mejores / peores diseños vistos, análisis de rendimiento y optimización, pruebas, ideas para mejorar los productos existentes.
Aquí hay más enlaces que reuní mientras me preparaba.
Cómo contratamos – Google Careers
Trae preguntas. Construye respuestas. – Google Careers
La vida en google
Cómo resolver las preguntas locas de la entrevista abierta de Google
Ahora, era joven e ingenuo y no pude descifrar esa entrevista, pero usando este enfoque logré obtener un puñado de cartas de oferta de empresas de primer nivel.
Incluyendo a Amazon, me ofrecieron un trabajo como científico de datos en Amazon Seattle el año pasado, me negué a aceptarlo debido a problemas personales.
Aleta.