¿Para qué debo estudiar como estudiante de primer año si quiero trabajar en alguna compañía como Google o Facebook en el futuro?

Francamente, esta pregunta es por qué las universidades contratan consejeros de carrera y orientación; pero responderé con alguna información que probablemente no obtendrás de ellos, especialmente si la universidad está “llamando por teléfono” lo suficiente como para no ser altamente calificada.

La mayoría de las universidades tienen una jerarquía de requisitos previos en cuanto al orden de los cursos, y tienen un plan de estudios establecido que debe alcanzar para obtener su título. Dentro de ese marco, suele haber algo de “margen de maniobra” en cuanto al orden en el que tomas los cursos (por lo general, como regla general: cuanto más alto es el ranking de la universidad, más margen de maniobra).

La forma más sencilla de hacerlo es participar en los programas educativos y las pasantías de Google, lo que le ayudará a desarrollar una relación con las personas en el lugar donde trabajaría después de la graduación y establecer un historial. Si no es otra cosa, obtendrá un currículum (lo que los británicos tienden a llamar CV) forraje que lo hará lucir bien ante otro futuro empleador, si no termina en Google.

El primer programa en el que está considerando participar es STEP , o el Programa de Ingeniería de Verano de Google. El programa está dirigido a personas que han completado su primer año de estudio en Ciencias de la Computación o temas relacionados. Deberá presentar su solicitud tan pronto como se abra el programa en el otoño de 2016 para comenzar el verano de 2017 .

Para ingresar a este programa, el enlace anterior proporciona las expectativas y los tipos de proyectos en los que estaría trabajando: debe apuntar a poder participar en ese nivel para tener la oportunidad de ingresar.

Llegar al punto en que puede hacer esto requerirá una aplicación de esfuerzo por su parte:

  • Tendrá que aprovechar la sala de maniobra del programa universitario para tomar cursos que lo prepararán antes de los cursos que le recomendarían. Aquí es donde tendrá que trabajar con el consejero de carrera y / o orientación en la escuela, ya que podrán ayudarlo con los requisitos previos difíciles, o al ampliar los límites del proceso . Obtener una “entrada” con el consejero ahora le permitirá salirse con más maniobras más tarde. Si no hay movimiento, puede hacer que decida ir a otra universidad con un programa diferente.
  • Es probable que necesites estudiar de forma independiente para prepararte para escribir software . Los lenguajes que Google utiliza principalmente son Java y C / C ++ para el trabajo de back-end web, JavaScript para el trabajo de front-end web y Python para el trabajo de infraestructura de creación de scripts, creación y prueba. Hay otros idiomas, pero estos serán los principales. Dentro de esto debes saber:
    • Lo más fácil de aprender para un principiante será JavaScript, pero dado que esto es para el código orientado al cliente, es poco probable que te permitan tocarlo. Debe esperar que trabaje en un portal de servicios internos para un empleado o en un proyecto similar, como un panel de control del sistema de construcción u otro sistema de informes, si este es el único idioma que conoce.
    • La siguiente opción es Python, debido a que las reglas de escritura son similares a JavaScript. Esto hace que sea más sencillo hacer cosas simples, incluso sin una comprensión de los conceptos avanzados. Debería esperar que se encuentre trabajando en la automatización de algún proceso manual, como un sistema de compilación, o en la realización de pruebas de productos en algún otro producto, si este es el único idioma que conoce.
    • El segundo más difícil es Java, que incorpora muchos de los componentes más difíciles, pero le permite ignorar la administración de la memoria, los punteros, etc., lo que hace que sea mucho más fácil de aprender. Java se utiliza en una gran cantidad de back-end y trabajo de base de datos para servicios web, SAAS (Software As A Service), sistemas de implementación y, en ocasiones, sistemas de compilación. Espere trabajar en un proyecto de soporte de infraestructura, si este es el único idioma que conoce.
    • El más difícil, con diferencia, es C / C ++ [1], que incorpora muchos conceptos avanzados, como el alcance, la gestión explícita de la memoria, etc. Si bien la mayoría de los usuarios de Google agrupan en un solo grupo, C ++ tiende a ser mucho más difícil, ya que tiene que entender las clases, la herencia, el alcance de la visibilidad, las funciones de los miembros, los constructores y los destructores, además de las cosas que debe entender. C. El lenguaje tiende a usarse en todo el lugar, y normalmente lo ubicará en proyectos más interesantes, como el aprendizaje automático, el trabajo con conjuntos de datos más grandes y, en algunos casos, Chrome, ChromeOS, WebKit, Vision Systems, Streetview y otros proyectos de Google donde un lenguaje compilado es mejor para procesar una gran cantidad de datos.
  • Debe comunicarse con un representante de Google para uno de estos programas, una persona de recursos humanos de Google o un reclutador de Google AHORA . Esto no solo les permitirá ayudarlo a tomar decisiones sobre lo que debe estudiar para ingresar al programa en particular en su área, sino que también:
    • Notifíqueles su interés.
    • Notifíqueles su voluntad de planear para alcanzar una meta.
    • Le permite preguntar cómo se ve una aplicación típica exitosa, aparte de la educación
    • Si te empujan a “la persona correcta en otro lugar”, eso es un trabajo que puedes evitar el próximo año, yendo directamente a esa persona.
    • Es posible que reciba un correo electrónico de cortesía, si hace una impresión, cuando se abre el programa, lo que le permitirá saltar a su aplicación.
    • Permítame decir “Hola, es posible que no me recuerde, pero el año pasado me contacté con usted sobre lo que necesitaba para aprender a participar en el programa STEP el próximo verano …”, que etiquetará su solicitud en su mente y hará que sea más probable que lo haga. ser aprobado. Demuestra tanto la persistencia como la determinación cuando se trata de alcanzar una meta, y estas son cualidades que les gusta que las personas aporten a la mesa en sus vidas laborales.

Si participa con éxito en este programa, obtenga cartas de recomendación escritas de sus compañeros, mentores y gerentes.

Estos serán útiles más adelante, y al obtenerlos inmediatamente después de la participación, está diciendo que respeta sus opiniones y posiciones profesionales, y es más probable que digan cosas agradables.

DESPUÉS DE QUE tenga sus cartas de recomendación, pídales que le cuenten lo que dirían sobre usted en una evaluación de desempeño. No solo son más propensos a ser brutalmente honestos (especialmente si les pides que lo sean) después de que hayan dicho cosas agradables, y después, no les influirá para que digan cosas menos agradables en sus cartas de recomendación.

Cuando reciba esta retroalimentación: incluso si le resulta hiriente: tómela en serio: realmente trabaje en las cosas que le dicen que necesita trabajar; le están diciendo cómo se ve un buen empleado de Google, e incluso un comentario negativo es un paso positivo hacia su meta .


El segundo programa en el que querrá participar es el programa de pasantías, o Programa de pasantías de ingeniería de software de Google. Si bien generalmente está dirigido a personas que se encuentran dentro de los 12 a 18 meses de su graduación, eso es típicamente , lo que significa que puede permanecer dentro de los límites del proceso y obtener una pasantía entre el segundo y tercer año de un programa de cuatro años [2] .

Si ha participado en el programa STEP, puede obtener múltiples oportunidades de pasantía entre el segundo y tercer año, y el tercer y cuarto año.

En la práctica, si fuera posible, tomaría la primera pasantía en Google y la segunda pasantía en otra empresa, como Facebook o Apple o Microsoft.

Nuevamente, deberá juntar a sus patos, al igual que con el programa STEP, y tendrá que mantener sus contactos y hacer nuevos contactos. Las personas que dirigen el programa STEP no serán las personas que ejecutan el programa de pasantías, pero se conocerán y podrán almorzar juntas, y así sucesivamente.

Sus cartas de recomendación serán útiles para obtener la pasantía adicional, al igual que sus contactos existentes, tanto en los programas como en Google.

Nuevamente, desea resultados similares y desea obtener cartas de recomendación, comentarios sobre el desempeño, etc. Y aplicar la retroalimentación de rendimiento.


Seguir estos pasos hará que sea mucho más probable que estudie las cosas que necesita para ingresar a Google al final de sus estudios, y le brindará los contactos que necesita para aprovechar al máximo lo que ofrece su universidad. los términos de los cursos de orden de dependencia, los servicios de orientación y orientación profesional, etc.

Como nota final: en algún momento de este proceso, puede descubrir que Google no es para usted; Incluso puedes encontrar que la informática no es para ti. Y eso está bien: tus años universitarios existen para que te encuentres, y eso no siempre en el lugar donde comienzas a buscar .

¡Buena suerte!


Notas al pie:

[1] Aprender uno de los otros idiomas antes de C / C ++ dificultará tu habilidad para aprender C / C ++ de manera efectiva más adelante. La administración explícita de la memoria es difícil, ya que debe tener en cuenta las infracciones de capas, las reglas de alcance explícitas y el diseño de la interfaz, así como los punteros que apuntan a la memoria, pero no la asignan, etc. Ignorar en los otros idiomas. Si los ignora en otros idiomas, su código será feo, pero es probable que aún funcione, incluso si usa muchos más recursos de los que debe; Si los ignora en C / C ++, su programa se bloqueará.

[2] Los programas de titulación CS en el Reino Unido son generalmente programas de 2 años para un título de nivel inferior y programas de 3 años para un grado de nivel superior, con un cuarto año opcional encajado entre el segundo y último año. El grado de 2 años no será suficiente para un puesto en Ciencias de la Computación . El año opcional, si se toma como un año de estudio en el extranjero, se puede hacer en los Estados Unidos u otro país donde Google tenga presencia. Consulte con los contactos de Google HR que ha realizado anteriormente.

Realmente no sé qué aspecto tiene el currículo de CS típico en el Reino Unido, pero me imagino que no hay muchas opciones para los cursos de introducción, que es lo que probablemente debería tomar en su primer año. Más allá de eso, en algún momento deberías tomar estructuras de datos y algoritmos (generalmente se requieren, pero también puede haber cursos avanzados opcionales). Más allá de que solo depende de sus intereses, no se requiere nada en particular. El aprendizaje automático está en marcha en este momento, y probablemente no debes descuidar los cursos básicos de matemáticas y estadística.

Lo que realmente debe hacer es tomar cursos pesados ​​en proyectos o simplemente programar mucho por su cuenta, y simplemente adquirir habilidades de programación sólidas, idealmente aprendiendo un idioma bien.

Si se enfoca en el aprendizaje alrededor de ‘algoritmos y estructuras de datos’, estará en el camino correcto. Este es el conjunto de habilidades más valioso que se pasa por alto por desarrolladores autodidactas como yo. Desde el aprendizaje automático hasta el big data (análisis, transferencia y almacenamiento) hasta las animaciones en un dispositivo móvil, saber cómo se estructuran los datos y comprender las eficiencias / ramificaciones de los algoritmos lo harán increíblemente valioso, sin importar qué compañía esté al tanto. .

Cada vez más empresas tecnológicas en constante crecimiento están buscando formas de identificar a los mejores talentos ocultos de la escuela que no son tan conocidos. Mirar profundamente en la lista de Stanford y CalTech es fácil, así que todos lo están haciendo. Encontrar la 1 de cada 9 valedictorians de las escuelas de nivel inferior que valen la pena (y, a veces, más capaces) es la nueva frontera.

Consejo: Publique todo el código que haya escrito en github o bitbucket, y articule en el desbordamiento de pila.