¿Qué preguntas le hicieron en la entrevista de programación para Google, Amazon, Facebook o Microsoft?

He estado en entrevistas en la mayoría de estas empresas.

Conocer una pregunta concreta no te ayudará demasiado. Prefiero centrarme en mejorar el conocimiento general, puedo compartirles qué temas se trataron:

  • utilizando matrices simples como estructuras de datos para diversas operaciones, principalmente involucrando elementos de intercambio de manera (digamos complicada), como rotar una matriz o calcular algún tipo de valor agregado de dicha entrada. Practicar problemas de consulta y actualización ayuda aquí,
  • árboles, muchos árboles. Cada entrevista contiene al menos una pregunta que involucra el recorrido del árbol que resulta en la destrucción de los enlaces padre-hijo. Por lo general, el árbol también es una estructura de datos que le permitirá reducir la complejidad temporal de una solución a un problema simple,
  • gráficos Espere problemas con el algoritmo BFS / DFS / Dijkstra,
  • los problemas de ventanas deslizantes son comunes,
  • también puede obtener un problema simple y discreto, como un programa de escritura que, por ejemplo, requerirá que distribuya las bolas de manera uniforme entre las personas, y la trampa estará en manejar varios casos extremos de manera estructurada,
  • debe estar familiarizado con las estructuras de datos más comunes: mapas, mapas de árboles, vectores, árboles, gráficos, etc., y saber cómo implementarlos usted mismo,
  • También es necesario aprovechar la entrada de datos ordenados. Debe saber cómo funciona la búsqueda binaria,
  • dependiendo de sus antecedentes, es posible que le hagan preguntas sobre el procesamiento de datos, la red, los archivos, etc., en lugar de los algoritmos puros,
  • Nunca vi un problema de manipulación de bits ni alguna pregunta complicada para resolver el cerebro. Por supuesto, esto no significa que no se le haga esa pregunta.

Siempre se espera que describa la complejidad del tiempo y la memoria de su solución. Primero debe describir el mejor tiempo de solución posible para un problema (por ejemplo, debe consumir todas las entradas). Si su solución tiene un peor momento, debe pensar si puede mejorar.

Hay un gran libro de Gayle Laakmann McDowell que cubre ese tipo de entrevistas.

Me han entrevistado en todas las empresas mencionadas anteriormente y he entrevistado a personas. Estas son algunas de las preguntas más notables que me hicieron:

Google : me preguntaron “¿Cómo crearías tu propia función hash?” Y “¿Cómo implementarías un árbol rojo-negro?”. No me gustó esto porque este último requería conocimientos previos de un algoritmo específico y el primero requería conocimientos de matemáticas.

Amazon : “Cree un método que encuentre el enésimo término en la secuencia de Fibonacci de forma recursiva e iterativa y el análisis de eficiencia para ambos”. Me gustó esto porque las soluciones de análisis de eficiencia eran bastante únicas.

Facebook : “Ordene esta lista de un objeto que tiene 3 estados”. Luego, el entrevistador repitió el problema alrededor de 4 veces, forzando 5 soluciones diferentes con 4 optimizaciones diferentes. Por ejemplo, uno utilizaba índices, otro no tenía una restricción de memoria adicional, otro tenía la restricción de ser estable. Me hizo codificar varias de estas soluciones y una de las soluciones en los últimos 4 minutos de la entrevista. Este chico era un jefe!

He estado en entrevistas en todas estas empresas. Recolectar un par de preguntas no ayudará mucho en la preparación. Verifique leetcode.com. Tienen la mejor colección de preguntas posibles para la entrevista. Les puedo asegurar que ni una sola pregunta de codificación estaba fuera del banco de preguntas de Leetcode. Dicho esto, debe centrarse en desarrollar su capacidad de resolución de problemas en lugar de resolver preguntas específicas. La ironía es que usted desarrolla su capacidad de resolución de problemas resolviendo preguntas específicas. Ve a LeetCode y comienza a derribarlos uno tras otro.

Buena suerte !!

He realizado múltiples entrevistas para puestos de consultoría de Microsoft (desarrollo de SharePoint, desarrollo de .NET, desarrollo del lado del cliente). Mi objetivo era identificar la habilidad más fuerte del candidato. Raramente hago preguntas teóricas porque creo que son inútiles. Hago muchas preguntas sobre los proyectos que el candidato completó en el pasado, luego presentaría un escenario problemático específico y le pediría al candidato que me dé ideas para resolverlo. Estoy más interesado en un proceso de pensamiento, mentalidad de crecimiento y el ingenio del candidato para resolver el problema. Nunca recomiendo a aquellos que están bs-ing en lugar de simplemente decir “No sé”. Los problemas de personalidad juegan un papel muy importante incluso durante las entrevistas técnicas porque nadie quiere trabajar con alguien poco ético o falso. Desafortunadamente, la mayoría de los candidatos fallan en las entrevistas técnicas porque no tienen suficiente experiencia para ocupar puestos de nivel experto. He visto un caso en el que un candidato sin experiencia ingresó accidentalmente, pero estaba muy triste y estresado en el trabajo porque no podía realizarlo (fue retirado del proyecto un año después).

Aquí hay preguntas para la entrevista de la empresa de alta tecnología.

* Toma una función como parámetro
* Devuelve una función que cuando se llama pasa los argumentos a la función pasada y devuelve el valor de retorno de la función pasada
* La función devuelta solo llama a la función pasada una vez (las llamadas posteriores se ignoran)

¿Qué es una buena pregunta de entrevista frontal para hacerle a un ingeniero de pila completa? (Algorítmico / pizarra / técnico de alguna manera)

More Interesting

¿Cuáles son las preguntas más frecuentes en ASP.NET en una entrevista y cuáles se pueden preguntar si uno ha creado un sitio web universitario como parte de un proyecto?

¿Cómo debo prepararme para las entrevistas de Google, Facebook y Microsoft con CLRS considerando que realmente no soy bueno en Data Structures?

¿Cuáles son algunas buenas preguntas para la entrevista de JavaScript?

¿Cuál es la lógica para aplicar la gravedad a un vector?

Cómo comenzar con la codificación como principiante

¿Cómo es una típica entrevista de ingeniería de software con usted?

¿Google siempre hace preguntas de matemáticas en las entrevistas? ¿Qué áreas de matemáticas se solicitan típicamente?

Cómo evitar mostrar mi transcripción durante el proceso de entrevista

Dada una matriz de entrada de enteros de tamaño n, y una matriz de consulta de enteros de tamaño k, ¿cómo encuentro la ventana más pequeña de la matriz de entrada que contiene todos los elementos de la matriz de consulta, preservando el orden?

Si la resolución de problemas algorítmicos es lo que quieren probar, ¿por qué no contratan directamente a los mejores codificadores o fuerzas de código?

Cómo manejar el proceso 'Pensar en voz alta' en entrevistas tecnológicas

¿Qué es una entrevista de estrés y qué tipo de preguntas se hacen en esta entrevista?

¿Cuáles son los elementos comunes entre dos matrices de tamaño n y m? ¿Cuál es el tiempo y la complejidad de la memoria?

¿Qué temas debo preparar para codificar entrevistas en empresas multinacionales y startups después de completar B.Tech en CSE?

¿Hay alguna entrevista simulada de programación en línea organizada por pares?