A TI (em empresas maiores) está na caverna?

Percebo ser uma constante ao lidar com empresas maiores a resistência que seus departamentos de TI possuem em aceitar qualquer tipo de novidade.
Como vocês lidam com este tipo de problema?

Postei no meu blog ( http://www.itexto.net/devkico/?p=273 ) o porquê de, na minha opinião, estarmos literalmente na caverna a este respeito.

O que acham do argumento?

Fico imaginando qual a sua solução para treinar centenas de desenvolvedores cada vez que alguem aparecer com alguma oitava maravilha do mundo.

Também concordo que uma empresa não pode parar no tempo e deve prover um mecanismo para que os proprios desenvolvedores entrem em um concenso do que deve ou não ser adotado.

Infelizmente sinto na pele esta realidade, trabalho em uma empresa em que desenvolvemos na forma arcaica e porca, a palavra que mais se houve falar aqui no escritório é POG. Falar em padrões de projeto, qualidade de software, OOP, é quase um sacrilégio. Acredito que muitos destes problemas são originários na formação destes profissionais, lembro de uma funcionaria que trabalhava aqui que se formou em Ciências da Computação e não sabia fazer uma consulta em SQL, se banco de dados e a base de 90% (se não for mais) das aplicações empresariais e sai da faculdade sem saber SQL, imagina o resto.

[quote=aleck]Fico imaginando qual a sua solução para treinar centenas de desenvolvedores cada vez que alguem aparecer com alguma oitava maravilha do mundo.
[/quote]

A solução é simples: pelo menos analisar a “oitava maravilha do mundo” antes de nega-la completamente e, em seguida, caso esta venha a agregar alguma coisa de fato ao negócio, estudar a sua implementação. Simples assim.

Mesmo que não seja adotada, PELO MENOS amplia o conhecimento daqueles que a analisaram (ou ao menos ouviram falar a respeito) e todos saem ganhando no final. :wink:

Acho que um dos principais motivos disso é a suposta dificuldade das tecnologias novas se integrarem aos legados e a dificuldade de encontrar pessoas que dominam essas tecnologias.

Agora, quando se trata de implementar um produto novo, são poucas as empresas que experimentam algo diferente (tanto tecnologia quanto no processo de desenvolvimento). Uma solução cabível ao meu ver seria a criação de pequenos laboratórios dentro das empresas, algo que não custaria horrores para os donos, mas que aumentaria bastante o potencial de inovação.
Posso estar sendo ingênuo, mas acredito que duas ou três pessoas responsáveis pela vanguarda tecnológica em uma empresa de 100 pessas, são capazes de mudar muita coisa.

[quote=kicolobo][quote=aleck]Fico imaginando qual a sua solução para treinar centenas de desenvolvedores cada vez que alguem aparecer com alguma oitava maravilha do mundo.
[/quote]

A solução é simples: pelo menos analisar a “oitava maravilha do mundo” antes de nega-la completamente e, em seguida, caso esta venha a agregar alguma coisa de fato ao negócio, estudar a sua implementação. Simples assim.

Mesmo que não seja adotada, PELO MENOS amplia o conhecimento daqueles que a analisaram (ou ao menos ouviram falar a respeito) e todos saem ganhando no final. ;)[/quote]

Aqui na empresa sempre quando “aparece” algo novo que parece ser interessante eh designado um grupo (geralmente com os arquitetos e alguns desenvolvedores senior) pra fazer pesquisa, desenvolver alguns tests, exemplos, enfim, estudar a tecnologia ate esgotar tido o que tem pra saber dela. Ai eles tomam a decisao se vale a pena investir ou nao. Acho que eh uma boa forma de adotar coisas novas nas empresas.

//Daniel

[quote=dlt]Acho que um dos principais motivos disso é a suposta dificuldade das tecnologias novas se integrarem aos legados e a dificuldade de encontrar pessoas que dominam essas tecnologias.

Agora, quando se trata de implementar um produto novo, são poucas as empresas que experimentam algo diferente (tanto tecnologia quanto no processo de desenvolvimento). Uma solução cabível ao meu ver seria a criação de pequenos laboratórios dentro das empresas, algo que não custaria horrores para os donos, mas que aumentaria bastante o potencial de inovação.
Posso estar sendo ingênuo, mas acredito que duas ou três pessoas responsáveis pela vanguarda tecnológica em uma empresa de 100 pessas, são capazes de mudar muita coisa.[/quote]

Esta seria a pior opcao, pois criaria uma equipe elitizada, tirando a chance do restante dos desenvolvedores evoluirem. Fora que isto criaria uma tremenda politicagem, ja que o poder de aprovar algo estaria na mao de poucos.

[quote=aleck][quote=dlt]Acho que um dos principais motivos disso é a suposta dificuldade das tecnologias novas se integrarem aos legados e a dificuldade de encontrar pessoas que dominam essas tecnologias.

Agora, quando se trata de implementar um produto novo, são poucas as empresas que experimentam algo diferente (tanto tecnologia quanto no processo de desenvolvimento). Uma solução cabível ao meu ver seria a criação de pequenos laboratórios dentro das empresas, algo que não custaria horrores para os donos, mas que aumentaria bastante o potencial de inovação.
Posso estar sendo ingênuo, mas acredito que duas ou três pessoas responsáveis pela vanguarda tecnológica em uma empresa de 100 pessas, são capazes de mudar muita coisa.[/quote]

Esta seria a pior opcao, pois criaria uma equipe elitizada, tirando a chance do restante dos desenvolvedores evoluirem. Fora que isto criaria uma tremenda politicagem, ja que o poder de aprovar algo estaria na mao de poucos.

[/quote]

Concordo. Acredito que um processo mais “mente aberta” seria mais interessante. Criar discussões dentro da empresa a respeito e divulgar estas discussões para que todos participem.
Coisas simples mesmo, como troca de e-mails ou mesmo reuniões abertas a todos. O que não pode é o “não. não conheço, não gosto e não quero ver, porque é diferente do modo como sei fazer”.

Aliás, este tipo de funcionário, o do “não conheço e não gosto” tem de ser demitido o mais rápido possível.

Não acho que hierarquia tira chanche de ninguém.

Qual o problema? Melhor do que criar um ambiente em que qualquer um pode decidir o que deve ser feito. Escolher o que a maioria quer? E quando aparecer algum hype, quem vai filtrar o que vale a pena e o que não vale? Tem que ter alguém com mais experiência e aptidão pra liderar o negócio.

Da sua empresa eu espero que sim, mas no geral se esse cara for demitido a maioria das empresas quebram.

A idéia das discussões é boa, mesmo mesmo assim não acho que uma equipe especializada pra pesquisa seria ruim. Por que não combinar os dois?

[quote=dlt][quote]

Da sua empresa eu espero que sim, mas no geral se esse cara for demitido a maioria das empresas quebram.

A idéia das discussões é boa, mesmo mesmo assim não acho que uma equipe especializada pra pesquisa seria ruim. Por que não combinar os dois?[/quote]

Acho que acaba combinando os dois no final das contas. Querendo ou não acaba se formando um grupinho daqueles que se empolgaram ou odiaram tecnologia/abordagem x. É quase inevitável.

E com relação a “mas no geral se esse cara for demitido a maioria das empresas quebram”, você tem razão. No caso que citei, acho que só se aplica mesmo em CITP (Condições Ideais de Temperatura e Pressão) :slight_smile:

Existem 3 opções:

“live with it”: reduza-se ao mundinho absorto e ultrapassado da caverna e seja feliz
“fight it” : lute contra isso. Mova os ceus e as montanhas. Faça a diferença. Demonstre como as novas formas são melhores.
“quit it” : reconheça que essa empresa é um traste e parta para outra. Porque alguem no seu perfeito juizo quereria trabalhar em uma empresa do tempo das cavernas em pleno seculo XXI ? ( não importa o tamanho da empresa. Quanto maiores são, mais alto é o tombo)

[quote=aleck][quote=dlt]Acho que um dos principais motivos disso é a suposta dificuldade das tecnologias novas se integrarem aos legados e a dificuldade de encontrar pessoas que dominam essas tecnologias.

Agora, quando se trata de implementar um produto novo, são poucas as empresas que experimentam algo diferente (tanto tecnologia quanto no processo de desenvolvimento). Uma solução cabível ao meu ver seria a criação de pequenos laboratórios dentro das empresas, algo que não custaria horrores para os donos, mas que aumentaria bastante o potencial de inovação.
Posso estar sendo ingênuo, mas acredito que duas ou três pessoas responsáveis pela vanguarda tecnológica em uma empresa de 100 pessas, são capazes de mudar muita coisa.[/quote]

Esta seria a pior opcao, pois criaria uma equipe elitizada, tirando a chance do restante dos desenvolvedores evoluirem. Fora que isto criaria uma tremenda politicagem, ja que o poder de aprovar algo estaria na mao de poucos.
[/quote]

Bem vindo à sociedade Humana. É , na prática, impossivel envolver todos simultaneamente.
É por isso que todos os orgãos de decisão em qualquer esfera da sociedade e em qualquer tempo da Historia são aristocracias ( o governo de alguns).
O máximo que dá para fazer é ir rodando o pessoal no grupo para que não sejam sempre os mesmos (algumas pessoas chamam a isso democracia).

Bom tema.

Também tenho observado isso aqui na empresa que trabalho e isso tem feito com que eu comece a pensar em certas coisas. Eu estou em um momento na minha carreira que não estou tão preocupado com salário, claro que é importante, mas nesse momento quero adquirir o máximo de conhecimento possível, fiz 1 ano de estágio e recentemente fui efetivado, essa é a hora de eu me solidificar como profissional, e aqui no caso isso caminha a passos lentos.

Trabalhamos com .NET e ainda usamos o VS2005 com o .Net 2.0. Linq? Entity Framework? NHibernate ? Aqui ninguém usa nada disso, olhe lá se ouviram falar, o pessoal não se atualiza muito e pelo que vejo a tendência é piorar. E isso pq trabalhamos com Net, imagine se fosse Java.

[quote=Daniel_MV]Bom tema.

Também tenho observado isso aqui na empresa que trabalho e isso tem feito com que eu comece a pensar em certas coisas. Eu estou em um momento na minha carreira que não estou tão preocupado com salário, claro que é importante, mas nesse momento quero adquirir o máximo de conhecimento possível, fiz 1 ano de estágio e recentemente fui efetivado, essa é a hora de eu me solidificar como profissional, e aqui no caso isso caminha a passos lentos.

Trabalhamos com .NET e ainda usamos o VS2005 com o .Net 2.0. Linq? Entity Framework? NHibernate ? Aqui ninguém usa nada disso, olhe lá se ouviram falar, o pessoal não se atualiza muito e pelo que vejo a tendência é piorar. E isso pq trabalhamos com Net, imagine se fosse Java.[/quote]

Se fosse Java, a coisa seria mais fácil, porque ao menos em teoria, o custo é menor.
O que rola muito com .net é o medo que as empresas possuem de “gastar dinheiro”. Este é o problema. Nova tecnologia para este tipo de empresa corresponde a “novo custo”, e não como investimento.

[quote=Daniel_MV]

Trabalhamos com .NET e ainda usamos o VS2005 com o .Net 2.0. Linq? Entity Framework? NHibernate ? Aqui ninguém usa nada disso, olhe lá se ouviram falar, o pessoal não se atualiza muito e pelo que vejo a tendência é piorar. E isso pq trabalhamos com Net, imagine se fosse Java.[/quote]

Incitando flame é :roll:

Aqui a gente trabalha com principalmente com Java, mas sempre que é iniciado o desenvolvimento de um novo produto são criados vários grupos para estudar várias tecnologias. Cada um faz um PoC (Proof of Concept), e depois em uma reunião com todos os desenvolvedores é decidido qual será adotada. No último sistema, foram estudados Flex / JSF / GWT (na época em que todos estavam ainda nascendo/beta/whatever), pra proporcionar uma interface mais rica para o usuário… acabamos com um sistema GWT com algumas telas em Flex.

[quote=sergiotaborda]

Bem vindo à sociedade Humana. É , na prática, impossivel envolver todos simultaneamente.
É por isso que todos os orgãos de decisão em qualquer esfera da sociedade e em qualquer tempo da Historia são aristocracias ( o governo de alguns).
O máximo que dá para fazer é ir rodando o pessoal no grupo para que não sejam sempre os mesmos (algumas pessoas chamam a isso democracia). [/quote]

Com certeza, mas existem maneiras de amenizar esta situação como você mesmo citou. Outra maneira é deixar um representante de cada equipe na empresa participar de reuniões semanais para resolver tais assuntos.

Porém sou totalmente contrário da criação de equipes que decidam pelo resto da empresa sem consulta-los.

Elitizar uma area tao importante tem como consequencia a evasao de novos talentos e uma sensacao de “medo” perante a elite.

Qual seria o proximo passo? Obrigar que todos os projetos sejam homologados por esta equipe Deus? Ja passei por isso, inclusive fiz parte de uma equipe assim e não recomendo, para boa saude da TI de uma empresa.