O que o desenvolvedor júnior deve esperar de seu líder sênior [fechado]?

44

Aviso: as opiniões expressas são minhas e não expressam os pontos de vista ou opiniões de meu empregador.

Eu trabalho para uma pequena empresa, na qual poucas pessoas são desenvolvedores, outras são QA / Test e 1 é um gerente. Eu entrei nesta empresa há 1.5 anos. 3 desenvolvedores seniores têm mais de 8 anos de experiência.

Estas são as observações que fiz sobre o líder da equipe. (considerando-me como um calouro com menos experiência em comparação a eles em todos os aspectos)

  1. Eles nunca discutem 1: 1 ou nunca consideram a sugestão júnior (eu concordo que cabe a eles, aceitem ou não, pelo menos eles deveriam considerar uma opinião).
  2. Como líder de equipe sênior, eles podem tentar refatorar a base de código com novas tecnologias (incluindo o fator de lançamento de novas tecnologias e outros desenvolvedores e infra-estrutura também prontos), mas esse líder de equipe se sente menos seguro para trabalhar com novos tecnologias, como eles não estão atualizados. (Por que estou dizendo, eles não sabem qual tendência de programação atual, * (como projetos populares de código aberto, como modernizr, bootstrap e muitos outros).
  3. Em nossa base de código, mais de 10.000 linhas são repetidas, então falei sobre DRY: Don't Repeat yourself . Sua resposta foi: "É um artigo fascinante, mas nunca funciona na prática". Eu disse a eles que se não fizermos 100% DRY, podemos pelo menos usar interfaces, mas isso também não foi considerado. * (interfaces podem ser adicionadas para novos recursos, sem tocar na base de código anterior, se eles não estiverem prontos para refatorar)
  4. Todos os desenvolvedores seniores fazem manutenção e conserto de patches. O resto do tempo eles apenas passam em sites de entretenimento. Eles estão felizes em terminar a tarefa.
  5. A introdução de novas tecnologias é ruim? * (incluindo fator de viabilidade pode ser feito).
  6. Gerente também menos preocupado com as coisas que estou falando.
  7. Junior espera que eles possam aprender muitas coisas com o líder da equipe. * (não pedindo ajuda ou codificação sênior para eles).

Minhas perguntas são:

  1. Eu sou muito agressivo com as mudanças que estou propondo?
  2. O que devo esperar dos líderes de desenvolvimento seniores que têm mais de 8 anos de experiência?
  3. Estou errado em esperar aprender e ganhar experiência em uma empresa?

Atualização:

Por que eles sentem que o DRY é impraticável: porque eles não querem se envolver com conceitos de OOP. Eles estão felizes com as tarefas repetidas.

Novas tecnologias que estou propondo:

  1. Uso da Minificação de imagens CSS, JS, SPrite
  2. Uso de Interfaces e .net framework 4, genéricos e muitos outros.
  3. Bibliotecas do lado do cliente, como modernizr, js knockout, bootstrap para responsivo,
por Ravi Gadag 07.02.2013 / 17:57
fonte

7 respostas

30

Am I too aggressive about the changes which i am proposing ?

Sem detalhes (que novos técnicos você está propondo, por que eles estão rejeitando, onde eles sentem que o DRY é impraticável e por quê, etc), é difícil avaliar a quantidade de mérito para suas propostas e isso é importante para o seu agressividade. Se você quer que eles usem um novo framework porque você acha que é novo e legal, empurrar mais do que levemente é muito agressivo. Se eles estão realmente batendo milhares de linhas de copiar / colar na base de código (ou seja, eles estão escrevendo porcaria), então eu diria que mais agressividade é garantida.

Mas isso também depende da dinâmica interpessoal também entre você e eles. Meu conselho seria perguntar a si mesmo "eu poderia demonstrar que minhas sugestões beneficiariam a empresa?" Se a resposta for sim, então eu diria que você tem alguma licença para tentar empurrar.

What should i expect from senior dev lead who have 8+yr ?

Isso vai rodar a gama. Às vezes, você obtém algumas pessoas realmente afiadas das quais pode aprender muito, tanto em termos de navegação política quanto de considerações técnicas. Infelizmente, você também recebe um monte de este . Você não encontrará nenhuma escassez de pessoas cujos 8 + anos de experiência, basicamente, apenas equivale a fazer o mínimo para não ser demitido. Se você encontrar um mentor ou alguém que é realmente afiado, segure isso o máximo que puder porque é menos comum do que deveria ser.

Am I wrong to expect good learning from a company?

As pessoas para aprender estão por aí e estão em algumas empresas. Você parece estar diante de um dilema comum e, para parafrasear os caras do .NET Rocks, vale a pena considerar: "Mude sua empresa ... ou mude sua empresa".

Significando, se você acredita em certas abordagens e princípios básicos e está se encontrando consistentemente incapaz de vendê-los e ganhar a liberdade de fazer e aprender coisas que quer fazer e aprender, vale a pena considerar uma busca por uma empresa. isso é melhor para você.

    
por 07.02.2013 / 18:36
fonte
19

Escreverei isso da minha perspectiva como Desenvolvedor Sênior (ou insira qualquer outro título de fantasia que você goste aqui) que trabalhe com desenvolvedores Júnior com frequência.

Esta é provavelmente uma escassez na sua frente e na frente dos Desenvolvedores Sénior.

Uma coisa que muitos desenvolvedores júnior não entendem é que, enquanto você (como júnior) está pressionando para usar novas tecnologias, novas maneiras de fazer as coisas, dizendo à equipe que eles estão fazendo errado , etc. - os Idosos da equipe estão se reportando à administração em entrega e estão sendo pressionados pela administração a entregar coisas novas o mais rápido possível para tornar a empresa o máximo possível (ou entregar os melhores resultados para o cliente / cliente).

Às vezes, as formas experimentadas e comprovadas de distribuição superam apenas o risco de implementar [inserir tecnologia interessante aqui] . Prazos apertados, muito trabalho e um monte de pressão para carregar significa que a maneira como fizemos isso por mais de 8 anos é a maneira como estamos fazendo desta vez também.

Você precisa ser capaz de demonstrar para a equipe que o que você está propondo realmente terá algum benefício para eles e para a empresa a longo prazo. Caso contrário, você não receberá o buy-in de seus colegas e eles não poderão vendê-lo à equipe de gerenciamento para obter aprovação para executá-lo.

Am I too aggressive about the changes which I am proposing?

Sem conhecer todas as circunstâncias, você pode estar. Basta dizer às pessoas que A é melhor que B , portanto, devemos usar A . Você precisa ir e fazer algo para mostrar porque é melhor. Não precisa ser grande, mesmo que seja apenas um pequeno componente ou aplicativo que mostre que sua maneira sugerida de fazê-lo deve ser mais do que suficiente. Você precisa apresentá-lo e estar pronto para defender suas críticas da equipe.

Mesmo como desenvolvedor sênior, preciso fazer isso antes que possa convencer meus colegas de que a nova maneira de fazer as coisas é melhor.

What should I expect from senior dev leads who have 8+ years experience?

Como outros já disseram, 8 + anos de experiência não significa necessariamente que você é fantástico. Mas, em geral, você deve ser capaz de aprender muito com alguém que tenha estado por perto durante algum tempo; você também pode ensinar algo a eles também.

As pessoas são pessoas e todo mundo tem um ego (alguns maiores que os outros) e não há nada pior do que o cara novo entrando e dizendo que você tem feito o seu trabalho errado nos últimos 8 anos. Ao mesmo tempo, um desenvolvedor Sênior (um bom) deve ser capaz de receber críticas construtivas e ser capaz de articular as razões de suas decisões.

Am I wrong to expect to learn and gain experience from a company?

Não usar as melhores e mais recentes tecnologias e recursos não significa que você não esteja aprendendo e ganhando experiência em sua empresa. Experiência é experiência, às vezes, saber o antigo modo de fazer algo pode lhe dar uma maior apreciação de por que o novo caminho é melhor. Isso também ajuda a demonstrar por que o novo caminho é melhor, porque você entende os dois e pode articular um argumento mais convincente quando estiver tentando vendê-lo. Eu pessoalmente não uso as melhores e mais recentes coisas em que trabalho no momento - mas ainda aprendo coisas novas todos os dias e ainda fica bem no meu currículo também.

Tendo dito tudo isso - se a empresa realmente não é uma boa opção e tudo mais falha, você pode querer procurar um novo lugar para trabalhar.

    
por 08.02.2013 / 06:44
fonte
12

Pense nisso como uma enorme oportunidade.

As promoções geralmente não (e não deveriam) vêm do número de anos que você colocou em uma empresa. Você tem algumas idéias realmente boas e seus superiores / colegas não querem ouvir.

Aqui está uma estratégia:

  1. Faça algo incrível
  2. Colete métricas rigorosas sobre o quanto é incrível (essa etapa é fundamental)
  3. Demonstre isso, com suas métricas para todos na sua empresa (proprietários / líderes / seniores / vendedores - todos com quem você pode confiar)
  4. Lucro

E não quero dizer profit como um passo vago "eu ganho". O passo 4 é onde você obtém um ou todos os itens a seguir:

  1. Promovido
  2. Um aumento
  3. Um bônus

Quer seja com a sua empresa ou com uma nova que possa apreciar os seus talentos e as métricas surpreendentes que tem no seu currículo.

Eu chamo de "ser incrível" - e funciona .

Anedota: Eu não sou consistentemente incrível, mas eu tento ser e eu executei as etapas dadas 5 vezes distintas (2 promoções, 3 novos empregos; todos com aumentos salariais substanciais).

Com isso em mente, provavelmente devo responder suas perguntas diretamente:

Am I too aggressive about the changes which I am proposing?

Você já fez algo incrível, com métricas e exemplos de como é incrível? Há um velho ditado (grosseiro, como pode ser) ...

Ideas are like assholes; everyone's got one, and they all stink

Faça algo.

What should I expect from senior dev leads who have 8+ years experience?

Sério? Você deve esperar nada. Mas tente aprender tudo o que eles sabem. Faça perguntas, revise seus trabalhos em particular, ouça quando eles conversarem e pensem criticamente sobre o que eles dizem. Eles são experiência em uma caixa ... err ... corpo. Tente abri-los e aprender. Meu melhor amigo é um desenvolvedor brilhante, e eu digo a ele que estou sempre tentando aprender o máximo que posso com ele.

Am I wrong to expect to learn and gain experience from a company?

Absolutamente não. Isso não significa que você não esteja aprendendo o que não deve fazer. As pessoas cometerão erros, aprenderão com os erros de sua empresa e com os seus.

    
por 07.02.2013 / 22:51
fonte
4

Eu acho que você precisa ser criativo. Comece a perguntar por alguns pedidos de projetos paralelos que seus superiores estão adiando. Trabalhando de forma independente (ou melhor ainda, obtenha outro desenvolvedor júnior) e, desde o início, você pode aplicar várias coisas novas. Não se surpreenda se descobrir que não é tudo para melhor.

Outra abordagem seria fazer sua própria ramificação de código e passar por um processo de refatoração. Eu posso nunca chegar à produção com base no que você disse, mas pelo menos você pode melhorar seu conjunto de habilidades.

Quem sabe, eles possam ver como você pode facilitar o trabalho de todos e eles vão adotar o verdadeiro uso da 'preguiça' na programação.

Se tudo mais falhar, coloque o novo conjunto de habilidades em seu currículo e comece a procurar outro emprego.

    
por 07.02.2013 / 20:13
fonte
1

Se alguém está trabalhando como programador por +8 anos, isso não significa que ele é um bom programador. O que faz um bom programador ser programador na minha opinião? É vontade de compartilhar não apenas experiências, mas também aprender novas idéias, técnicas, tecnologias, etc. É vontade de melhorar o tempo todo e melhorar. Muitos dos chamados programadores "seniores" são empilhados em velhos padrões de programação funcional a partir de idiomas antigos. Algo como novos conceitos e idéias simplesmente não são para eles, porque eles não precisam disso. Eles adquiriram a "experiência" deles / delas.

A vontade de melhorar e aprender é muito mais importante do que anos de experiência. O desenvolvedor júnior que quer aprender é muito melhor para qualquer empresa do que um desenvolvedor "sênior" que já "saiba" tudo.

    
por 13.02.2013 / 07:49
fonte
1

Você trabalha na minha empresa?

Não, mas a sério, isso parece ser um assunto bastante comum em muitas grandes empresas. A mudança é difícil e cara. Às vezes você realmente não sabe o quanto até o seu no meio e é tarde demais para voltar.

Por exemplo, minha empresa ainda está migrando de telas de mainframe baseadas em cobol para java. É difícil vender alguém na Spring ou JSF quando eles ainda estão tentando atualizar sua tecnologia com os padrões de dez anos atrás. Então, eu vou te dizer o que eu fiz que teve algum sucesso limitado (eu também sou um dev de jr). Seja o exemplo. Não é bom o suficiente para que você saiba o seu mais avançado, você tem que provar isso. Quando todo mundo está brincando, traga um livro para ler se você tiver tempo livre. E faça sobre um desses técnicos que você está interessado em implementar. Se eles vêem você lendo enquanto eles estão assistindo youtube (honestamente surpised sua unidade de operações não pegar isso e as pessoas são demitidas) eles estarão mais inclinados a não só acreditar que você sabe o que está falando, mas pode até perguntar o que seu leitura.

Como exemplo, vou falar sobre minha experiência com meu arquiteto sênior. Cara esperto, mas geralmente não está interessado em novas tecnologias. Eu fui e perguntei a ele sobre como fazer algo no CVS (nosso controle de versão) e mencionei "Oh ok, estou acostumado a usar o subversion, e eles fazem desse jeito. Obrigado pela sua ajuda." Isso levou a várias conversas sobre CVS e Ant SVN e Maven, levando-o emprestando alguns livros da minha biblioteca para verificar. Resultado final: vamos nos mudar para os novos sistemas em algum momento deste ano. A chave é ser aberto e útil sem transmitir que eles estão errados. Porque afinal pode haver muitas maneiras melhores de fazê-lo, mas se ele está funcionando corretamente, então eles não estão fazendo o caminho errado. Qualquer tipo de desrespeito resultará em água quente na maioria dos casos, então fique atento a isso.

Se eles não são receptivos, tenha em mente que você está em um grande campo que está em alta demanda. Se o seu curioso e um aprendiz rápido você vai encontrar outro emprego, provavelmente você vai desfrutar de muito mais. O que é tão importante quanto o dinheiro para mim. Certifique-se de mencionar em qualquer entrevista: "Ah, vocês usam tecnologia xxx? Isso é incrível, eu sempre quis usar isso e tentei na minha antiga empresa." O amor de pessoas quando você tem entusiasmo pelo que elas estão fazendo.

    
por 13.02.2013 / 19:02
fonte
0

Eu acho que você está certo em sua agressividade. É um grande prazer trabalhar com pessoas apaixonadas e um grande castigo para trabalhar com mentalmente mortos. 8 anos de experiência não significam nada. Claro, você pode não estar certo. Muitas vezes, as novas tecnologias são strongmente ligadas ao marketing e nem sempre são melhores. Mas se você não está certo, os idosos devem explicar onde você está errado. Caso contrário, você não obtém vantagens do seu trabalho. Talvez você seja jovem e quente. Se sim, esta é sua vantagem. Não gaste seu tempo no trabalho onde você não pode crescer. Preocupação em encontrar um novo emprego, onde você pode discutir suas soluções e obter feedback de outras pessoas.

    
por 09.02.2013 / 15:35
fonte