Recuerdo mi primera entrevista técnica, y eso también fue para una pasantía en Google. Siendo un programador competitivo rápido, calculé mal el objetivo de la entrevista como “codificar los problemas lo más rápido posible”. Pensé que había aplastado las entrevistas, hasta que unos meses después recibí rechazos.
Como otros ya podrían haber dicho, dos cosas más críticas para un ingeniero de software de nivel básico son la resolución de problemas y la codificación .
Google, o cualquier organización de ingeniería de primer nivel, no está buscando ingenieros para resolver problemas en los que ya se han capacitado. Lo que importa es su capacidad para encontrar respuestas a preguntas que nunca antes haya encontrado. Las entrevistas ideales tienen como objetivo activar su pensamiento sistémico, analizar su proceso de pensamiento y probar sus habilidades para comunicar estas cosas al entrevistador. Lo que trae la tercera cosa crítica para ser la comunicación . La razón es que los ingenieros de software no trabajan solos en sus proyectos; muy raramente obtendrá una pieza autónoma y clara para trabajar. Agregar una característica simple a un proyecto de proporciones gigantescas como Gmail / Docs puede llevarle meses de discusión entre equipos, aunque codificar su parte no durará más que unas pocas semanas.
- Soy estudiante de primer año en el departamento de metalurgia de IIT Kharagpur. Tengo un CGPA de 8 y no estoy involucrado en ninguna sociedad. ¿Qué debo hacer para conseguir un buen trabajo?
- Cómo prepararse para una pasantía de desarrollador de software que utiliza la pila completa de .net
- ¿Todas las pasantías de 6 meses se convierten en PPO?
- ¿Vale la pena hacer una pasantía en una empresa de nueva creación? ¿Cuáles son los pros y los contras de tal oportunidad?
- ¿Se ofrecen pasantías de aprendizaje automático a estudiantes de pregrado? En caso afirmativo, ¿qué cualidades y habilidades se requieren para eso?
Por supuesto, hay otros aspectos menores de una entrevista como lo que reclamas frente a lo que sabes, qué tan curioso eres respecto a la cultura de la empresa, qué tipo de preguntas haces al entrevistador, etc. Pero hasta cierto punto pueden ser falsas (no es lo que debería) si lo compara con otras habilidades requeridas.
Prefiero no entrar en demasiados detalles sobre cómo mejorar sus habilidades analíticas, aprender la estructura de datos, algoritmos, habilidades de implementación, etc., ya que encontrará fácilmente varios enfoques y guías sobre cómo puede hacer eso, y el enfoque más divertido es programación competitiva Sin embargo, lo que he observado en mi vecindad es que la gente se pierde la tercera parte crítica, la comunicación. Encontrarán soluciones, rápidamente; pero se pierden en abrir sus mentes al entrevistador. Una forma muy sencilla de aprender estas habilidades es salir de nuestro caparazón, encontrar personas similares a usted e interactuar con ellas. Por ejemplo, comencé discutiendo concursos algorítmicos con mis estudiantes de último año en la universidad, luego formé equipos para ACM ICPC y tomé la sesión del club de programación para estudiantes de tercer año en mi último año. Sin embargo, debe tener en cuenta que el requisito previo para explicar las abstracciones complejas a otras personas requiere que se comprenda a fondo.
Un año es mucho tiempo; puedes pasar tiempo preocupándote por tu objetivo final o encontrar un camino, desarrollar un interés y planear este año hacia la pasantía de tus sueños. Depende de usted. Me encantaría conocerte como Googler el año que viene 🙂 ¡Buena suerte!