O Operário do Futuro

Quando eu comecei a trabalhar com informática no programa de estagiários da ADP eu era um dos mais velhos e, conseqüentemente, um dos poucos que já fazia faculdade. O que me chamava a atenção naquela época era que muitos daqueles estagiários pensava em estudar administração ao invés de alguma coisa mais diretamente relacionada ao desenvolvimento de Software. Mais tarde eu fui perceber que não só os estagiários, mas também os programadores mais experientes consideravam desnecessário uma faculdade de Ciência da Computação ou coisa similar. Por muito tempo eu achei que eles estavam errados. Uma faculdade teria sim muito a agregar, principalmente no que diz respeito a conceitos tais como Estrutura de Dados, Algoritmos, Programação Orientada a Objetos e Engenharia de Software. No entanto, depois de 10 anos trabalhando nesta área eu já não tenho tanta certeza disto.

Não que a pessoa não tenha a oportunidade de aprender muito numa faculdade de desenvolvimento de Software, mas o problema é a dinâmica do mercado e o tipo de Software que a maioria das pessoas que saem da faculdade desenvolve. Afinal de contas, como é que um projeto de três meses lhe permitirá tirar proveito de boas práticas de desenvolvimento de software? Como é que se justifica um investimento maior em Engenharia de Software se a vida útil dos projetos vem diminuindo a cada ano? E pior, para que ter tanto conhecimento se você é obrigado a nivelar por baixo aquilo que você produz devido às pressões externas que vem do mercado?

Na faculdade eles não falam sobre o mercado (ou pelo menos falam muito pouco). Na faculdade eles não falam sobre o prazo. Ninguém também lhe ensina ter o bom senso de considerar que um trecho de código ruim não é o fim do mundo se aquele trecho tem a ver com uma funcionalidade pouco usada e cuja manutenção futura será inconstante. Mas eles falam sobre muitas outras coisas inúteis para o seu dia-a-dia. Você que trabalha com informática já ouviu falar de Modelo Ambiental ou Modelo Comportamental? Você programador que não fez faculdade já ouviu falar de Árvore Binária? Já ouviu falar de estrutura de dados com alocação dinâmica usando ponteiros? Você que trabalha com banco de dados já ouviu falar de Álgebra Relacional? Conhece normalização a fundo? Enfim, você está perdendo alguma coisa com isso? A resposta é: provavelmente não. E isso faz parte de um problema clássico do ensino no Brasil: a enorme distância do meio acadêmico para o meio coorporativo.

Outros fatores também pesam a favor da banalização do desenvolvimento de software no Brasil. O primeiro deles, eu diria, é a invenção das endeusadas certificações. Estas basicamente provam que a pessoa tem boa memória e paciência o suficiente para estudar para uma prova extremamente chata. Às vezes eu penso que se o Tarcisio Meira quisesse tirar certificação Java ele conseguiria e com uma nota bem alta. Mas ser ator de novela certamente dá mais dinheiro do que ser programador.

Outro fator a ser levado em conta é popularização da Internet. Em primeiro lugar porque a Internet deixou o mercado ainda mais dinâmico. Ainda lembro do tempo em que as pessoas faziam um cursinho de ASP e se auto-entitulavam Web-Masters (ainda não estamos livres destes pseudo experts, mas hoje muitos deles gostam de se chamar Evangelistas). Em segundo lugar porque a maioria dos softwares que desenvolvemos em tempos de Internet não são softwares de missão crítica, ou seja, um bug não trará tanto prejuízo assim.

Quem começou a trabalhar com informática antes da Internet deve surpreender com o fato de que as empresas só há pouco tempo começaram a falar de UML, Processo de Desenvolvimento, etc. Na época do Client x Server isto já era natural. Com relação aos Processos de Desenvolvimento ainda temos outro problema. Conheço muitas empresas que usam os processos e as metodologias apenas por “status” – passa a falsa impressão de qualidade. Por outro lado, são poucas as empresas que usam estes processos como um meio para se gerar software de qualidade e não como um fim. Talvez por isso poucas pessoas são capazes de enxergar que tal como uma imagem vale mais do que mil palavras, um diagrama UML vale mais do que mil linhas de código. Mas, repito, levando em consideração a dinâmica do mercado e o tipo de software que desenvolvemos isso é mesmo necessário? Provavelmente não. Como resultado temos um mercado saturado de novos operários. Os operários do futuro. Programadores programados para fazer um trabalho que exige maior esforço físico e menor esforço intelectual: ficar sentado até de madrugada corrigindo bugs e fazendo pogs. E para ser operário, você de fato não precisa de faculdade. A não ser, é claro, para colocar no currículo.

Popularity: 70% [?]

7 Respostas to “O Operário do Futuro”

  1. Daniel Schmitz

    Como pode um ótimo post desse nao ter comentários ?

    Beck, é issu ae, a facu hoje é mais pra se ter algo oficial mesmo… não dá muita base nao.. mesmo pq o mercado muda mto rapido.. Mas eu acho que no mínimo tem q fazer… mas sem achar que sairá de la um programador hehe.

  2. Sergio Eurico

    Parabens! Muito lúcido o artigo, abordando de maneira clara a realidade atual.

  3. Gustavo mans0

    Não concordo muito com seu texto.
    Vamos lá,
    1º Uma boa faculdade tem sim, muito a agragar com relação à Estrutura de Dados, Algoritmos, Programação Orientada a Objetos e Engenharia de Software.
    2º Você não está na faculdade pra desenvolver soft como se estivesse numa empresa. Ali é pra vc ter uma base.
    3º Faculdade está preocupada na ciência (ou deveria estar). Não tem cabimento o prof. te ensinar uma POG pq é assim q acontece na prática. Nem falar pra fazer tal parte de qq jeito pq nao vai ser mto usado ou pq já está acabando o prazo pra entregar o soft. Cada macaco no seu galho. Ele ensina a teoria… o jeito q vc aplicará é problema seu e da empresa q vc trabalha.
    4º Nao conhecer estrutura de dados, algebra relacional, etc. pode nao ser usado na pratica. Mas se vc tem uma base disso, vc pode dar soluções mais inteligentes pro msm problema, sua cabeça abre nao só pra programação mas pra tudo. Uma facu de computaçao nao pode se preocupar só com parte tecnica, tem q levar outros pontos em consideração. O q adianta vc ser um excelente programador se vc nao sabe nem falar?

    Bom… é só minha opniao. []’s

  4. Gustavo mans0

    Pessoal,
    Algum engenheiro civil q nao fez estágio sabe levantar um predio
    depois q sai da facul? NAO!
    Dei exemplo do eng mas pode ser qq area. Tem mto mestre de obra q nao
    tem nem 2º grau e sabe melhor q engenheiro.
    Mas por isso um substitui o outro? Claro q nao. Computação é uma
    ciencia, assim como engenharia e outras. Precisamos de mto estudo na
    area. Inovações!!! Todos nos dizemos q TI muda rápido. O paradigma da
    OO esta ai mto tempo e ninguem muda. Alguem tem a formula certa pra um
    sistema nao ter erros ou pelo menos seguir todas as regras de
    negocio?? Nao!! o engenheiro tem!!! Nós estamos engatinhando qdo se
    diz respeito à eng de soft. Concordo plenamente q tem mta gente q nao
    tem facu e sabe programar melhor q mta gente. Mas será q sabe de eng
    de soft???
    Nao venha me falar q UML, RUP é um lixo se vc nunca usou ou nao sabe
    usar. Nao precisamos de bons programadores. Precisanmos de pessoas q
    estudem a engenharia de soft pra um dia chegarmos perto, pelo menos,
    de uma eng civil, por exemplo. Nao menosprezem a facu só pq tem um
    monte de cara q só quer saber de diploma pq o pai quer.
    Faculdade aprende-se mto sim… mas aprende quem quer… quem nao
    quer, nao aprende.
    []’s

  5. Beck Novaes

    Bem, eu trabalho na área há mais de dez anos, sou Bacharel em Ciência da Computação, e li diversos livros de Programação Orientada a Objetos, Design Patterns e Conceitos de Linguagens de Programação. De modo que eu acredito ser capaz de chegar a uma boa solução quando necessário. Agora, trabalhando 10 anos nessa área sabe quando isso foi realmente necessário? Sinceramente 2 ou 3 vezes. É por isso que eu digo que, do modo que é o ensino no Brasil e da forma como é o mercado, a faculdade perde muito da sua importância. Agora, uma coisa é você trabalhar para as empresas que desenvolvem projetos, outra coisa é você trabalhar para grandes empresas que desenvolvem produtos, como Apple, Microsoft, Google, etc.

    Até aqui nos EUA, onde estou trabalhando no momento com Americanos, Indianos e Chineses, me surpreende como as vezes a busca da melhor solução é facilmente esquecida.

    Hoje eu continuo estudando este tipo de conceito e fundamento porque eu gosto, mas não me iludo mais achando que vou poder praticar isto no mercado de trabalho atual. Quem sabe um dia…

  6. Lázaro Prado

    Bom, não concordo com muitas idéias do seu texto. A faculdade realmente não forma um profissional apto a encarar qualquer coisa, ela por si só não faz isso. Mas o objetivo dela não é esse. A faculdade tem que servir para formar uma pessoa com olhar crítico à sociedade, aos problemas e a busca pela sua solução. Esse amadurecimento como pessoa e profissional se dá com o tempo, e a faculdade é uma das fases.
    Agora ela é indispensável para você criar essa visão crítica de tudo. Existem programadores ótimos que não tem a faculdade, mas nunca estarão na frente dos que tem a faculdade e tb são ótimos. Realmente não podemos parar pra nada hoje, a faculdade é só o primeiro passo para se começar uma vida profissional de qualidade e embasada em compremetimento e maturidade.

    Parabéns pela iniciativa de escrever o texto e debater esse assunto tão pertinente nos dias de hoje.

  7. sivoleu

    Olá beck! Concordo plenamente com vc.
    Estou a cursar o último semestre (06/2009) de Gestão da Tecnologia de Informação.

    Complementando, o problema do ensino no Brasil é a tal da super valorização de conceitos.

    Explicando, todo mundo sai da faculdade sabendo oq é OO, e o qto esse paradigma trouxe melhorias para o desenvolvimento, mas a maioria ñ sabem ou ficam perdidos ao colocar em prática.

    Está mudando, mas o ensino no Brasil ainda oferece ao aluno uma visão individualizada, fragmentada da solução, um bom ex é o diagrama de classes. Todo mundo sabe representar UMA classe graficamente, mas ficam perdidos com as associações e interações entre várias classes e sua comparação (abstração) com MER.

    Um outro problema é q eles formam robos, sim robos, só fazem oq sabem, ñ desenvolveu a capacidade lógica.

    Demonstração:

    Se eu disser q 2 + 2 = 5. “Matematicamente” é impossível, mas teoricamente é totalmente plausível, pois cinco é apenas o nome da qtdd de elementos e 5 e é a representação gráfica dessa qtdd, ou seja:

    esta qtdd de ás (a a a a), ao invés de representar esta qtdd por 4, represento por 5.

    Outro problema é a falta de defesa de pontos de vista entre aluno e ensino.

    Geralmente o ensino trabalha em cima de projetos, porém é ele q impôe a tecnologia a ser utilizada pelo aluno, assim como a linguagem, arquitetura, etc…

    Finalizando, como o ensino ñ possui uma certa integração entre as diversas áreas do processo de desenvolvimento de software, o aluno termina a facu “mandando bem” apenas naquilo q ele teve interesse de aprender + a fundo.

Deixe uma resposta