¿Cuál es el mejor camino de autoaprendizaje para pasar de novato a ingeniero de software?

Encuentra algo que quieras hacer y luego descubre cómo hacerlo. No creo que nada más vaya a funcionar.

Ahora que “algo que quieres hacer” es una categoría muy amplia. Tal vez quieras ganar más dinero mientras vives en tu ciudad natal. En ese caso, investigue a los empleadores locales, averigüe qué habilidades desean y luego apréndalos. Crea aplicaciones similares a lo que quieren. Escriba una aplicación de procesamiento por lotes en COBOL si le conseguirá un trabajo.

Si es estrictamente personal, descubra lo que quiere hacer. ¿Quieres escribir un juego? Que plataforma 2d / 3d? Basado en la web? Trabaja al revés desde allí. ¿Qué tecnologías necesita en qué orden para hacerlo? ¿Debería hacer un producto provisional primero como una experiencia de aprendizaje? Esa clase de cosas.

Aprendí JavaScript por primera vez hace muchos años porque quería escribir videojuegos basados ​​en navegador. ¡Así que lo hice! Escribí media docena de pequeños juegos, que honestamente estaban apenas por encima de la basura (uno era bastante decente, pero muy básico) y tomé una buena cantidad de javascript como base. Luego usé esa base para obtener más trabajo haciendo JavaScript y me diversifiqué para usarlo para otras cosas.

Quería escribir una aplicación para ayudarme a administrar mis finanzas, porque tenía algunas ideas sobre cómo hacerlo y descubrí que nada más lo manejaba. Así que escribí algunos scripts de prueba iniciales en Perl, y luego comencé a aprender Objective-C para escribir una versión de Mac. Entonces quise usar algunas tecnologías más modernas, así que comencé a aprender Swift para portarlo.

Quería crear cuadros y gráficos para mostrar datos en la web, así que aprendí d3 a hacerlo. Quería optimizar una aplicación web diferente que había escrito, así que aprendí React y Redux a rediseñarla.

Por el contrario, a lo largo de los años también he “aprendido” PHP, Python, Ruby, Angular, Backbone, C ++, y probablemente media docena de otras cosas. Pero no tenía una meta o proyecto claro o uso para ellos, así que dejé que las habilidades caduquen y olvidé la mayor parte. No había ningún proyecto en mente.

Así que descubra lo que quiere hacer con sus habilidades de programación y luego descubra cómo construir eso. Luego use esa experiencia para diversificarse en otras cosas y en el empleo real.

jwasham / coding-entrevista-universidad