Eu estou fora do perfil de qualquer interessado em certificação. Nunca acreditei que provas mostrava que a pessoa sabia de alguma coisa. Tinha essa convicção no colégio e na faculdade, e não seria depois de estar empregado que eu iria mudar de opinião.
E era sempre assim, aqueles que mais valorizavam certificação eram uns babacas (não estou dizendo que todos que a valorizam são babacas, apenas os que mais valorizam, hein?). E aqueles programadores fodaços com quem já trabalhei sempre diziam que certificação não deixa um programador muito melhor que um não-certificado. Soma a isso o fato de eu ser muito pão-duro pra gastar umas centenas de reais. Pronto. Nunca busquei a certificação.
Até que um dia, houve aquela notícia do trabalho: “Tem uma promoção aí de ‘retake’, vamos fazer?”, e segue-se aquela leve pressão dos colegas pra todo mundo fazer junto. Aí alguém pergunta se eu já fiz certificação. Respondi não! E aí eu me senti por baixo: “Até o júnior tá pensando em fazer certificado?”, pensei. Foi uma situação totalmente machadiana: toda uma convicção caiu por terra por causa de um sentimento mesquinho. Me cadastrei e, ainda por cima, paguei!
No início, achei que seria bem fácil, mas percebi que existem coisas que raramente, ou nunca, são tocadas por um programador Java EE, como eu:
- arquivos e serialização;
- threads;
- invocação de compilador e JVM por linha de comando;
- DateFormat e NumberFormat (Acredite: eu só usei conversores usando as tags do JSTL, Faces e outros frameworks bizarros por aí.);
- APIs “obscuras” de Collection (Fala sério, né! ArrayList e HashMap são usados por 95% das vezes!).
Mas haviam algumas coisas que eram beeem fáceis pra mim (tipo: fazia com o pé nas costas):
- herança e polimorfismo;
- override e overloading;
- equals e hashCode;
- visibilidade (private, protected…).
E o íncrível é que realmente aprendi algumas coisinhas que eu vou levar comigo, como DateFormat e NumberFormat (até uma API nova simplificar tudo, e falar que aquilo que fizeram é passado), e SortedSet e NavigableSet de Collection.
Teve o mecanismo de sincronização de Threads que também aprendi, mas que com certeza vou esquecer, pois se um dia eu precisar usar threads, não farei usando tantos estados mutáveis como os exercícios mostram. E teve também aquele negócio de coesão e acoplamento que, sinceramente, pode jogar no lixo depois de passar na prova. Aquilo é uma ultra-simplificação que faz mais mal do que bem. (Alguém realmente acha que usar getters e setters reduz o acoplamento?)
Estudei pelo livo da Sierra, e o mais maluco é que os exercícios são mais difíceis naquele programinha, eu até achei que não ia passar! E aquele papo de que “Ah, tinha na prova as mesmas perguntas do livro” era totalmente verdade!
Apesar de bizarro, eu gostei. Acho até que se deveria parar de usar certificação como um trampolim pro emprego, e deixar só as pessoas com alguns anos de trabalho em Java, fazê-lo. Seria mais interessante, mas acho que também um tanto impraticável.
Enfim, os anos de trabalho também ajuda a focar em quais seriam as minhas próximas certificações: eu farei aquela que tem um ‘W’ no meio e outra de não-sei-o-que com EJB. O resto não está no meu dia-a-dia.
Ia me esquecendo: tirei 86% na prova. E assim: não fiz perguntas no fórum, mas respondi alguns que precisavam de ajuda.