Entrevista Yahoo | conjunto 3 – Part 1

Hola, soy Saurav Biswas, de IIT Kharagpur, actualmente estoy haciendo mi doctorado en Machine Learning en Alemania. Me contrataron en Yahoo SDC, India, en diciembre (3 para ser precisos) del año pasado, a través de entrevistas en el campus. Me ofrecieron un puesto de ingeniero de software senior.

La entrevista consistió en una prueba escrita que constaba de 25 preguntas objetivas, una ronda de codificación y luego tres técnicas y una ronda de recursos humanos.

Aquí está la lista de entrevistas en orden cronológico:

Ronda 1: prueba escrita
La ronda constaba de 25 preguntas objetivas de algoritmos básicos, estructuras de datos, sistema operativo, redes, bases de datos y algunos acertijos matemáticos. De esta ronda, se seleccionaron 20 personas para la siguiente ronda de codificación. Esta ronda escrita se llevó a cabo a mediados de noviembre.

Ronda 2: Codificación
Nos dieron una hora, y el problema era algo así como, dado un conjunto de pares de puntos bidimensionales (flotantes/dobles), averiguar los dos puntos más cercanos, para cada punto. Utilicé el enfoque recursivo de dividir y conquistar para resolverlo en tiempo O (nlgn). Más tarde me dijeron que generalizara el código para n puntos (pseudocódigo) después de que mi algo pasara los casos de prueba con éxito.

De la ronda de codificación, se seleccionaron alrededor de 10 personas para la ronda de entrevistas técnicas de PI.

Entrevistas técnicas:

Ronda 1:
Me hicieron algunas preguntas en listas enlazadas que respondí fácilmente. La última pregunta fue que supongamos que ha implementado un motor de búsqueda, quiere encontrar si una URL escrita por usted está presente en el caché de URL que tiene, más o menos tiene que dar un algoritmo optimizado para ello. Había leído sobre árboles de sufijos la noche anterior (buena suerte) y logré codificar el problema con relativa facilidad. El entrevistador quedó satisfecho y califiqué para la segunda Entrevista Técnica.

Ronda 2:
Esta vez, el entrevistador planteó un acertijo matemático. No lo recuerdo exactamente, pero era algo que el problema, cuando se enmarcaba matemáticamente, te daría una desigualdad en dos variables, y tenías que resolver las dos incógnitas. Inicialmente estaba en un apuro, pero el entrevistador tuvo la amabilidad de sugerirme que lo resolviera heurísticamente. Empecé con casos base y procedí y finalmente la solución convergió después de algunas iteraciones. El entrevistador quedó satisfecho. Luego habló sobre en qué me gustaría trabajar si recibiera una oferta de Yahoo. Debido a mi formación en aprendizaje automático, estaba interesado en trabajar en el motor de búsqueda de Yahoo y me dijo que definitivamente lo estudiaría. Pasé esa ronda.

Ronda 3:
Esta vez, el entrevistador se enfocó en los conceptos de Redes, OS y OOP. Me pidieron que codificara el problema múltiple Productor/Consumidor, lo cual hice. Luego hizo algunas preguntas sobre programación orientada a objetos, como la diferencia entre sobrecargar y anular, funciones virtuales y de amigos, etc. También hubo una pregunta sobre iteradores en JAVA. Tenía un gran dominio de la programación orientada a objetos, así que les respondí. Finalmente me dijo que le gustaría hacerme una pregunta de Networking. Me dijo que explicara el algoritmo Leaky Bucket. Yo no sabía nada al respecto, así que le dije que tal vez él podría preguntarme algo más. Así que me preguntó sobre el protocolo de enlace de tres vías de TCP. Lo hice más o menos bien.

Ronda final: RRHH
La entrevista de RRHH fue casual, preguntándome sobre intereses personales, pasatiempos (dije que tocaba la guitarra) y qué aportaría si me ofrecieran un trabajo en Yahoo. También me preguntó si tenía otras empresas entre manos. No tenía ninguno, así que dije que me gustaría aceptar la oferta si la recibía.

Así que finalmente me contrataron en el puesto de ingeniero de software sénior. Pero recibí una oferta de doctorado de Alemania en Machine Learning, por lo que rechacé la oferta a fines de junio.

Como nota de consejo para los compañeros aspirantes, les diría que lean Cormen y Tenenbaum para Algo/DS. Personalmente me gustaría agradecer a g4g por su maravillosa colección, que también es imprescindible. Me ayudó mucho también. Además, la gente tiende a estropear las preguntas del sistema operativo/redes, por lo que debe mantener los conceptos básicos como sincronización, manejo de procesos, interbloqueos, administración de memoria, TCP/IP claros. Leer cosas básicas para bases de datos como claves primarias, normalización y eso debería ser todo. Consulte xkcd para los acertijos matemáticos estándar.

La mejor de las suertes para todos.

Este artículo ha sido compilado por Saurav Biswas . Muchas muchas felicidades a Saurav por su selección. Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo y enviarlo por correo electrónico a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Todos los problemas de práctica para Yahoo!

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *