Cara tudo depende de muitas coisas, por exemplo quando você começa um projeto solo, pequeno e tudo mais você se vira nos 30 pra fazer tudo, front end, back end, mobile etc e pra um primeiro momento isso serve. mas a medida que o projeto for crescendo o custo cresce, pois ai você vai precisar de um especialista no back end pra melhorar sue back, vai precisar de um especialista em front pra cuidar do front, vai precisar de um ou dois especialista mobile pra cuidar da area de mobile, vai precisar de um especilista em cybersegurança para cuidar da segurança, etc. Então tudo depende de como o projeto começa. Se começa pequeno um "Pato" pode servir, mas a medida que o projeto cresce vai precisando de especialistas.
Visto isso na minha opnião: Quem é Jr. ou está começando na área deve ter um conhecimento em um pouco de tudo pois nunca se sabe de onde vem a primeira oportunidade. Agora quando você decide um caminho fixo e ja tem experiência na área, é uma boa começar a se especializar pois os especialista em tese ganham mais que generalista . Obviamente que você deve ter um conhecimento mínimo das outras áreas mas nada que te faça ir tão a fundo quanto você vai naquilo em que se especializa