Considero ser competente para poder trabajar en una aplicación de extremo a extremo. Según mi experiencia, el tiempo que lleva ser competente depende de lo siguiente:
- Si ha desarrollado un sistema de aprendizaje EFICIENTE para usted
- La cantidad de tiempo que pasa leyendo y escribiendo código
- Cuánta PRÁCTICA puedes hacer
- Cuánto practica consistentemente, lee y escribe código
Para mí fue más fácil comenzar a aprender Node.js (ya conocía HTML, CSS, Javascript y Git lo suficiente). Después de una introducción básica, aprendí a usar el marco Express. Luego comencé a aprender cómo usar paquetes npm, cómo construir y consumir API, etc.
Después de eso, aprendí a usar MongoDB en mis aplicaciones. Una vez que estuve seguro de que podía activar un servidor convenientemente, crear rutas API y conectarme a una base de datos, pasé al desarrollo Front End, primero aprendí cómo podía hacer llamadas AJAX a mi backend Node.js. Después de eso, también recogí Angular para poder mostrar correctamente mis superpoderes Node.js.
- Cómo utilizar más de un idioma en mi back-end para diferentes propósitos
- ¿Qué es el trabajo de principio a fin de la web?
- ¿Cuál es el mejor lenguaje / marco para un back-end diseñado para interactuar con varias plataformas (aplicación iOS, habilidad Alexa, sitio web, etc.)?
- Cómo autenticar tokens emitidos por Auth0 en un backend de node.js
- ¿Cómo debe nombrar sus sistemas de back-end?
Después de casi tres meses, pude construir un proyecto completo con la pila MEAN. He tenido que seguir aprendiendo todos los días desde entonces.
Honestamente, no fue tan fácil. Me sentí estúpido muchas veces, pero seguí presionando. Cuantos más problemas resolví, más motivado estaba.
Aparte del conocimiento técnico, tengo algunos consejos para ti:
Construir algo (s). Digo esto por dos razones:
- Puedes profundizar tu habilidad porque no solo estás leyendo y viendo tutoriales en video, también estás involucrado en el proceso y haciendo lo que ves. Esto le permitirá comenzar a fallar temprano y hacer preguntas útiles.
- Mientras aprende, puede crear una cartera, por lo que no tiene que esperar hasta que esté “allí arriba” antes de poder proporcionar pruebas de que tiene la habilidad suficiente para trabajar.
Devolver a la comunidad . Hay dos razones por las que digo esto:
- Es justo hacerlo. Pudiste aprender porque alguien más puso su conocimiento a la vista. Además, en algún momento en el futuro, un principiante podría necesitar algo de ayuda y su publicación de blog o código puede ser la forma más fácil de entender.
- Es una de las formas más fáciles de promocionarse como desarrollador.
- Te ayuda a profundizar tu habilidad. Algunas personas dicen que realmente no sabes algo hasta que puedes enseñárselo con confianza a otra persona de una manera que él entienda. Son correctos
Utiliza Google . Este es uno de los consejos más útiles para los desarrolladores. ¡Google todo! Si recibe un mensaje de error, simplemente cópielo y péguelo en la barra de búsqueda. Encontrarás respuestas. Definitivamente no eres la primera persona en encontrar ese problema en particular.
Conéctese con otros desarrolladores. Puede realizar este viaje de programación por su cuenta, pero por experiencia, es más fácil cuando tiene otras personas que están aprendiendo con usted y algunas que pueden animarlo. ¡Te desanimarás muchas veces! Repito, ¡te desanimarás muchas veces! Necesitarás fortaleza y aliento de otras personas.
Lee el código de otras personas. La disciplina de tomar el código de otra persona y descifrarlo para comprender la lógica entrena tu mente. Estos enlaces deberían ayudar:
Cómo leer rápida y efectivamente el código de otras personas – Codificadores autoaprendidos
Por qué me encanta leer el código de otras personas y tú también deberías
Los siguientes enlaces también dan una idea de lo que se supone que debes saber como desarrollador de pila completa:
Ser un desarrollador Full Stack – SitePoint
Una guía para convertirse en un desarrollador Full-Stack en 2017 – Coderbyte – Medium
¿Qué es un desarrollador Full Stack?