Desafío del Foobar: El proceso secreto de contratación de Google

Nivel 4: Este nivel me pareció el más difícil de los cinco. Requería la aplicación de varios conceptos para resolver un único problema. Hay un total de dos preguntas en este nivel y se da un tiempo de un total de dos semanas para resolver cada pregunta.

En este nivel se requiere un amplio conocimiento de algoritmos y estructuras de datos.

La primera pregunta estaba basada en el concepto de teoría de números y grafos. Tuve que implementar el algoritmo de Bellman-Ford para resolver esta pregunta.

Me llevó mucho tiempo entender estos conceptos e implementarlos para resolver estas preguntas. Pero fui capaz de resolver ambas preguntas a tiempo.

¡Después de completar con éxito el nivel 4 se obtiene otro enlace de referencia para invitar a un amigo más a probar este desafío!

Nivel 5: Este fue el segundo problema más difícil de todo el desafío y se basó en un concepto puramente matemático. El nivel final sólo tenía una pregunta y se dieron veintidós días para resolver ese problema.

El problema requería la comprensión de permutaciones y combinaciones y la aplicación del teorema de enumeración de Pólya y el lema de Burnside. Después de entender estos dos teoremas la parte de codificación fue bastante sencilla.

¡Con la presentación de esta pregunta, el Desafío Google Foobar se ha completado!

(Imagen del autor) Desafío Foobar completado

Después de terminar el desafío, obtuve una cadena encriptada que fue fácil de descifrar usando base64.

import base64encrypted="THE ENCRYPTED MESSAGE"my_eyes=str.encode("MY USER NAME")decoded=base64.b64decode(encrypted)decrypted=""for i in range(0,len(decoded)):decrypted+=chr((my_eyes ^ decoded))print(decrypted)

Este fue el código que usé para descifrar el mensaje. El mensaje descifrado era:

{'success' : 'great', 'colleague' : 'esteemed', 'efforts' : 'incredible', 'achievement' : 'unlocked', 'rabbits' : 'safe', 'foo' : 'win!'}

¿Qué ocurrirá después de completar el reto?

Después de completar con éxito los cinco niveles, lo más probable es que el reclutador de Google se ponga en contacto contigo para realizar una entrevista.

Es posible que recibas un correo electrónico o una llamada telefónica y que, si superas la entrevista, te contraten en Google.

¿Cómo conseguir el reto Foobar?

Desgraciadamente, este reto no está disponible para todo el mundo y Google lo envía sólo a desarrolladores específicos (puede estar basado en su historial de búsqueda – palabras clave técnicas).

No te preocupes si aún no has conseguido esta invitación, esta no es la única manera de conseguir un trabajo en Google.

¡No encuentres Foobar, deja que Foobar te encuentre a ti!

(Imagen del autor)

Conclusión

Diría que es una gran oportunidad para aprender y te recomendaría que resolvieras las preguntas si consigues una invitación.

Mientras resuelves los problemas no mantengas tu objetivo de ser contratado en Google sino de aprender las nuevas técnicas y experimentar uno de los mejores retos de codificación.

¡Foobar es más de aprender y poner en práctica, en lugar de saber todo antes!

Si tienes alguna duda o comentario, por favor, ponlo en la sección de comentarios.

Para mejorar tu código consulta nuestro artículo aquí.

(Imagen del autor)

Deja una respuesta

Tu dirección de correo electrónico no será publicada.