Transição de carreira Sênior Frontend Web (React) para Júnior Mobile (iOS)
Crise Existencial na Carreira: Uma Reflexão Pessoal 😥
Neste exato momento, me encontro imerso em uma crise existencial de carreira. Dúvidas, incertezas e angústias surgem, algo que talvez seja considerado normal para um Júnior. No entanto, o curioso é que eu, na verdade, sou Sênior. Parece que essa experiência é universal, independentemente do nível de senioridade 😥.
Minha Trajetória: Um Resumo de 10 Anos de Aprendizado 🚀
Vamos tentar resumir, focando nos pontos cruciais para não nos afastarmos do tópico. Se a contextualização ficar entediante, sintam-se à vontade para pular para o próximo 😂.
Há 10 anos atrás, embarquei em uma jornada de aprendizado ao cursar um técnico em informática, com ênfase em programação web utilizando PHP. Foi nesse momento que decidi seguir o caminho do desenvolvimento. Com 9 anos de trajetória, dei início a uma graduação em Análise e Desenvolvimento de Sistemas, motivado por dois fatores cruciais: a velocidade e a prática intensiva. Já no 2º semestre, conquistei minha primeira posição como Desenvolvedor Web Júnior em uma agência de desenvolvimento de sites. Essa oportunidade proporcionou uma rica experiência, envolvendo tanto frontend quanto backend, atendimento ao cliente, coordenação e até mesmo a entrega de projetos diretamente aos clientes.
Há 6 anos atrás, ingressei em uma empresa centrada na experiência do aluno. Durante esse período, desenvolvi diversas ferramentas educacionais, mantendo sempre o foco na web. Embora tenha continuado a utilizar PHP, minha curiosidade levou-me a explorar o mundo do React e Node, à medida que aprofundava meus conhecimentos em Javascript.
Há 5 anos atrás, mudei para outra empresa no mesmo setor educacional, desta vez dedicada a ferramentas de gamificação para aprendizado. Tive a oportunidade de coordenar uma equipe com o desafio de entregar um jogo feito na Unity, uma experiência desafiadora que culminou em sucesso. Além disso, desenvolvi uma Loja Virtual de ponta a ponta utilizando React e Node, sempre mantendo o foco no desenvolvimento web, área na qual sempre me senti à vontade.
Há 2 anos atrás, enfrentei um novo desafio ao trabalhar em um banco digital. Nesse ambiente, desenvolvi integralmente o novo site, implementando o design system da empresa. Durante esse período, aprendi a utilizar Vue.js, uma transição que ocorreu de maneira suave. Além disso, expandi minhas habilidades ao lidar com jornadas de clientes no backend, utilizando tecnologias como Node.js, Salesforce e Marketing Cloud. Essa fase foi repleta de desafios inéditos, mas, no final, tudo se encaixou perfeitamente.
Nos últimos 6 meses, integrei-me a uma empresa de jogos de gambling, onde atualmente aplico minhas stacks favoritas: React e Node. Essa jornada contínua tem sido marcada por desafios e crescimento constante.
Pontos Negativos: Reflexões Sobre o Desenvolvimento Web 🤔
Ao olhar para trás, analisando minhas experiências em diversas empresas, algumas conclusões não tão animadoras surgiram a respeito do desenvolvimento web atual:
1. Volatilidade: Para mim, esse é o principal desafio da linguagem - a constante proliferação de novas bibliotecas. Cada dia surge uma nova, e o que estudei há apenas um ano já está considerado obsoleto. Concluí que é praticamente impossível acompanhar o ritmo acelerado dessa linguagem. Em particular, ao abordar o ecossistema React, considero o exemplo do NextJS, uma das bibliotecas mais renomadas da comunidade. Observo que, em outubro de 2021, tivemos a versão 12, seguida pela versão 13 em outubro de 2022, e a versão 14 em outubro de 2023. Embora compreenda a importância de manter-se atualizado e não ficar para trás, quem trabalha diariamente com React sabe o tempo necessário para que esses frameworks atinjam uma estabilidade aceitável para uso em produção. E, justamente quando atingem esse ponto, uma nova versão é lançada - muitas vezes, infelizmente, repleta de bugs. Vale ressaltar que este é apenas um exemplo entre milhares de frameworks, sendo que alguns até acabam sendo descontinuados no meio do caminho. Essa dinâmica desafiadora torna a vida dos desenvolvedores uma jornada constante de adaptação e aprendizado.
2. Concorrência: Depois da pandemia, testemunhamos uma significativa migração de indivíduos para a área de tecnologia. As renomadas escolas, que prometem levar essas pessoas para o "próximo nível" em suas trajetórias, acabam por formar muitos profissionais ainda cruos, desprovidos de experiência prática. Certamente, existem exceções, mas, infelizmente, essa realidade tem reflexos negativos no mercado. Essa onda de ingresso massivo de novatos torna a tarefa dos recrutadores um pouco mais desafiadora. Identificar e selecionar candidatos com as habilidades necessárias entre um grande grupo de profissionais inexperientes pode ser um processo complicado. Isso destaca a importância de estratégias eficazes de seleção e desenvolvimento para garantir que, apesar da entrada abundante de novos talentos, a qualidade e a adequação ao mercado de trabalho sejam mantidas.
3. Startups: Não tenho nada contra, mas gostaria de compartilhar as experiências que vivenciei ao longo da minha carreira. Trabalhei com pessoas cuja competência deixava a desejar, líderes que, embora possuíssem currículos impressionantes, demonstravam dificuldade em gerenciar equipes de desenvolvedores. Enfrentei desafios em produtos com uma volatilidade constante, enfrentando demandas urgentes e gigantescas, muitas vezes sem um planejamento adequado. No decorrer desse caminho, deparei-me com situações em que cargos de confiança eram ocupados por indivíduos sem nenhum background técnico, o que gerava desafios adicionais. Além disso, trabalhei ao lado de desenvolvedores sêniores cujas habilidades deixavam a desejar, levando-me a questionar diariamente como essas pessoas alcançaram suas posições. O microgerenciamento também se mostrou uma realidade, contribuindo para um ambiente de trabalho caótico e tóxico. Essas circunstâncias, infelizmente, resultaram em níveis significativos de estresse.
4. Mercado: O cenário atual está altamente saturado, com poucos lugares oferecendo remunerações atrativas. A competição é intensa, e constantemente há indivíduos com menos experiência, onde candidatos com maior lábia, acabam conquistando a vaga pela qual tanto almejei. Essa realidade torna a busca por oportunidades mais desafiadora do que nunca.
5. Futuro: Para fechar com chave de ouro, ao analisar mais de perto, é evidente que a maioria dos sistemas que utilizamos hoje são voltados para dispositivos móveis. A presença online via web está gradativamente perdendo terreno, como evidenciado pelo fato de vários bancos optarem por não oferecer uma versão web, concentrando-se exclusivamente em plataformas mobile. Ao longo dos anos, os usuários têm migrado cada vez mais para dispositivos móveis, a ponto de tornar obrigatório que os sites na versão web sejam, no mínimo, responsivos, caso contrário, o risco de perder clientes é iminente. Essa transição sinaliza uma mudança significativa nas preferências e comportamentos dos usuários.
Tá mas e Agora?, Qual o Próximo Passo? 🤷♂️
Essa é a pergunta que ecoa em minha mente. Apesar do amor pela programação e pela criação de interfaces visuais, o desafio contínuo no universo web levanta a questão: Vale a pena permanecer como Frontend Web?
Explorando o Mundo Mobile 📱
Após pesquisas, identifiquei três caminhos no mundo mobile:
1. Híbrido (React Native): Se optasse por essa abordagem, com certeza escolheria React Native, é intuitivo e já tenho familiaridade. Contudo, esbarra nos desafios que mencionei anteriormente em relação às startups. Chega um momento na carreira em que, para crescer e integrar equipes excepcionais, pode ser necessário optar por se especializar como desenvolvedor nativo.
2. Android: Embora seja uma plataforma incrível, confesso que tenho uma certa aversão ao Java, hahaha! Eu sei que existe o Kotlin, mas ele é baseado em Java, o que não me agrada...
3. iOS: Apesar de nunca ter criado um Hello World nessa plataforma, considero a área de iOS atraente por apresentar menos concorrência. Além disso, é importante notar que indivíduos em início de carreira podem enfrentar limitações financeiras para adquirir um MacBook. Entretanto, os salários são atraentes, e empresas que optam por se manter no desenvolvimento nativo geralmente são grandes, bem organizadas e possuem produtos consolidados no mercado.
O que estou pensando? 🤔
Estou considerando uma mudança de carreira? Sim! A ideia é deixar para trás tudo o que aprendi ao longo desses 8 anos, tornar-me um Júnior no desenvolvimento mobile iOS, ganhar menos, ser humilde e reaprender tudo do zero. Certamente, a curva de aprendizado será mais suave, considerando minha experiência de 8 anos e os diversos projetos que conduzi de ponta a ponta. Afinal, ser um programador sem desafios é uma tarefa praticamente impossível.
Qual é a opinião de vocês! 🗣️
Gostaria sinceramente de ouvir a opinião de todos - juniors, plenos e, principalmente, sêniores, tanto na área web quanto mobile. Se alguém teve uma história semelhante à minha, por favor, compartilhem suas experiências. Convençam-me a reconsiderar ou, quem sabe, motivem-me a seguir adiante nesta jornada de reflexão, hahaha. Suas perspectivas são valiosas para essa importante decisão!