¿Es fácil para las personas que se especializan en EE ingresar a las empresas en Silicon Valley como programador?

Perdón por la longitud, pero aquí va:

Hablando como alguien que se especializó en EE y ha trabajado en Silicon Valley (SV) durante algunos años como ingeniero de software, compartiré algunas de mis experiencias y conocimientos.

Primero, asumiré que cuando hace referencia al término programador, está hablando en gran medida de trabajos en la industria del software. Lo creas o no, la economía SV todavía tiene una variedad de empleos (solo piensa en sus orígenes) y que todavía hay una serie de trabajos relacionados con EE. Las grandes compañías como Apple, Nvidia, Tesla y las tiendas más pequeñas como Spark, Pebble y formalmente Nest aún necesitan experiencia en EE y notan que una buena parte del desarrollo de hardware aún requiere cierto grado de programación. Dicho esto, esos trabajos probablemente no sean tan numerosos (ni tan lucrativos) como las compañías estrictamente en software.

En segundo lugar, voy a asumir que te refieres a cómo alguien que se especializó en EE para ingresar a Silicon Valley como programador. Como muchas personas han mencionado en el pasado, el impacto de su educación formal es inversamente proporcional a la cantidad de tiempo que ha pasado en esa industria, lo que significa que ser un estudiante de EE se vuelve menos relevante a medida que se convierte en nivel medio.

Lo que más importa es su progreso en la ingeniería de software en términos de habilidad técnica y liderazgo, y los buenos entrevistadores comienzan a preparar entrevistas que contienen esos elementos. Mientras disfrutes del desarrollo de software y seas un poco autodidacta, esa progresión debería surgir naturalmente con algo de esfuerzo.

Muy bien, ¿cuáles son las trampas de ser un EE recién acuñado en SV? Comencemos con la entrevista. Si eres el top 10 de tu clase de graduación con un promedio de calificaciones de 3.9 o más en una de las mejores escuelas, es posible que obtengas una compra para obtener una entrevista. Después de todo, usted ha demostrado que es al menos analítico e inteligente (obtener un 4.0 en EE no es nada despreciable) y es probable que pueda aprender bastante rápido en el trabajo. Sin embargo, los reclutadores y las compañías mirarán más allá de usted si todo lo que tiene es un título de EE en su currículum con un GPA mediocre.

Hacer que uno de tus amigos proporcione una referencia aumentará en gran medida tus posibilidades de una entrevista, pero tu currículum aún podría no ser lo suficientemente impresionante. Tendrá que recuperarse a través de proyectos paralelos, cursos relevantes de CS y, si es ambicioso, contribuciones de código abierto para demostrar que no es solo otra persona que no es de CS que quiere una porción del pastel de software. Si después de que falla su primer lote de aplicaciones, siga mejorando sus habilidades (aquí es donde entra en juego su pasión por el software), actualice su currículum y siga aplicando.

Ok, ahora tenemos una entrevista. ¿Qué sigue? Cuando se trata de entrevistas, cuando alguien tiene un título de EE, mi percepción como entrevistador es que el individuo ha tenido algunos cursos relacionados con CS (estructuras de datos y algoritmos) pero no mucho más, y se ha centrado en una plétora de Otros temas, como el cálculo multivariable, el electromagnetismo, los sistemas de control, los sistemas de potencia, etc., que, si nada más, demuestran cierto nivel de pensamiento analítico pero no necesariamente son buenos programadores.

Durante mi interacción con un candidato a EE, terminaré teniendo que examinar los fundamentos de CS un poco más intensamente para que después de 3 meses en el trabajo no tenga que explicar qué es O (n ^ 2) y por qué está matando nuestra aplicación servidores Espere un mayor escrutinio o, al menos, que el entrevistador tenga las mismas expectativas para alguien que pasó 4 años completando su título de CS. Lamentablemente, las entrevistas de software se han reducido en gran medida a la codificación en entornos estresantes en pizarras blancas, así que practique, practique, practique (incluida la codificación real de la pizarra) y use los recursos existentes (como CareerCup) para ayudarlo a tener éxito en las entrevistas.

¡Excelente! Así que ahora tienes una oferta para un buen trabajo de programación en una buena compañía. Puedo dejar de preocuparme por mi título de EE ahora ¿verdad? Bueno, sí, pero hacer lo anterior no necesariamente te hará exitoso. Todo lo que he mencionado hasta ahora es simplemente cómo entrar en la industria (y no es el único camino por cierto), no tener éxito en ella, y su éxito depende en gran medida de su pasión y motivación para continuar aprendiendo. Ser un buen programador es mucho más que juntar unos pocos guiones y llamarlo un día.

Durante su carrera, habrá al menos algunos idiomas que tendrá que aprender (y continuar aprendiendo a medida que evolucionen), más de una docena de bibliotecas y marcos para comprender, varios niveles y estilos de prueba, nuevas tecnologías que leerá sobre los documentos técnicos, la creación de redes con líderes técnicos y VC y mucho, mucho más. Para colmo, hay algunos problemas de ingeniería en los que tener un título de CS realmente es útil y en los que tendrá que apoyarse en sus colegas para obtener ayuda para completar los puntos ciegos. Entonces, sí, en este punto puede dejar de preocuparse por su título de EE, pero el trabajo acaba de comenzar.

¡Buena suerte!

tl; dr Si estás lo suficientemente motivado, no debería ser un problema.

Si tiene una experiencia sólida, como algún otro trabajo, proyectos paralelos o programación competitiva, se le notará independientemente de su especialidad. Después de eso, depende de si puedes concretar las entrevistas técnicas, que se centran principalmente en algoritmos. Mientras conozca su material, puede obtener un trabajo de programación con cualquier especialidad.