Andrés Mejia: Cómo trabajar en Google, Facebook y Riot Games

Andrés Mejia, SR. SWE en Riot Games, habló con estudiantes de Holberton School sobre la experiencia trabajar en Google y otros gigantes de Silicon Valley.

Quizás una de las cosas más atractivas de la programación como carrera, hobby o simplemente como una opción de estudio es la oportunidad de trabajar para algunas de las empresas más grandes del planeta. Para muchos,trabajar en Google, Facebook o incluso Riot y poder incluir esos cargos en sus hojas de vida puede ser la ganancia más valiosa.

Por eso resulta tan interesante el caso de Andrés Mejia, un colombiano que hoy trabaja como SR. SWE en Riot Games, la compañía desarrolladora detrás de títulos como ‘League of Legends’ (LOL), ‘Legends of Runeterra’ o ‘Valorant’. Pero más que el que Mejia tenga el trabajo con el que muchos sueñan, lo más interesante es su experiencia laboral. Su primer trabajo fue en Google y de ahí saltó a otras compañías enormes como son WhatsApp y Facebook.

Por esta razón, Holberton School decidió tener una conversación con él, junto con alumnos de la escuela de programadores, no solo para hablar de su recorrido, sino también para entregar consejos y experiencias de alguien que no solo ha tenido que pasar con entrevistas y procesos para trabajar con algunas de las compañías más grandes del mundo de la tecnología, sino que además cuenta con una filosofía de que no es imposible trabajar en Google o en  Facebook y Riot Games.

No se necesita ser un genio

Mejia no llegó a Google precisamente por creer que era material para la compañía. El desarrollador confiesa que llegó a la empresa a través de una convocatoria que le compartió un amigo y que su primera reacción fue: “no soy como uno de los genios de Google”. Hoy, admite que esta visión ha cambiado de manera significativa y que entiende que la mayoría de personas que trabajan para estas empresas están lejos de esa visión del ‘súper desarrollador que se sabe todo’. De hecho, la mayoría de estas compañías no están en búsqueda de personas con una enciclopedia de desarrollo de software implantada en su cerebro, sino que prefieren a personas con la capacidad de solucionar problemas.

En los primeros niveles, lo importante es el conocimiento técnico

Una de las cosas que no enseñan en la universidad es qué esperar de las entrevistas al momento de aplicar a un trabajo. La experiencia para muchos al pasar sus primeras hojas de vida puede ser dolorosa, pues la persona a cargo de decidir si te quedas o no cuestiona cuáles son tus cualidades, tus defectos, qué aspiras hacer en la vida, tu situación familiar, etc.

Mejia asegura que en los primeros niveles, es decir los Jr. que acaban de salir de la universidad, estos elementos no son el centro: sino evaluar qué sabes o qué capacidad de resolución de problemas tienes. Estas evaluaciones pueden ir de proponer algún problema y pedir al aplicante el llegar a una solución (y explicar cómo fue que llegó allí), sino también el realizar preguntas claves cómo ‘¿hay un problema de enteros, cómo lo entregas’? o incluso que expliques cosas como ‘cómo funciona el buscador de Google, qué está pasando cuando presionas la opción de buscar’.

Trabajar sobre el código de otros: la clave

Una de las lecciones más interesantes que Mejia dejó en esta conversación puede parecer obvia, pero muchos desarrolladores recién salidos de la academia la olvidan: la mayoría del tiempo vas a estar trabajando sobre el código de otros. Esto quiere decir que, en especial conforme asumas cargos de mayor importancia, el 80% de tus actividades estarán destinadas a trabajar sobre lo que otros han hecho. Y esto supone un reto pues requiere de dos habilidades importantes: capacidades blandas para solicitar el apoyo de la persona detrás de ese código (si todavía trabajan allí) o la habilidad de adaptación.

Es necesario entender que cuando entras trabajar en Google u otras compañías de esta escala, el codigo ya está hecho. Las bases de la mayoría de proyectos están allí. Muchos desarrolladores se quedan en: ‘esto ya estaba hecho mal’ entonces no asumen una actitud más constructiva o de entrada se frustran.  Y, cuando los ingenieros detrás de ese trabajo renunciaron o están en otras áreas, está en el desarrollador el aprender a trabajar sobre lo que ya está construido.

Decir que no es negociar

La emoción de trabajar en una compañía como Google puede hacer creer a un desarrollador que decir no está mal. El problema está en que, en especial en estas compañías en el que el ritmo y carga de trabajo pueden ser particularmente pesadas, si se dice que sí a todo por intentar parecer una ‘navaja suiza’ de la programación, en tres meses hasta el workaholic más devoto va a querer renunciar y botar todo por la ventana.

Mejia asegura que esta es una de las habilidades que más útiles son en estos espacios de alto nivel. Es, también, algo que no aprende leyendo libros o estudiando. La clave no está en ser conflictivo o no aceptar retos, sino en negociar. Por ejemplo, ante la asignación de un nuevo proyecto o la llegada de más trabajo, el desarrollador debe tener la habilidad de decir que puede aceptar esta nueva carga, pero que otras de sus responsabilidades deben pasar a alguien más y que son útiles para alguien que quiera trabajar en Google o incluso iniciar su propio proyecto.

Imágenes: Capturas de pantalla

Enter.co/dev  una colaboración con Coderise.org y Holberton School Colombia para promover la comunidad de programación en Colombia.

Imagen: Foto personal y AltumCode (Vía Unsplash). 

Jeffrey Ramos González

Jeffrey Ramos González

Mi papá quería que fuera abogado o futbolista. Pero en vez de estudiar o salir a la cancha, me quedé en la casa viendo 'Dragon Ball Z', jugando 'Crash Bandicoot' y leyendo 'Harry Potter'. Así que ahora que toca ganarse la 'papita' me dedico a escribir de lo que sé y me gusta. Soy periodista graduado de la Javeriana, escritor de ficción. He publicado en El Tiempo, Mallpocket, entre otras revistas.

View all posts

Archivos