Quanto à necessidade ou não de formação superior para entrar no mercado de trabalho, sugiro pesquisar as vagas de emprego e ver o que estão solicitando:
https://programathor.com.br/jobs
https://portal.gupy.io/job-search/term=full%20stack%20junior
https://www.linkedin.com/jobs/search/?currentJobId=3623294657&geoId=106057199&keywords=full%20stack%20j%C3%BAnior&location=Brasil&refresh=true
Fiz a pesquisa para desenvolvedor full stack junior, que é o que eu tenho buscado ultimamente, mas você pode alterar para outro campo da sua área de interesse. Conversei com um recrutador outro dia (numa entrevista pra uma vaga que eu não conquistei) e ele falou que um candidato que cursou faculdade tem conhecimentos básicos que podem ser considerados o mínimo padrão pra nivelar a equipe, então eles não precisam se preocupar com isso, como design patterns(https://refactoring.guru/design-patterns), notação assintótica, alguns algoritmos padrão, inclusive toda a parte de cálculo, etc. - que são coisas que, como autodidata, você provavelmente não vai perder seu tempo estudando, mas podem ser úteis na formulação de soluções.
Por outro lado, tem aqueles conhecimentos, como Docker, testes e Git, que são extremamente necessários, em certo sentido já são um padrão no mercado mas não necessariamente são ensinados na faculdade.
Quanto aos cursos EAD, testei alguns e não gostei de vários. Se tudo o que você precisa é de um diploma, qualquer curso serve, aliás 90% deles só está focado nisso. Mas, se você quer realmente aprender e se qualificar, procure um curso bem avaliado, mas não confie em qualquer site de rating. Converse com seus conhecidos pra saber a opinião deles e fazer uma comparação. Pergunte aos usuários no linkedin, pesquise no reclameaqui. Eu testei e não gostei de Uninter e Unopar. Estou fazendo Faculdade XP Educação e estou gostando, apesar de não achar 100% (mas é de graça).
Além dos cursos formais, tem uns cursos muito bons que, se você puser no seu curriculum, vão te dar um destaque. Pesquise por Go Expert ou Full Cycle do Wesley Wilians (eles têm cursos livres e uma pós graduação), Javascript Expert do Erick Wendell, esse novo do Felipe Deschamps, curso.dev e outros. Mas prepare o bolso, pois são cursos caros. Em lançamentos recentes alguns deles estavam com DESCONTO de R$ 3.000,00, imagine o valor final. Os cursos de plataformas como Udemy, Alura e codecademy ajudam a aprender mas não vão brilhar no seu curriculum.
Enfim, não dá pra dar uma resposta final pra essas questões. Porém, percebi algumas coisas:
- 80% das vagas de emprego exigem graduação concluída ou em curso;
- Se você sabe Java e Angular, não fica desempregado (eu, nocaso, não sei nenhum dos dois, mes estou estudando kkkkk)
- Processos seletivos que começam com entrevista ou teste técnico são os melhores. Você consegue apresentar o que sabe e avaliar a adequação entre seu conhecimento e os requisitos da vaga. Se o processo começa com um monte de testes psicológicos ou formulários extensivos, é certeza que não vai dar em nada. Eles não estão interessados no seu conhecimento.
- Pautar seu desenvolvimento técnico nas exigências do mercado pode te qualificar para passar em testes e entrevistas, mas podem te afastar do que você ama. Pesquise assuntos do seu interesse que não têm a ver necessariamente com qualificação, e mantenha o equilíbrio.
- Ter um github ativo e com projetos pessoais funciona como portifolio e demonstra suas áreas de interesse e grau de maturidade nas diferentes tecnologias. Muitas vagas pedem pra divulgar o github por causa disso.