Primero permíteme felicitarte por tomar la iniciativa de hacerte una pregunta tan maravillosa y tener el deseo de mejorar tus habilidades.
Hace tres años, no sabía nada sobre programación y era un aspirante a desarrollador web como tú. Ahora, tengo la suerte de haber obtenido mi primer trabajo a tiempo completo como ingeniero de software en Silicon Valley (Salesforce). Esto es lo que encontré útil en el ámbito de convertirme en un mejor desarrollador web.
1. Averigua qué tipo de desarrollador web quieres ser:
- ¿Cómo saber qué tipo de desarrollador web quiere ser? ¡Al jugar con diferentes tecnologías, mirar videos en la web y tomar nota de las cosas que te entusiasman!
- Hoy en día, existen tantas tecnologías web que casi puedes elegir con qué tecnologías quieres trabajar o no. ¿Está interesado en convertirse en un desarrollador web frontend, desarrollador de WordPress, desarrollador de Ruby / Rails o Python (hay muchas más tecnologías, etc.)?
2. Por qué es importante tener una idea general de qué tipo de desarrollador quieres ser:
- Si no eres fuerte en al menos un conjunto de tecnologías, será difícil obtener un trabajo. Puedo decirle que tener un amplio conocimiento de un conjunto de tecnologías y luego tener al menos 1 especialización (1 habilidad fuerte) lo hará más comercializable y deseable.
- Por ejemplo, cuando me dispuse a aprender programación, experimenté con el aprendizaje de varios idiomas diferentes, pero ninguno de ellos me llamó la atención hasta que descubrí: Javascript y la plataforma web. Una vez que descubrí de lo que era capaz Javascript, supe que quería trabajar en la interfaz (HTML, CSS, Javascript, NodeJS), PERO también supe que sin cierta experiencia general con bases de datos y servidores, mis posibilidades de obtener un trabajo eran Delgado. De hecho, reconozco mi conocimiento general de las tecnologías de back-end y mi gran conjunto de habilidades en la interfaz (Javascript, Node, JS frameworks) por ayudarme a obtener mi primer trabajo de ingeniería de software en Salesforce y ayudarme a asegurar docenas de entrevistas en Google, Uber, Electronic Arts y muchas nuevas empresas.
3. Una vez que sepa qué tipo de desarrollador quiere ser, cree un plan de aprendizaje que lo ayude a desarrollar su competencia de manera sistemática:
- ¿Los bailes de graduación son realmente tan importantes para los estudiantes estadounidenses?
- ¿Por qué los estudiantes de secundaria deben tomar estadísticas AP?
- ¿Hay alguna otra competencia internacional de física como IPhO para estudiantes de secundaria?
- Cómo ser el estudiante más hipster en la escuela secundaria
- ¿Cuáles son algunas oportunidades de verano no relacionadas con STEM para estudiantes de secundaria?
- Digamos que desea ser un desarrollador web front-end. Deberá aprender, entre otras cosas, HTML, CSS, Javascript, Node y el navegador.
- Tratar de averiguar qué orden necesita para aprender estas tecnologías y cómo las usa juntas como principiante es bastante confuso , pero no es necesario. Hay excelentes rutas de aprendizaje en teamtreehouse.com/tracks, que ofrece rutas de aprendizaje estructuradas en desarrollo frontend, JavaScript de pila completa, Ruby / Rails, Python, Java, PHP, WordPress y mucho más. Freecodecamp, también es otro sitio web tremendo si estás buscando convertirte en un desarrollador de JavaScript frontend o fullstack gratis y construir una red de amigos increíbles.
4. Comienza a construir con tus habilidades
- No hay sustituto para aplicar los conocimientos adquiridos, fallar e intentar nuevamente de manera más inteligente y aprender sobre los recursos de Google en Internet. Todas estas cosas te ayudan a crecer rápidamente. Perdí mucho tiempo al principio simplemente viendo tutoriales, sin aplicar realmente el conocimiento en mis propios proyectos. Realmente aprendes haciendo, no dejes que tu mente te engañe.
Recursos (Descargo de responsabilidad: principalmente relacionado con Javascript frontend / Fullstack):
- Video: Descripción general general de la tecnología de desarrollo web 2016/2017
- Freecodecamp: tienen un increíble plan de estudios de aprendizaje estructurado gratuito y una comunidad de estudiantes.
- Teamtreehouse.com (pago con descuento para estudiantes disponible) Me encanta cómo han estructurado las rutas de aprendizaje para diferentes roles de desarrollador que existen en el campo en este momento (Javascript, WordPress, Ruby / Rails, Python, iOS, C #, ASP.net)