Archive for março \20\UTC 2009

Especialista X Generalista

março 20, 2009

Há um tempo atrás, voltando do almoço, estava conversando com o Anderson sobre o que vale mais a pena ser hoje em dia, Especialista ou Generalista. Esse post é um dos mais antigos rascunho que eu tenho, mas como o assunto surgiu num tópico do GUJ, resolvi adiantar o assunto.

Há o mundo ideal que acredito que seja unanimidade, que é voce saber tudo de tudo… tudo de redes, tudo de sistema operacionais, tudo de hardware, tudo de JSF, de JPA, tudo do seu negócio… e assim vai… mas hoje com a quantidade de novas tecnologias surgindo é impossível acompanhar. Quando vou numa livraria e fico olhando a quantidade de assuntos que existem e as vezes eu nem imaginava, eu cada dia tenho mais certeza que quanto mais estudo mais coisa tenho a aprender.

Voltando ao assunto, o que basicamente é um especialista e um generalista, na minha visão

Especialista: Um profissional extremamente técnico, conhecendo o detalhe, e com grande conhecimento numa plataforma ou framework especifico, como jsf, jpa, ejb3 ou jms. Geralmente a hora desse profissional é bem mais cara, e ele é chamado para “apagar incendios”, quando existe um problema que ninguem sabe resolver. Já almocei com um arquiteto da BEA uma vez que foram em uma empresa que trabalhava, e me disse que hoje tava em SP, amanha no RJ e semana que vem no Ceará, sempre para resolver grandes problemas e sobre grande pressão.

Generalista: Um profissional técnico, sabe usar razoavelmente bem o que está no seu projeto, as vezes esquece um ou outro detalhe de um framework por exemplo, já que usou relativamente poucas vezes, e, o mais importante de tudo, conhece muito bem o seu negócio, já que tendem a pegar um projeto do início ao fim.

A escolhe entre as duas opções depende muito do tipo de carreira que queira seguir.

Sendo generalista, voce tende a ficar em empresas um tempo maior, entendendo seu negócio, suas aplicações, e seu valor para aquela empresa é maior, e consequentemente para o mercado seu valor é menor, por exemplo, voce trabalha numa empresa com sistemas de telecomunicações e depois ir trabalhar numa empresa de seguros, o que voce aproveitaria do seu conhecimento de negócio?

Sendo um especialista, voce tende a estar cada hora em uma empresa diferente, trabalhando geralmente sobre maior pressão, adquirindo maior experiencia (que na minha opinião se ganha vivendo várias realidades diferentes, e não sempre a mesma realidade), trabalhando um periodo menor w ganhando um salário maior, mas para a empresa que voce presta serviço, voce não agrega valor para o negócio dela, já que está ali para resolver um problema técnico, mas para o mercado seu valor é maior, porque tecnologia é igual no mundo todo.

Agora, a decisão de qual caminho seguir, é sua!
Boa Sorte!

Anúncios

Montando um ambiente de desenvolvimento – Parte 2

março 3, 2009

Uma vez instalado um software de controle de versão, no nosso caso o SVN, e de extrema importancia um software de integração continua. No mercado há alguns servidores de integração continua, o CruiseControl e o Continuum são um exemplo desse tipo de software, e esse último será nosso foco nesse post.

A vantagem imediata que tivemos na utilização de um software de integração onde trabalho foi através dos seus builds automatizados(configuramos 2 vezes ao dia) pegamos no início constantes erros de compilação e falha nos testes. Nunca se deve commitar nada pro SVN que esteja com problema, porque sempre que precisarmos pegar qualquer versao do repositório, ela tem que compilar e ser testada sem falhas. Outra vantagem desse tipo de software num ambiente cooporativo quando há aplicações dependentes, nos testes é capaz de detectar erros deste tipo, tendo um servidor de repositório de jar (Archivaa por exemplo, que falaremos num próximo post)

A instalação é simples de ser feita, eu optei pela versão standalone por ser simples instalação, lembrando sempre que focamos sempre praticidade! Voce pode encontrar o continuum para download em http://continuum.apache.org/download.html, baixe a versão standalone. Após download descompacte o continuum, e para testar, basta executar dentro do diretório bin:

fernando@fenote:/usr/local/java/apache-continuum-1.2.3/bin$ ./continuum start
Starting Apache Continuum...

Agora temos o continuum no ar sobre um servidor Jetty na porta 8080. Acho interessante mudar a porta do Jetty e configurar o email do continuum para notificações de builds, ambos no arquivo $CONTINUUM_HOME/conf/jetty.xml. E claro colocar o continuum para inicializar junto com o seu Sistema Operacional, no caso do Ubuntu, usamos o seguinte comando


fernando@fenote:/usr/local/java/apache-continuum-1.2.3/bin$ sudo ln -s continuum /etc/init.d/
fernando@fenote:/usr/local/java/apache-continuum-1.2.3/bin$ sudo update-rc.d -n continuum defaults 99

Agora basta acessar http://localhost:8080/continuum/, cadastrar seu projeto e programar seus builds!

Boa Sorte!

Referencia: http://continuum.apache.org