Concordo que é preciso ter base, mas calma aí. Tudo depende do nível de abstração do seu trabalho. Se você tá projetando um sistema embarcado, usando C, seus recursos geralmente são muito limitados e você é responsável por gerenciar quase tudo. Mas se você tá desenvolvendo um aplicativo em SwiftUI, talvez você não tenha que pensar em nada disso, até porque você não tem esse nível controle sobre os recursos que o seu app usa. (os dois exemplos são experiência própria)
O mundo é inteiramente contruído em cima de abstrações. Você sabe desenvolver o código em Assembly necessário pra fazer uma CPU funcionar? Pode até ser que sim, mas que diferença isso faz? A não ser que você trabalhe desenvolvendo CPUs (ou sei lá, algo do tipo), esse conhecimento é puramente um exercício mental ou entretenimento. Nada de errado em aprender isso, mas não é essencial. Sempre existe um nível de abstração mais baixo que o seu.
E se não saber implementar algo sem consulta fosse um problema, programação seria apenas um exercício de memória. Quem consegue memorizar mais?
o mercado não paga por quem "sabe usar React". Ele paga por quem sabe resolver problemas.
Exatamente, o mercado paga por quem sabe resolver problemas. Ele não liga se você tem base ou não. Se "sabe usar React" resolve o problema, então é isso que você precisa pra ser pago. Em algum momento você certamente vai precisar de mais, mas o que te impede de aprender assim que você precisar? Qual o problema de pesquisar no Google ou perguntar pro ChatGPT?
Nunca memorize o que você pode consultar.
Einstein (tradução livre)
Pensa em algo similar ao argumento do quarto chinês. Imagina uma pessoa que só sabe o básico de programação e tá sozinho, sem internet, sem IA, sem livros, sem nada, presa em um quarto. Essa pessoa não vai conseguir fazer muita coisa útil. Vai chegar em um ponto em que ela simplesmente não vai mais saber. Mas se ela tem acesso a todas essas ferramentas, então o conjunto pessoa + ferramentas
sabe programar e fazer algo útil, e pode muito bem ser pago por isso. Fato é que todo desenvolvedor depende de alguma ferramenta. A pergunta é apenas: até que nível de dependência isso é aceitável? Até aquele que não funcione mais, que o problema não seja mais resolvido.