Te sugiero que primero decidas en qué estás interesado.
¿Te gusta el desarrollo front-end? Esto requiere buenas habilidades en HTML, CSS y Javscript principalmente. Hay muchos marcos de desarrollo que puede usar más adelante cuando se vuelva competente.
¿Te gusta el desarrollo de back-end? Esto significa que codificará principalmente la lógica de la aplicación. Por ejemplo, si está utilizando ASP.NET MVC como plataforma, escribirá principalmente código C # que se ejecuta en el lado del servidor. Si está trabajando con Node.js, escribirá el código JS que implementa la lógica en el lado del servidor.
- ¿Cuál es el algoritmo más eficiente para descubrir el punto de silla de una matriz?
- ¿Cómo se soluciona el problema de Little Red-Cap (TAP2013C) en SPOJ?
- Dada una lista enlazada circular, ¿cómo encuentro la secuencia más larga de nodos de valor no repetido?
- ¿Qué algoritmo es bueno para fusionar notificaciones similares en los servicios sociales?
- ¿Qué son los algoritmos y la estructura de datos y cómo puedo comenzar con ellos?
¿Quieres ser un desarrollador full-stack? Esta es una combinación de los dos caminos anteriores. Se ocupará del front-end y el back-end (incluida la base de datos).
Según lo que le guste, querrá centrarse en qué aprender y en qué tipo de proyectos desea trabajar. Si le gusta el desarrollo de backend, por ejemplo, debe tener una buena comprensión de su lenguaje preferido y el marco de desarrollo. La mejor manera de hacer esto es elegir un proyecto después de haber aprendido suficientes conceptos básicos y trabajar desde allí.
Recomendaría construir un proyecto en el que codifique todos sus aspectos (es decir, UI o front-end, backend, base de datos). De esta manera, sabrá automáticamente en qué camino está más interesado y se sumergirá profundamente en eso.
Es principalmente después de esta etapa que podrá comprender dónde encajan las estructuras de datos y los algoritmos. Aprenda ellos DSA. Si no está en un programa CS, tome cursos MOOC (de Coursera, por ejemplo). Implemente cada uno que aprenda. No solo eso, aprenda sobre dónde cada DS y Algo que aprende es más adecuado para ser utilizado.
Después de haber creado algunos proyectos, definitivamente necesitará saber cómo escribir un buen código. Necesitará más que if-else y declaraciones de cambio. No importa qué camino elija, aprenda sobre patrones de diseño y paradigmas de desarrollo que le permiten escribir código limpio y fácil de mantener.
En este momento, debería ser lo suficientemente bueno como para distinguirse como un desarrollador de software y, por lo tanto, un solucionador de problemas.
Buena suerte.