Cómo fue el proceso de tu entrevista en Twitter para el puesto de prácticas de ingeniería de software?

Hice mis prácticas en Twitter durante el verano de 2014, que fue una de las experiencias de prácticas más increíbles que he tenido!

Entre mis más de 20 entrevistas de prácticas con múltiples empresas (Google, Quora, LinkedIn, Facebook, Microsoft, Square, etc), las entrevistas de prácticas en Twitter son más difíciles que la media. La pregunta de entrevista literalmente más difícil (no es un rompecabezas) que he tenido es de Twitter (ver el último párrafo). Lo siguiente es el proceso de mis entrevistas con Twitter para las prácticas de verano de 2014.

Uno de mis amigos hizo prácticas en Twitter antes y me remitió a las prácticas de verano a través de otro empleado a tiempo completo. Poco después, recibí un correo electrónico del reclutador y me pidió que completara algunas tareas de programación en el sitio web https://codility.com/. Este sitio web tiene una prueba y una demostración gratuitas, que recomiendo probar antes de realizar la prueba de Twitter. Las preguntas no suelen ser difíciles si se conocen algunos algoritmos y estructuras de datos básicos, por ejemplo, algunos algoritmos codiciosos o programación dinámica sencilla. El sitio web es un poco complicado, ya que no podrás ver todos los ejemplos de las pruebas, así como tus puntuaciones. Así que asegúrate de probar todos los casos que puedas antes de enviarlos.

Hubo 4 pantallas telefónicas posteriores. Los formatos fueron consistentes, incluyendo la introducción de cada uno y 1-2 problemas de codificación. No hubo brain teaser (en realidad, nunca tuve uno). Las dos primeras entrevistas fueron independientes del equipo, similares a las pantallas telefónicas de Google antes del emparejamiento del anfitrión. Su objetivo era comprobar las habilidades generales de codificación y diseño de algoritmos. Las dos últimas eran dependientes del equipo, es decir, entrevistas con personas del equipo con el que puedes hacer las prácticas. Me sorprendió un poco que en las dos últimas entrevistas se siguiera preguntando por la codificación y los algoritmos, porque la mayoría de las empresas suelen hablar de proyectos en esa fase. Creo que Twitter se toma muy en serio la calidad del código. Además, en la última entrevista, me preguntaron por mis ideas para sus proyectos de prácticas del año anterior. La mayoría de los proyectos de ese equipo (incluido el de mis prácticas) son abiertos y se basan en datos. Así que no hay una respuesta correcta o incorrecta. Es preferible seguir hablando y hacer una lluvia de ideas.

Como he mencionado antes, me hicieron la pregunta más difícil de la entrevista hasta ahora, que ocurrió en la segunda pantalla telefónica de Twitter. Debido al acuerdo, no puedo revelarla (tampoco veo esta pregunta en ningún sitio online). La pregunta es especialmente difícil porque necesita un algoritmo de flujo. También requiere tanto la ordenación como la búsqueda binaria (con la búsqueda del elemento más a la izquierda o más a la derecha). Codifiqué unas 100 líneas usando Java durante 45 minutos de entrevista. El código tenía algunos errores y el algoritmo no era óptimo. Al final de la entrevista, fui capaz de diseñar la solución óptima con un par de pistas. Pero no tuve suficiente tiempo para completar la codificación. Pensé que lo había estropeado todo. Por suerte, pasé probablemente porque la pregunta era muy difícil. Después de la entrevista, pasé otra hora entera para codificar la solución óptima sin errores evidentes. Para atestiguar aún más su dificultad, pregunté a varios empleados a tiempo completo y becarios cuando estaba en Twitter. Ninguno de ellos dio con la solución óptima a tiempo. Incluso con las pistas, la mayoría de la gente tardó en conseguirlo, por no hablar de la codificación sin errores. La conclusión es que no hay que dejarse intimidar por las preguntas difíciles. La comunicación es la clave para resolver este tipo de preguntas. Pide aclaraciones, ejemplos e incluso pistas. La gente no espera que lo resuelvas inmediatamente. La forma en la que abordas el problema es lo que están entrevistando.

Además, hay un programa piloto de prácticas en Twitter que busca becarios de investigación (normalmente doctores), similar a los becarios de Microsoft Research. Por lo que sé, la mayoría de estos becarios de investigación ya tenían conexiones con Twitter a través de asesores o departamentos. Sus procesos de entrevista son diferentes, con preguntas centradas en los intereses de investigación y la experiencia.