Olá pessoal,
O post de hoje é mais uma dica de carreira profissional para quem é programador júnior e tem como objetivo virar um programador pleno. O que é preciso para ser um pleno? Bem, sabemos que um pleno tem um salário maior que um júnior, como o senior tem um vencimento maior que o pleno. Teoricamente, um junior não deveria ganhar mais que pleno, por exemplo.
Vale salientar que as informações nesse post não tem comprovação científica, nada mais passa da experiência do autor, tendo como requisito dados fornecidos por alguns contatos de RH, o que seria um pleno ideal para a companhia XY.
Outro ponto que não posso deixar de destacar é que as informações abaixo sobre programador pleno são conhecimentos mínimos, pois não podemos esquecer de um fator muito importante: o avanço tecnológico, novos frameworks, etc. Então isso tende a mudar em uma freqüência mais rápida que podemos imaginar.
Lets go…
Post Relacionado:
Para facilitar a leitura enumerei cada característica técnica necessária, assim fica mais fácil para quem é junior traçar objetivos e ir riscando o que já foi almejado.
Além das característica de Programador Júnior, o Pleno deve ter as seguintes:
Primeiro passo para ser um pleno é ter experiência em desenvolvimento Java. Isso é um fator importante, então está explicado por que temos a categoria Junior.
-
Saber usar orientação a objetos com a maior simplicidade do mundo.
-
Conhecer bem JSE e ser capaz de desenvolver aplicações com BD
-
Dominar o conteúdo básico de JEE, desenvolver aplicações JEE com BD
-
Conhecer SQL, BD (dê preferência a mais de um e os mais usados no mercado: Oracle, DB2, MySql etc), servidores de BD e dominar JDBC.
-
Se não for um SCJP / SCJA, pelo menos dominar os objetivos do exame e se for fazer, passar pelo conhecimento e não na sorte.
-
Dominar o conteúdo da SCWCD
-
Saber pelo menos o que é um EJB
-
Design patterns não pode ser algo estranho, não precisa ser um expert, mas entender conceitos básicos é importante.
-
Conhecer HTML e JavaScript (pode ser o básico)
-
Ser capaz de trabalhar com XML
-
Buscar otimização de código e buscar o code clear, usando técnica como XP, Refactoring.
-
Saber usar reflection e processar annotations
-
Conhecer mais de um sistema operacional a nível de desenvolvimento é um diferencial (ex. Linux – se possível conhecer mais de uma distribuição).
Bem, pelo lado da “exata” temos as característica acima, mas não podemos esquecer o lado “humano” que complementa a carreira de todo profissional, tais como: proatividade, humildade, honestidade, comunicação, etc.
Volto a reforçar que os 14 pontos listados é o mínimo que se espera de um BOM Pleno.
Espero que tenham gostado do post. Até o próximo. Abraço!!
Olá… legal o post….
Gostaria de saber a nível de remuneração(salário), assim, uma média relativa para junior, pleno e seno.
Obrigado….
Ei Camilo, ótimo post!
Destacaria também saber os princípios de arquitetura de sistemas, saber escolher qual a melhor tecnologia para determinado problema, ect.
Às vezes também precisamos dar uma de arquiteto. rsrs
Abraços
=D
olá Pessoal,
Fico feliz em saber que gostaram do post. Dalvo, eu nao coloquei a questão salarial pq isso vai variar e MUITO. Pois depende da região, cidade, tamanho da empresa, o valor do projeto para empresa. Sao tantos fatores que influenciam na definicao do valor. Por isso que coloquei no post, que um junior ganha menos que um pleno, como um pleno ganha menos que um senior. Isso é o que deveria acontecer na pratica, e parece que acontece em boa parte das empresas. Um exemplo: na bahia um programador junior java nao ganha mais que 1.300,00, porem em sp pelo que tenho consultado o valor ta entre 2.800 – 3.200 para um junior. Enfim, é dificil dizer de moda geral, mas acredito que cada profissional sabe seu valor e na hora de contratacao vai dizer por quanto ele deseja oferecer seu conhecimento, cabe a cada um ter a arte de negociar (o que nao eh comum para profissionais IT).
Loaine,
Boa colocacao sua e é importante realmente entender de arquitetura, dar sugestoes, se possivel iniciar ou pensar ja nisso desde de junior. Mas acredito que o melhor profissional que pode “dar uma de arquiteto”seria um BOM senior. Esse sim seria o “o cara”.
abraco
Tenho algumas considerações a fazer:
1 – Ser júnior, pleno ou sênior não está necessariamente ligado a uma tecnologia. Ele tem que ser programador pleno. Vai que todo mundo resolve abandonar Java. O cara vai virar júnior de novo? Não se ele tiver um bom embasamento em OO e saber programar de um modo geral.
2 – Os ítens 2(Java SE) e 12 considero desnecessários para um bom programador Java. Hoje em dia as aplicações Java SE perderam terreno para aplicações web, apenas em casos bem específicos uma empresa adota Java SE. Quanto a processar annotations e trabalhar com reflection, está mais para um arquiteto ou programador sênior.
opa! fabio,
Eu liguei a tecnologia apenas para quem estuda java saber o minimo necessario, agora assim eu nao posso ser senior em java e querer ser senior .net isso praticamente impossivel sao tecnologias diferentes, eu posso cair la para junior no .net pq precisarei estudar a fundo a tecnologia, mas eu posso ser um senior em IT levando em conta experiencia, conhecimentos em tecnologias, participacao em projetos e funcao etc. Eu citei JSE, pq acho que todo programador java mesmo JSE nao ser sucesso um programador java tem que conhecer o basico de JSE. ASsim fora do brasil ah bastante aplicacoes JSE se um dia o cara for para fora e rolar algo por la de inicio, sera que nao vale apena? Nao sabemos o que o futuro tem para nos, entao fica a frase: “Não existe sorte. A sorte é o encontro do preparo com a oportunidade.Portanto, se quiser ter sorte na vida, esteja preparado para as oportunidades.”
Só algumas coisas que gostaria de acrescentar à sua lista:
– Ser capaz de testar de forma automatizada sua aplicação, através de qualquer técnica ou ferramenta (Com cobertura de no mínimo 99,99% do código)
– Conhecer profundamente as ferramentas que te auxiliam no dia-a-dia.
– Ser capaz de parar de perder tempo fazendo sempre as mesmas coisas e automatizar o máximo de coisas que puder, seja com ruby, perl, shell-script ou qualquer outra coisa que te permita isso.
– Ler no mínimo um livro por mês.
Agora o mais importante que acho disso tudo é:
Não importa se é programador junior, pleno, senior, master, mega, jedy ou supra ++, o importante é que se faça tudo isso independente da etiqueta adesiva (leia-se marcação de bois) que te colocam nos ombros.
Bom tem mais coisas, mas acho que basta por aqui.
Abraços.
Fabio Nascimento
P.S.: Acompanho seu blog, acho bacana seus textos.
opa! Fabio,
Gostei de suas opinioes! Olha eu procurei ser bem curto no post, mas dar para fazer um “guia” sobre ser pleno, jr, senior hehe, procurei colocar o minimo do minimo mesmo. Agora acho que ler um livro por mes eh um pouco de exagero, pq eh complicado para quem trabalha + estudar (facul – graduacao, pos etc) + estudo em casa. Nao sei, mas meu trabalho consome media 70% do meu tempo sobrando 30% para me onde divido estudo e familia. Agora um detalhe meu trabalho me consome esses 70% pq amo o que faco e a empresa que trabalho entao to sempre buscando mais responsabilidades mais destaques etc, caso contrario eu trabalharia o normal 8 hrs por dia e pronto. hehe Entao por isso que digo que ler o livro por mes nao eh tao necessario, as vezes com a experiencia do dia-dia vc aprende mais que ler 1 livro, depende de casa profissional.
abraco,
Mais uma vez voce faz um post muito legal.
Não tem muito haver sobre alguma tecnologia ou framework, mas é muito interessante saber algumas dicas de como crescer na nossa area.
parabens pelo post
Ótimo.
Quando disse ler um livro por mês talvez tenha exagerado um pouco, não levando em consideração a administração do tempo que cada um faz.
Mas de forma geral, se aumentarmos para um livro a cada dois meses, não acho exagero, isso não quer dizer que você tenha que ler o livro de capa a capa, mesmo porque as vezes alguns pontos apenas te interessam de um determinado livro.
Não necessariamente tem que ser um livro de 800 páginas.
Mas tentar fazer isso, acho ótimo, incluo aqui livros não técnicos também.
Bom referente a aprender no trabalho mais do que 1livro por mês, tenho que discordar, a menos que você consiga trabalhar com 1 tecnologia por mes diferente uma da outra.
Aprender (acho meio subjetivo isso) no trabalho, vai muito do que você faz, visto que o foco é na maioria das vezes resolver problemas de negócios, coisa que acaba consumindo mais tempo (eu espero) do que aprender tecnologias.
Agora se você se refere a aprender (incluindo não só tecnologias, mas negócios também) acho válido sim.
E pra finalizar, acho importante você incluir, caso queira, que participar de um projeto open-source sendo colaborador é muito válido.
Abraços,
Fabio Nascimento
Grande post, muitas de minhas duvidas foram solucionadas
Abraços
Legal seu post Camilo,
Posts desse tipo são também bons para quem acabou de entrar na área ou está pensando em entrar.
Parabéns!
eh complicada a coisa hein!!!
mas valeu as dicas