Notas del Google Tour Perú 2007
Google vino a nuestro país y comenzó una gira por universidades, aproveche para ir a la conferencia que dieron en la UNMSM y comparto algunas notas :
Ciencia de la Computación aplicada: una pequeña muestra por Markus Mock
- habla un poco de la probabilidad condicional, muestra un ejemplo con una búsqueda en Google
- la forma antigua de buscar : usar diccionarios y definir distancias entre las palabras para calcular similitudes
- lo anterior da problemas como que no abarca palabras nuevas como sobrenombres, palabras de reciente uso o abreviaturas.
- el estilo de corrección que usa “un editor de texto bastante conocido” no es un modelo a seguir
- usan el teorema de Bayes, calculan probabilidades, usan la gran cantidad de búsquedas para analizar, para demostrarlo usan el ejemplo de la frase “britney spears” de donde llegan a obtener 800 variaciones en búsquedas y logran sugerir correcciones.
- ahora habla de hashing, muchos más eficiente que almacenar en lista, acelera la búsqueda y permite mejores comparaciones de datos.
- ejemplo con Google News, permite comparar noticias, relacionarlas y analizar preferencias de los usuarios.
- el tema ahora son autómatas finitos y lengua hablada, explica que con ellos logran convertir fonemas en hashes y partir de allí interactuar con los sistemas usando la voz.
- … y muestra un ejemplo : GOOG-411 es el producto que actualmente usa esto, muestra como pedir una pizza e incluso de que te envie un mapa de ubicación del negocio consultado, todo usando la voz.
- recalca que saber los fundamentos de lo explicado anteriormente es clave en ciencias de la computación.
Como preparase para una entrevista técnica de Google por Eduardo Morales
- Hace la aclaración que se cuando se refiere a ingenieros de software, se refieren a los que desarrollan software, hace una analogía : ingenieros civiles se llaman asi por que hacen obras de construcción civil.
- Se buscan personas responsables, con iniciativa, todo se mide con resultados.
- Se busca personas que sepan expresar sus ideas, discutirlas y llevarlas a cabo.
- Tienes mas oportunidad si alguien te recomienda.
- primero envías tu CV, luego hay entrevista telefónica (donde incluso tendrías que programar por teléfono según cuenta :S ) y luego una serie de entrevistas personales que pueden ser de 6 a 5 en un dia.
- Los ingenieros que trabajan en los proyectos están muy involucrados en el proceso de selección.
- Es 100% seguro que te preguntaran sobre algoritmos y estructuras de datos.
- Antes de la entrevista necesitas practicar, practicar y practicar.
- Durante las preguntas, el proceso de razonamiento también se tiene en cuenta, los problemas presentados son como capas de cebolla, uno dentro de otro.
- Muestra una pregunta al auditorio, se monta una interesante discusión buscando resolverla, al final se llego cerca pero nadie acierta (es que estábamos distraídos).
- También hay preguntas que tratan de aproximaciones, de estimaciones.
- Recomendaciones a los estudiantes : programar al menos 20 horas por semana, aprender al menos 1 lenguaje de programación realmente bien, “buscar resolver problemas que no afrontaste antes, sino solo estas practicando”
Ambas charlas interesantes y educativas sobre como trabajan y piensan en una de las mejores empresas del mundo.
Actualización : Tabo demuestra como se resuelve uno de los problemas presentados por Google


backdraft es la bitácora de



entero n,i
real t
para i=n hasta 0
si(t=raiz(n/5)//n=pisos y t=tiempo
escribre(”el objeto se hizo mierda”)
si(t=raiz(n/5)+1)
escribre(”el objeto esta intacto”)
sino
escribe(”el edificio esta sobre la tierra”)
fin_si
fin_si
i=i-1
fin_para
por ARTURO CHAVITO | November 8th, 2007 at 2:09 am
Se tienen que romper los 2 objetos si o si, entonces para el primero se tiene que hacer una busqueda binaria (coquito de algoritmos) hasta que se rompa en intervalos ‘x’ en el punto ‘y’, y luego hacer una búsqueda secuencial con el segundo objeto desde el piso ‘y-x+1′ hasta ‘y-1′, en este intervalo se debe romper el 2do objeto. El problema radica en encontrar el menor valor de x, pero eso lo dejo como ejercicio para el lector (te mandé la respuesta por twitter).
Y no he estudiado computer science, pero si he leido los libros de Knuth
por tabo | November 8th, 2007 at 2:18 am
Ah y por cierto, no creo que sea coincidencia que en google hagan preguntas sobre algoritmos de búsqueda en sus entrevistas
por tabo | November 8th, 2007 at 2:21 am
@arturo chavito : una de las cosas que mencionaron fue que les interesaba ver el script hecho en algun lenguaje de programación como C++, Java o Python, así que con pseudocode no vale
@tabo vale leer el libro de Knuth
por CesarS | November 8th, 2007 at 9:45 am
Si las cosas se rompen, no las dejes caer.
por luis | November 9th, 2007 at 1:49 pm
que monce la pregunta, lamentablemente algoritmos noes el fuerte en peru, la respues es 14 dividimos en grupos de 10 parecida a la busqueda binaria y en el intervalo que se rompa la primera esfera iteramos de dos en dos osea 10 + 4 …..si se rompe es el de abajo si no se rompe siges subiendo jejeje
Univ del Callao
por Algoritmos 1 | November 11th, 2007 at 8:49 pm
Si alguien me hace esta pregunta, es mucho más estúpido que yo, porque simplemente no se la contesto porque hay que pensar demasiado y eso es mucho trabajo.
Mucho mejor es contratar a un tonto que piense por mi la respuesta.
por Andres | November 12th, 2007 at 2:56 am
creo ke podríamos utilizar el Método de Bisección o de la bisectriz utilizado en Análisis numérico.
Def: El metodo de biseccion consiste en dividir el intervalo [a,b] (Intervalo que contiene a la raiz) y considerar el punto p donde p = (a + b) / 2, despues se verifica el signo de la funcion evaluada en los puntos f(a), f(b) y f(p) ya que se tomaran como puntos el punto p y el que tenga el signo contrario de este. Es decir, si f(a) es de signo contrario que f(p) se considera como p = (p + a) / 2 en otro caso se considera a p como p = (p + b) / 2 y asi sucesivamente podemos formar la sucesion de puntos
Con este método, podemos hallar la solucion en 8 intentos,
por Alex Q | November 12th, 2007 at 10:29 am
[…] que hacer. Como las charlas fueron idénticas en las 3 ciudades, el amigo Cesar Soplin hizo unas notas muy buenas de las charlas de Google en la […]
por Yuri Gomez R » Lo que nos dejó el Google Tour Perú 2007 | November 16th, 2007 at 7:04 pm
Todo el mundo se emociono por la pregunta. Espero que la charla haya servido para mas!!
Saludos…
por Yuri | November 16th, 2007 at 7:09 pm
Cesar, he publicado optimizaciones a la solución en http://gpicon.blogspot.com/2007/11/optimizando-solucion-problema-de.html
Saludos
por tabo | November 18th, 2007 at 4:02 am
Que chingada, esto parece una clase de matematica…
por RauL | December 29th, 2007 at 9:37 pm