segunda-feira, 23 de janeiro de 2017

Tagged under:

Mesmo que você seja um programador no cargo, seja desenvolvedor na atitude...

Recentemente, em um bate-papo com @Mateus Malaquias e @Ivan Queiroz estávamos conversando sobre perfis profissionais diversos que encontramos ao longo de nossa jornada, tanto nas empresas que trabalhamos, como nos encontros dos JUGs e outros eventos que participamos.

Uma dica que sempre passamos, principalmente nas universidades/faculdades para os futuros profissionais da área de desenvolvimento é sobre o perfil profissional esperado não apenas pelo mercado de trabalho, mas também pela comunidade. Como se destacar? Quais caraterísticas? Nisso, conversamos sobre escrever sobre um assunto que é um pouco polêmico, mas não irei entrar muito no escopo do tema. Os programadores devem ser simplesmente programadores ou devem fazer algo mais?

Não irei falar se fábrica de software é algo bom ou ruim. Principalmente nas fábricas existe um cargo chamado PROGRAMADOR. Em teoria, o programador é aquele profissional que lê uma especificação (normalmente definida por uma analista) e executa em linguagem de programação o que está especificado. O programador por ter "menos experiência" é um executor. Em alguns lugares, existem ferramentas cases que fazem parte do trabalho desse tipo profissional na construção de CRUD, Em outros não, mas o programador, ele apenas lê e executa. Pelo menos, isso é definido em teoria.

Um dos grandes problemas dos projetos de software tem a ver com comunicação. O desejo do cliente x expectativa x necessidade gera um problema clássico, cuja figura abaixo sintetiza de maneira perfeita o que estou tentando falar.


(Fonte: não consegui achar a fonte do autor dessa figura mas achei ela nesse link)

Então, qual seria o perfil que todos profissionais de TI deveriam ter. TI é uma ciência de natureza incerta e cuja solução envolve criatividade, conhecimento técnico, visão de negócio, dentre outras coisas. Na palestra que fiz sobre carreira nos Tour do Java Bahia ano passado, a mensagem para os estudantes é que se tornassem profissionais diferenciados (link para os slides da palestra). Um elemento básico que falamos, além de conhecimento e curiosidade, é que a pessoa, entenda o problema que ela precisa resolver. E participe do processo de decisão. Para isso, coragem é uma característica importante. Não ter medo de se expor, pois caso a sua solução não seja boa, você vai ouvir o feedback porque e vai aprender, caso seja boa, você vai evitar que o cliente final do software que você está construindo tenha menos problemas com a entrega, o que é super positivo.

Por isso, aconselhamos que as pessoas que trabalham com TI, sejam menos executoras e mais abrangentes. Mesmo que no seu crachá não esteja escrito analista, se exercite fazendo esse papel e veja se o que está especificado, está condizente com o cliente esperar receber. Para saber o que o cliente espera receber, é necessário entender o propósito do projeto.

Independente do que estiver escrito no seu crachá, dentro de seu conhecimento, seja sempre desenvolvedor e não apenas um programador que executa o que está escrito. Isso vai gerar crescimento profissional para você e com o tempo gerará ganhos para a empresa que você trabalha ou para o cliente que você atende. Nem sempre o cliente sabe o que ele quer, mas nós como analistas precisamos direcionar os mesmos para o melhor resultado possível.



1 comentários:

Michel Lima disse...

Excelente post, me ajudou a ter uma ideia melhor ja que estou no início da carreira de "Programador".