“Desarrollador de software” puede significar una serie de cosas, por lo que mi primer consejo sería tratar de enfocarme en lo que podría interesarle más: ¿desarrollo móvil nativo (iOS / Android)? web front-end? back-end o web de pila completa? Sé que responder estas preguntas sin ninguna experiencia puede ser difícil, y no me preocuparía demasiado por ello, ya que su carrera en software inevitablemente lo llevará a través de múltiples conjuntos de tecnologías y tecnologías. Dicho esto, el desarrollo web front-end o full stack realmente tiene la barrera de entrada más baja, por lo que podría ser un buen objetivo para comenzar dependiendo de su línea de tiempo. También suele haber más aperturas de front-end en comparación con, por ejemplo, el desarrollo de iOS.
^ Este es uno de los instructores de DigitalCrafts , Toby Ho, que muestra a los estudiantes sus pensamientos sobre cómo priorizar sus esfuerzos a medida que aprenden JavaScript y Python. Los conceptos en la parte inferior de la pirámide son los más fundamentales / inmutables, viceversa hacia la parte superior. Si está interesado en nuestro plan de estudios, consulte el paquete del curso .
- ¿Qué queremos decir con "confiabilidad" en ingeniería de software?
- Cómo medir periódicamente el crecimiento del desarrollador
- ¿Cuáles son los requisitos para ser desarrollador de software?
- ¿Vale la pena trabajar en una startup como desarrollador de software?
- Cuando un desarrollador de software dice que una tarea no se puede hacer técnicamente, ¿qué haces?
Desarrollo web front-end
- HTML
- CSS (y tal vez SASS / Compass)
- Bootstrap / Sistemas de rejilla
- JavaScript (el grande)
- jQuery
- React.js o Angular 2 (recomendaría React pero hay muchos que no estarán de acuerdo conmigo. Lo importante es aprender al menos un marco JS como este).
- JSON
- Servicios web de Amazon (este es el servicio en la nube de Amazon en el que muchas empresas alojan sus aplicaciones, tienen muchos tutoriales disponibles gratuitamente)
Desarrollo web de back-end
- Si utiliza JavaScript de pila completa, aprenda Node.js y Express; de lo contrario, deberá aprender un lenguaje del lado del servidor como Python, PHP, Ruby, Java, etc. Investigue en su mercado para ver qué hay más demanda dado el tipo de empresa para la que le gustaría trabajar.
- mySQL
- apache
- Interfaz de línea de comandos / Linux: póngase cómodo con su terminal.
- Servicios web de Amazon (este es el servicio en la nube de Amazon en el que muchas empresas alojan sus aplicaciones, tienen muchos tutoriales disponibles gratuitamente)
Desarrollo móvil iOS
- Swift 3 (o la última versión a medida que envejece esta respuesta)
- El SDK de iOS
- Xcode / Storyboards
- JSON
- Si no aprende a escribir el back-end usted mismo, puede usar Firebase como un “back-end como servicio”, aunque eso pone sus aplicaciones a merced del éxito / fracaso de Firebase.
Desarrollo móvil de Android
- Java
- Android Studio
- JSON
- Mismos pensamientos con respecto al back-end / Firebase.
Estas listas pueden parecer muchas, y lo son, pero es factible y hay muchos recursos y enfoques disponibles en línea y de otra manera. Codecademy es un buen lugar para comenzar a aprender la sintaxis, pero necesitará construir proyectos reales fuera de su entorno para realmente comenzar a aprender cómo aplicar lo que ha aprendido. Muchos de nuestros estudiantes trabajan a través de FreeCodeCamp.com antes de que comience la clase, y siempre tienen cosas buenas que decir. Por último, si lo que buscas es una experiencia inmersiva en el aula, considera inscribirte en un campamento de programación. Investigue, pero hay muchas buenas opciones, ¡DigitalCrafts incluido! Course Report es un buen recurso para codificar revisiones de bootcamp.
La mejor de las suertes,
Max McChesney