Olá pessoal.

Pergunta para os arquitetos hands-on e devs: algum de vocẽs já tiveram que sair do mundo Java Web ou .Net e se preparar para assumir como líderes de projetos Javascript com frameworks como Node, React, Angular, Backbone, etc? Ou até mesmo liderar projetos mobile iOS ou Android nativos ou com Ionic, PhoneGap, Meteor, etc?

Gostaria de ouvir opiniões de como vocês se prepararam ou se estão se preparando para isso. Como foi a experiência?

Abraços.

Exibições: 228

Responder esta

Respostas a este tópico

Estou exatamente começando neste processo. Passei décadas trabalhando com Java e agora estou num projeto que usa bastante angular. E devo focar em node também por causa da plataforma de cloud de onde trabalho.

O que exatamente você gostaria de saber sobre o processo?

Oi Leonardo. Beleza?

Como está sendo transição em geral? Como você está se preparando? Enfrentou dificuldades? Se sim, quais?

Já passei por isso, e como não tive tempo de me preparar para o novo mundo Javscript (no meu caso era Angular 1.x), foi muito complicado pra mim. Numa outra oportunidade precisei assumir um projeto mobile (PhoneGap) em minha empresa anterior para cobrir férias de um outro arquiteto, e de novo foi bem difícil.

Aconteceu isso uma vez também quando

Da mesma forma que você, eu também trabalhei somente com Java (JEE, Spring, etc) e fui obrigado a mundar de tecnologia de uma forma abrupta.

Esta pergunta também visa saber a frequência na qual isso ocorre com nós, arquitetos e devs.

Obrigado.

Eu acho que vai ser cada vez mais frequente, tanto pela situação negra dos empregos no país nos próximos anos (exceto outsourcing, este vai vem) quanto pela velocidade das mudanças.

Acho que existe a curva de aprendizado e ela costuma ficar mais difícil quando vc já está habituado a uma ferramenta que domina (no nosso caso, Java).

No caso de mobile e JS então, acho que tem 2 agravantes. O de mobile que são as limitações inerentes da plataforma (menor poder computacional, variedade de plataformas) e o de JS (documentação ruim, gestão de dependências ruim, evolução de software com pouca compatibilidade com versões anteriores, falta de responsáveis por vários componentes, etc).

É muito fácil falar que o foco deve ser no negócio e não na tecnologia, mas a verdade é que para ser proficiente numa tecnologia, é preciso tempo e paciência. Acho que o maior desafio é nos darmos este tempo e termos esta paciência. :-)

Boa tarde Fabio,

Acho que não tem segredo. Se você tem um desafio técnico em uma tecnologia que você não conhece, você vai ter que investir um bom tempo estudando e praticando. Trabalhando com programação, sempre temos alguns fundamentos úteis como uso de padrões de desenho, paradigmas de programação, técnicas de organização que nos podem ser normalmente mapeadas com facilidade para as diversas linguagens... se você não faz macarronada em Java, não faça macarronada com javascript. Ja tive chance de trabalhar com Stacks diferentes e o que sempre me ajudou muito foi identificar primeiro as abstrações e depois pesquisar a melhor forma de realiza-las.

Abs

Valeu pelas dicas, Leonardo.

Muito sucesso pra você.

Abraço.

Olá Fábio!

Nesse segundo semestre de 2016 passei por essa transição para tecnologias front-end modernas depois de anos no Java. Testamos algumas e adotamos o Angular2 + Typescript + Webpack + PrimeNG no projeto. Hoje me sinto bem seguro na tecnologia pois sei me virar diante dos percalços e dar prazos para as tarefas com mais acertividade.

Seguem minhas dicas, espero que ajude alguém:

Toda transição desse tipo gera uma certa adrenalina. O maior problema para quem tem uma bagagem grande nas costas é que você geralmente irá tentar cortar caminhos, apalpar por alto um manual ou tutorial e logo logo tentar dar solução para algo sem ter lido tudo desde o básico. Verdade? Em partes... Essa mágica costuma acontecer só quando você está delimitado em uma plataforma onde você não demonstra nenhum tipo de estranheza.

Quando você vai para outro universo tecnológico onde o terreno é hostil, pouco familiar, sintaxe nova, configurações e ferramentas diferentes, sinto que é necessário deixar de lado a tal bagagem num momento inicial de aprendizagem. Esvazie sua mente. Se proponha ser uma folha branca para aprender algo "novo" sem preconceitos. Evite pensar demais. Evite questionar demais a estética da nova tecnologia. Pelo menos no início. É a fase do "aceita que dói menos".

Com essa mentalidade, comece fazendo aquele tutorial oficial do site da nova tecnologia, o mais bobinho. Não vá direto para o tutorial avançado. Se permita ficar perdido. Se permita não saber ao certo o que está acontecendo, aquela sensação de quando o exemplo roda, mas você não sabe bem explicar por que digitou cada coisa no código. Insista nisso. Repita. Baby steps. Não queira saber explicar tudo com o mesmo nível de detalhes que você sabia explicar no stack tecnológico anterior. Compre aquele livro, daquele moleque novinho que tem um blog sobre o assunto. Um "narrador" e uma "ordem didática" podem fazer a diferença quando você está perdido em meio à superficialidade da web.

E qual o tempo necessário para você sair dessa fase "begginer" e voltar a ser o Jedi de antigamente? Dependerá muito das condições de estudo que você terá. Se puder estudar na empresa, será lindo. Use essa dádiva com sabedoria. Melhor ainda se puder estudar em equipe, paralelizando o aprofundamento, fazendo workshops, provas de conceito, trocando conhecimento. Se a empresa não bancar a transição, é estudar por fora mesmo. De qualquer forma acho prudente botar o custo dessa transição também no projeto. O problema não é só seu! Se você tentar antever todos os possíveis desafios da nova tecnologia durante seus estudos para chegar "pronto", será muita ousadia. E sabemos que em alguns momentos é oque nos resta fazer. Mas se possível, proponha uma velocidade menor no início do projeto, já assumindo que você e a equipe viverão uma fase de aprendizado e adaptação. Se for para ser um Super-Herói considere ser o Super-Sincero.

Até+

Caramba Rafael!

Que texto top! Curti muito. Valeu demais pelo seu tempo em escrevê-lo. Com certeza são colocações importantíssimas a observar durante o aprendizado de novas tecnologias ou plataformas inteiras.

Fico feliz que você conseguiu lidar bem com sua transição, obviamente seguindo as idéias do texto aqui.

O Super-Sincero eu já sou viu. Inclusive, já me chamaram até deste exato nome na minha empresa anterior. rsrs

Abraço e até mais.

Olha,

eu passei por isto algumas vezes e vi também algumas pessoas chegarem neste ponto e pararem por ali: hoje trabalham em outras áreas.

De tempos em tempos estas coisas acontecem: quem tem mais tempo de casa já passou por algumas destas quebras (Visual Basic, Delphi, Clipper, Power Builder, Fox Pro...). Destas, historicamente pra mim a mais difícil sem sombra de dúvidas foi quando a web se mostrou algo viável como plataforma (alguns poucos na época perceberam isto de cara, a maior parte não). 

Então vou falar sobre os casos que vi de pessoas que não conseguiram lidar com esta quebra (e man, foram muitas que vi viu) que foi a web. É bem simples: ao invés de gastarem uns 5 minutos para tentar entender a coisa, imediatamente a viram como algo inferior (e convenhamos, a web quando apareceu como plataforma, comparada ao desktop era muito inferior (confesso que ainda hoje acho inferior, mas isto é assunto para outro tópico)). 

Sequer tentaram entender o negócio direito na época. Em um primeiro momento, havia uma certa segurança (ou melhor, havia uma segurança bem artificial). No segundo momento, se rotularam como profissionais de nicho, no terceiro largaram a área e hoje tem lojas, fábrica de produtos de construção, viraram advogados, administradores, ou, se continuaram na área, viraram gerentes. Resumindo: se quiser se manter na área, tem de gerenciar bem o próprio ego.

Então acho que o mais importante é realmente dar uma segunda chance ao novo, por mais esquisito que pareça (eu ainda estranho JavaScript no servidor (muito)). Mesmo que seja para falar mal depois. Todo mundo que vi afundar nestas mudanças não deu esta segunda chance, que envolve normalmente uma volta ao estado aprendiz.

Largar a senioridade de vez em quando para voltar ao estagiário parece ruim no primeiro momento, mas quando vale à pena, vale à pena pra caralho.

E eu estou passando por esta transição agora: do lado técnico com a evolução do frontend na web (ainda tinha a visão "só preciso do jQuery") e do lado administrativo talvez a mais difícil da minha vida, a partir do momento em que oficializei minha empresa e passei a ser, além de desenvolvedor/arquiteto/o nome que você quiser, também gestor. 

Nesta segunda transição mais de 90% das minhas pré-concepções foram pro saco, e estou achando isto foda.

Que legal Henrique!

Muito bom seu texto também.

Tem várias coisas que me identiquei como até hoje achar estranho o JS no servidor.

Na prática estou me mantendo o mais humilde possivel, e estou começando do zero. Até pra não trazer vícios de outras plataformas/tecnologias para as novas. Estou aprendendo a partir de cursos da Alura (plataforma de cursos que assinei).

"Largar a senioridade de vez em quando para voltar ao estagiário parece ruim no primeiro momento, mas quando vale à pena, vale à pena pra caralho." => Isso faz todo sentido e muita gente não enxerga isso. Claro, isso demanda tempo para estudo, e tempo para estudo nem sempre a empresa que trabalhamos nos oferece e aceita os prazos mais alongados. Neste caso o grande desafio é gerenciar bem o tempo de estudo fora da empresa mesmo para não prejudicar a vida pessoal.

Muito sucesso pra você e obrigado pela resposta.

Até mais.

RSS

Badge

Carregando...

© 2017   Criado por Adriano Tavares.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço