No lo estás haciendo bien. Ve a por el título. Asegúrate de aprender esas estructuras de datos, y algoritmos.
Para ser justos yo creé una empresa y me fue bastante bien siendo un desarrollador autodidacta y aprendiendo los algoritmos/estructuras de datos por mi cuenta. También estoy yendo a la escuela de CS para pasar el tiempo y para hacer sentir que no me estoy perdiendo nada.
Ahora la parte real. No soy el peor desarrollador y definitivamente no soy el mejor desarrollador (deja de importarme después de un tiempo). Ser un desarrollador es uno de los trabajos más duros y más criticados que hay, realmente no consigues pases por no saber programar. Sin embargo, los gerentes despiden a un mal programador y se atribuyen el mérito de un buen código que no han escrito. Es un clima de garganta cortada. Esperan que lo sepas todo sobre una industria que cambia literalmente cada día. ¿Cómo esperan los directivos que sepas sobre una nueva vulnerabilidad que se descubrió ayer? Los médicos no saben diagnosticar a un paciente sin buscar entre los síntomas y realizar pruebas. Lo que buscan a través de la documentación y Google.
También como desarrollador no obtienes ningún crédito real o reconocimiento de tu trabajo. Lol Yo le gané a mis competidores cercanos y ¿sabes cómo sé si estoy haciendo algo bien? Los clientes siguen pidiendo en mi sitio y tengo clientes que repiten. La competencia ha cerrado. Los clientes no suelen escribir reseñas de las cosas a menos que sean malas. Así que sí, incluso el buen código escrito será eventualmente reemplazado o copiado y retocado. Es el trabajo más ingrato y a la vez más importante que existe.
Así que sigue las pautas de codificación como dry, mvc, y algunas más que he olvidado. No te desanimes de la programación si fracasas, sigue intentándolo, busca ayuda en internet, habla con alguien, ve por el dinero no por la satisfacción del trabajo, ten una vida y no planees quedarte mucho tiempo en la programación. Tampoco hay beneficios reales.
Espero sinceramente que encuentres lo que buscas.
Oh y yo'tengo 25 años.