TL; DR
Creo que la educación progresiva es el mejor camino a seguir, pero en realidad no hay una respuesta correcta. Y la buena noticia es que sentirse cómodo en Excel y SQL muestra que puede tener la mente para ser un ingeniero de software.
Respuesta más larga
- ¿Cuáles son las habilidades más importantes para invertir?
- ¿Qué habilidad es más importante para los programadores, la implementación o el conocimiento teórico?
- Cómo aumentar la habilidad de negociación
- Cómo usar mis habilidades de piano para obtener ganancias
- ¿Cuál es la mejor manera de aprender habilidades serias de presentación para un investigador de ML?
Depende de muchos factores:
- ¿Cuánto tiempo estás dispuesto a invertir en tu educación?
- ¿Cuál es tu objetivo?
- ¿Cuál es tu situación financiera?
Universidad
Las universidades son excelentes si quieres obtener un doctorado. e ingresar al mundo de la investigación. Estas instituciones albergan a los mejores laboratorios y de ellos surgen muchas innovaciones.
La desventaja es que solo son unas pocas universidades que valen la pena, todas son muy caras y bastante largas. Pero si quieres convertirte en un investigador, tendrás que amar el mundo académico de todos modos you Si estás buscando conseguir un trabajo en la industria, no recomendaría universidades, se centran demasiado en la teoría casi sin práctica, que es absolutamente no apropiado para lo que necesita la industria tecnológica.
Codificación de bootcamps
Pueden ser una buena opción si tiene experiencia en programación existente y desea pasar al siguiente nivel, los mejores bootcamps de codificación como Hack Reactor están diseñados para esto.
También podrían ser una buena opción si no tienes mucho tiempo para trabajar sin trabajar y quieres dar una oportunidad rápida de ingresar a la industria tecnológica con un entrenamiento de 3 meses.
La desventaja es que en 3 meses (cuando a menudo hay 1 mes dedicado a prepararse para la entrevista), solo verá una pequeña cantidad de lo que es software, saldrá del programa como un desarrollador web muy junior, será Muy difícil encontrar trabajo.
En línea por ti mismo
Si lo hace en línea, se convertirá en un ingeniero de software autodidacta. Los que logran hacerlo (porque es muy difícil) se encuentran entre los mejores. Todo lo que necesitas es MUCHA motivación.
Si decides ir a aprender solo, aquí hay algunos consejos:
- Encuentre un mentor: el mundo del software es grande y hay mucho que puede encontrar en Internet al respecto, también, sea honesto, hay demasiado y es difícil saber por dónde empezar. Encuentre a alguien que haya estado en la industria por un tiempo y que se mantenga actualizado. Defina un plan con esta persona sobre lo que debe estudiar.
- Obtenga un código revisado: por lo general, hay muchas formas de lograr algo y muchas formas muy malas. Si bien Internet está lleno de excelentes recursos, está lejos de ser perfecto. Asegúrese de pedirle a su mentor que revise su trabajo de vez en cuando, para que no esté aprendiendo de la manera incorrecta.
- Aprende haciendo: leer libros y tutoriales es bueno, pero hacerlo es el rey. El software es como un oficio, es practicando que lo dominarás.
- Practique sobre algo significativo: seguir los tutoriales tiende a ser molesto, una vez que se sienta lo suficientemente cómodo con una tecnología, intente idear un proyecto personal en el que tenga que usar lo que esté aprendiendo. Eso te ayudará mucho a mantenerte motivado y estar orgulloso de ti mismo. Recuerde que PUEDE HACERLO, es cuestión de tiempo y perseverancia, pero el camino puede ser largo.
- Diviértete: CodinGame es genial, los videojuegos que controlas usando un lenguaje de programación de tu elección. HackerRank es una plataforma en la que puede evaluar sus habilidades de programación, muchas preguntas son del tipo de entrevistas técnicas que las empresas están utilizando para seleccionar candidatos, una buena manera de ver cuál es su posición.
- Salga y conozca a los ingenieros de software: hay mucho que necesita saber para ingresar al mundo de la tecnología, mucho que solo podrá saber cuando debata con ingenieros de software reales. Vaya a reuniones y hackathon, algunos sitios web que recomiendo para esto son Meetup.com y Eventbrite. Si vives en el área de SF Bay, visita nuestra página de Meetup.
Educación progresiva
Estoy en la industria de la tecnología desde hace casi 10 años, estuve trabajando para SlideShare hace unos años, me adquirió LinkedIn donde estuve durante 3 años. Es TAN DIFÍCIL reclutar grandes ingenieros de software, y es muy triste ver que las personas que salen de la universidad después de estudiar durante media década todavía no están listas para hacer el trabajo porque pasaron su tiempo en clase escuchando conferencias, en lugar de trabajar en sus duras habilidades. A veces encontré algunas joyas para graduados de bootcamp, pero en su mayoría eran personas con experiencia en programación existente, donde los bootcamps los llevaron al siguiente nivel.
En Europa, muchos ingenieros de software están capacitados en base a la educación progresiva y especialmente en base al concepto de metodologías basadas en proyectos y aprendizaje entre pares. Muchos graduados están trabajando en las principales compañías como Google, Facebook, LinkedIn, Uber … Decidí importar este formato en los EE. UU. Mientras lo mejoraba: Holberton School
Es un programa de 2 años, los estudiantes comienzan a trabajar después de 9 meses. Sin maestros formales, sin conferencias, los estudiantes aprenden practicando y colaborando, que es más o menos lo que hacen los ingenieros de software en el trabajo. Después de 9 meses, sin experiencia previa en programación (u otro conocimiento específico), los estudiantes encuentran trabajos de software en Docker, Apple, Dropbox … Cherry on the cake, no hay costo de matrícula por adelantado. Como creemos que nuestro modelo educativo funciona, los estudiantes solo pagan un porcentaje de su salario una vez que obtienen un trabajo.
En última instancia, no existe un tipo de educación ideal que nos sirva a todos, pero el software es como un oficio, es practicando que lo dominarás. Es por eso que creo que las escuelas de educación progresiva son las más adecuadas para capacitar ingenieros de software que la industria necesita.
Finalmente, como Amazon está reclutando a ingenieros de software, es posible que desee ver si hay un programa interno sobre cambio de carrera para los empleados actuales.
¡Buena suerte! 🙂