elucas, seu caso é mais comum do que imagina.
Tenho 40 anos de programação e mais de 30 como profissional na área de desenvolvimento de software, já passei por tudo e mais um pouco e vou te dar a minha visão que não é uma sentença ou mesmo diagnóstico.
Você já é Engenheiro formado usou programação de forma amadora e acredita que tem conhecimento na área de tecnologia, desculpe, não tem. E isso está te atrapalhando muito.
A partir de tudo que já experimentou você deve definir se quer trabalhar em software para mobile ou web e depois disso se front-end ou back-end.
A primeira coisa que precisa fazer é entender onde você está e onde você quer chegar, a partir dai, trace um plano de estudos, com carga horária específica diariamente, não interessa feriado e fim de semana até alcançar seu objetivo, seu foco estará direcionado e a disciplina vai te levar onde jamais pensou em chegar.
Só há uma maneira de medir seu conhecimento, é realizar pequenos projetos para outras pessoas/empresas, no começo até de forma gratuita.
Comece por freelancer nos sites que oferecem esse tipo de trabalho para ganhar experiência, ali tem projetos de pequeno porte que te remunerarão para isso.
A cada conquista, crie um tópico em seu portfólio, indicando o que foi solucionado, em quanto tempo e para quem de forma resumida.
Algumas dicas, espero ter ajudado.
Sucesso!