"finalmente ele me disse que você tem 2 anos nessa área e ele (cara de java) tem 20 anos de programador profissional, então ele sabe melhor do que você."
<rant>
Eu me deparei com essa merda há mais de 30 anos. Isso me irritou e me irritou ainda mais agora. Chama-se Argumento da Autoridade (AKA Proof by Authority ) e é pura besteira não adulterada * t. Todas as pessoas que conheci que tentaram reivindicar isso por si mesmas tiveram um sério problema de auto-estima ... e muitas vezes sabiam muito menos sobre o assunto do que pretendiam conhecer.
Eu conheci pessoalmente vários programadores assustadores e inteligentes que ainda estavam no ensino médio e estavam codificando há apenas um ano ou dois. Apenas dois exemplos: o sistema original do fórum foi escrito em 1973 por um adolescente de 15 anos e a primeira implementação de mensagens instantâneas para vários usuários foi escrita em 1974 por um adolescente de 13 anos que bebia leite enquanto os outros engenheiros estavam consumindo. uma cerveja na sexta-feira à tarde.
Também conheço alguns dinossauros que não adotam uma nova tecnologia há 10 ou 15 anos. Muitos deles admitem não acompanhar o que está acontecendo no momento, mas há quem veja isso como um distintivo de honra. Não é.
</rant>
Tendo tirado isso do meu sistema, gostaria de expandir um ponto exposto nas respostas do @Bobby Tables e do @Developer Art: usar "segredos", escrever "código inteligente" ou fazer qualquer coisa no código que seja "prova" "de quão obscuro você pode fazer algo está errado . Período. É o ato de uma pessoa imatura e egoísta que não tem em mente os melhores interesses do projeto / empresa. Eles estão colocando minas terrestres de manutenção que sairão em algum momento no futuro, provavelmente depois de terem passado para outras vítimas empregadoras.
O oposto de "inteligente" é escrever um código claro e conciso que use bem a linguagem de programação; usa padrões consistentes de nomeação; comentários apropriados de final de linha; bons comentários em bloco para explicar as principais seções; está documentado (com exemplos, quando apropriado); e testado. É isso que um verdadeiro programador profissional oferece.
E quando terminam, eles se voltam e orientam a próxima geração de programadores profissionais.