Este tópico está na minha fila de posts há meses, hora de sair algo. Eu vou me basear num e-mail que recebi de uma pessoa do GUJ (que só não vou falar o nme porque não pedi autorização):
Sobre o “polêmico” manjado tópico de que o java pode acabar.
Você postou o seguinte (na primeira página):
Software é programar. Se você que gerenciar uma equipe de desenvolvimento você tem que estudar matérias relacionadas à gestão de pessoas. Isso não é uma evolução do programador, um desenvolvedor de software é sempre um desenvolvedor de software.
Será que alguém que se forma em Ciência da Computação (como eu, se Deus quiser) não consegue o cargo de gerência de equipe? Eu vejo isso pelo meu tio… ele é formado em Engenharia Química e hoje é gerente de um empesa aqui, mas porquê? Porque ele conhece como as coisas funcionam… todo gerente que conheço ou que já ouvi falar aconteceu o mesmo… gerentes de supermercado geralmente sabem tudo o que se passa dentro do maldito mercado! Concorda? Logo, começa-se como programador, pra depois passar pra cima. Ou não? Você já foi programador? Estou em dúvida porque parece que o salário de um programdor (caso eu seja programdor pra vida inteira, que é algo que eu não quero) é baixo e não dê pra sustentar uma família, entende? Da maneira que eu digo faz parecer que eu não quero ser programador JAMAIS, mas eu quero… putz, amo programar, tenho um tesão gigantesco por programação… mas o problema é se vai me sustentar bem e minha família pro resto da vida, entende? Acredito que se um dia eu chegar a um cargo que não envolva programação eu ainda assim vou programar, pra me divertir mesmo.
E aí, o que você acha?
Este é um problema bem grande. Vamos começar sobre um problema que não está explícito no e-mail mas que existe: aquilo que alguns chamam de analista de sistemas.
Quando eu estava na faculdade pela primeira vez (ou seja: antes de largar ela pela rimeira vez) lembro de ter aula com um professor daqueles com anos de COBOL nas costas. Ele se lamentava sobre como o mercado confundia analistas e programadores e como estava surgindo a bizarrice do ‘progranalista’, alguém que combinava os dois papéis. Na comunidade em geral você vê este pensamento, eu tenho muitos conhecidos que querem ser ‘analistas’, o que para eles significa desenhar UML ou fluxogramas que são passados para os programadores.
Eu acho que já escrevi sobre isso aqui mas isso não é algo justificável. Eu nunca desenvolvi em COBOL ou uma destas plataformas mais antigas e não posso te dizer se se justificava há alguns anos mas não faz mais sentido, e há muito tempo. O papel do analista seria, teoricamente, converter um modelo abstrato (de negócios) em um modelo lógico, geralmente expresso de forma gráfica. O modelo lógico então passa a um modelo físico, que é a implementação.
Agora vamos analisar o caso de uma plataforma moderna de desenvolvimento como Java, .Net ou Ruby. Um modelo abstrato é composto por conceitos de negócio, geralmente estes conceitos não possuem uma estrutura que um computador entenda. O analista vai traduzir este conceito em lógica, provavelmente usando UML. Ora, UML é apenas uma notação gráfica para classes e objetos e sua linguagem favorita já trabalha com classes e objetos. A tradução entre um modelo lógico e o modelo físico é desnecessária: o modelo lógico já é o modelo físico. A diferença é que UML não executa, por mais que os evangelistas de MDA cismem do contrário.
A solução? Modele em código. Caso você precise erar diagramas basta você utilizar uma das dezenas de ferramentas de engenharia reversa. Modelando em código você tem algo executável, testável e que pode dar feedback ao seu usuário.
“Analista de sistemas” é algo que não existe. Pode ter existido um dia, não sei, mas não faz mais sentido há muitos anos. O modelo lógico é expresso em linguagens de altíssimo nível que modela muito bem o negócio: Java, Ruby, C#… Quem converte o lógico em físico é alguém que nem cobra muito por isso: o compilador.
Alguém colocar na sua assinatura de e-mail ou ter a carteira assinada (como eu já tive!) como “Analista Java” está se enganando e colaborando para a criação de papéis que só existem na burocracia das empresas e das pessoas.
Mas e o papel do analista de resolver problemas de negócio? Sinto informar mas se você fazia isso como analista você estava ou se enganando ou enganando seu cliente. É certo que muitos clientes precisam entender seus próprios negócios antes de criar um sistema mas isso não é papel de analista de sistemas, é papel de analista de negócios. Um analista deste tipo possui capacitação em campos bem diferentes, é completamente possível que um analista de negócios seja um desenvolvedor (vamos abolir o “analista de sistemas” a partir daqui) mas neste caso ele está assumindo duas especialidades. Um analista de negócios possui um perfil não-técnico e mais especializado em um mercado como bancos, marketing, telecomunicações e etc.
Mas e o gerente? Uma das piores coisas que podem fazer em uma empresa é promover um bom técnico à gerente (coordenador, o que for) apens porque ele está há mito tempo na casa. Querem estimular a pessoa? Transormem ele em um líder técnico, aumentem o salário do sujeito e o deixem em paz.
Gerência não é brincadeira. Não é porque alguém programa muito bem que vai ser um bom gerente. Se você é desenvolvedor mas sonha em dizer para a paquera no barzinho que é gerente de algo (nem que seja do McDonald’s) invista nisso. Aprenda sobre liderança, sobre mercado, plano de negócios, luxo de caixa, lean e todas as dezenas de disciplinas envolvidas. Vai levar um tempo.
Só não encare isso como uma evolução. Você está saindo da carreira de técnico, não evoluindo. Considerando que conseguir bons salários como técnico é raro pode ser uma boa escolha, mas nem sempre é. Se você é um bom técnico existem opções…
@Fernando
A questão não e qual tecnologia/metodologia utilizar e sm qual não utilizar. A falácia do ‘Analista de Sistemas’ prega por um cargo que não existe no desenvolvimento moderno.
Eu trabalhei e trabalho com bancos e eles não são exemplos para tecnooia no geral. Estamos falandod e empresas que não vão migrar seus sistemas de tecnologias com mai de 30 anos e o onto aqui é que as tecnloias ‘modernas’(10 anos ou mais) eliminaram a necessidade de transformação de modelos manual.
Mas respondendo: sm, é possível. Só não é feito prque a maioria dos bancos não quer evoluir tecnicamente.
Eu não falei que não era para um desenvolvedor virar gerente, alei apenas que não é ma evolução natural. Ele precisa se dedicar à nova profissão, que envolve estudo, e não papenas ficar vinte ans desenvlvendo e um beo dia ser promovido.
@Ricardo
Aqui e em outros países que já tive contato geralmente é diferente. A grande massa de desenvolvedores quer ir para o business também mas os bons geralmente vram especialistas.
@Leandro
Eu já trabalhei como arquiteto, programador, analista e muitas variações destes. No final eu fazia a mesma coisa em todos os lugares. Na Globo.com eu tinha posto de coordenação técnica, o que me obrigou a estudar com mais profundidade dversos ontos sobre gerência de pessoas e desenvolviment.
@Carlos Alexandre
O texto fala sobre como fazer isso. Anasitas de Negócios para modelagem de negócios e desenvolvedores paramodelagemd e sistemas.
Sempre que trabalhei em empresas pequenas desenvolvi o papel de Desenvolvedor por completo. Quando trabalhei em empresas grandes esse papel de analista quase sempre era presente, inclusive eu tive essa “oportunidade” e geralmente nem tocava em código. Passado um tempo, percebi que isso não tinha nada a ver comigo.
Tenho falado isso a anos! Especialização e Divisão do Trabalho em Software não funciona! Falei a respeito disso nos meus dois últimos artigos. É uma má interpretação do RUP. Bem, fazer o que, o mercado no geral é burro!
(ouviu a última da UML-BR? Tinha um cara preenchendo um “Documento de Mapeamento Objeto-Relacional”)
Continuamos a pregar no deserto…
[...] Phillip Calçado escreveu recentemente um artigo interessante sobre a carreira do programador nas grandes empresas. Ele fala de como nós programadores somos obrigados a assumir cargos de gerência de pessoas ao [...]
[...] melhorar as coisas que isso precisa ser verdade até o fim dele. Após a equipe (desenvolvedores, analistas de negócios e gerente de projetos) percebemos que alguns itens realmente estavam atrapalhando o andamento do [...]
[...] ser bem mais que simples validadores. O Shoes já tinha falado sobre modelagem em código em seu post sobre Analista de Sistemas. Vejam [...]
[...] vai causar nada alem de transtornos leves. Não posso mais chamar a pessoa de Analista de Sistemas (que aliás é algo que nem existe mais hoje em dia) mas podemos continuar tudo como sempre [...]
[...] desenvolvedores. O que chega para nós já é a “solução de todos os problemas” que o analista de sistemas criou enquanto conversava com o cliente. Na verdade, a nossa linguagem ubíqua não é feita entre [...]
Nossa cara, faz quanto tempo que mandei esse e-mail pra você?
E agradeço por ter respondido só agora, porque depois desse tanto tempo, parece que expandi os horizontes.
O certo é que o futuro é imprevisível e ninguém controla ele. Então é estudar tudo o que der e esperaro melhor.
Abraço.
dedejava.
Bem caros Senhores!!!
Penso que não aspiro ao comando de Analista de Sistemas, porém devo receber como tal. O que pensam à respeito disso???
JÚNIOR.(02/06/08)
Olá, bom dia!
Assumi uma Gerência de RH numa empresa de T.I recentemente.
O meu conhecimento acaba sendo muito superficial em relação a todos esses assuntos citados.
Acabei chegando a esse Blog, pois estou me interando em relação à alguns assuntos, e depois de tanta informação (muito produtiva), acabei confundindo um pouco as coisas.
Será que poderiam me ajudar a entender um pouco mais do mundode T.I?
Minha Dúvida: Qual a diferença entre esses cargos? Existe alguma semelhança entre algum deles?
- Engenheiro de Software/ Analista de Sistemas/ Arquiteto de Informação/ Desenvolvedor
Obrigada
[...] são afetadas por mudanças no negocio e vice-versa. O grande problema desta métrica é que transformações de modelo não são mais tão drásticas há algumas décadas. Ao utilizar qualquer tecnologia relativamente comum (Java, Ruby, .Net, Python, JavaScript…) [...]
[...] Analista de Sistemas não é analista de negócios. Se você não sabe o que é um analista de negócios eu recomendo que você mande um e-mail pro Paulo Vasconcellos perguntando. [...]
O que posso dizer é que não podemos desrespeitar uma classe que tanto bem fez a humanidade. Temos que levar em consideração que no mundo tudo muda e você deve estar preparado para as mudanças. Digo que todo analista de sistema será o analista de negócios de hoje. Apenas as ferramentas mudaram. então imagine se daqui a alguns anos algúem chega para você e diz…!!!!!! analista de negócio é coisa do passado a onda agora é ser analista expert de negócios. O grande lance é entender que cada vez mais a área de computação exige de cada profissional uma dedicação maior. Hoje as empresas querem que o individuo saiba programar, analisar, projetar em UML. Ou seja estamos nos transformandos em 5 em 1. Isso não é muito bom. Porque? imagine você com 50 anos ter que passar por uma faculdade a cada 3 anos. Desculpe a força de expressão, mais fudel. Será que você é remunerado bem o suficiente para manter todos os conhecimentos necessários no tempo atual. Curso de java 3.000, C# 1500, adaptação de banco de dados oracle, sql server, etc…. Pow, vamos ver até que idade você consegue acompanhar as novas tecnologias e tendências.
Eduardo,
Não entendi onde o post desrespeitou alguém. De qualquer forma, como o texto diz, o analista de sistemas não necessariamente vai ser analista de negócio. O ponto é que o cargo dele, que fica entre tecnologia e negócios, não é justificável mais. Se o profissional que exercia este cargo vai para negócios ou tecnologia depende do perfil de cada um.
Sobre a parte de “5 em 1″, ela não faz muito sentido para mim. Primeiro orque, como o texto diz, analisar, projetar e implementar são coisas extremamente ligadas, as duas últimas são feitas ao mesmo tempo hoje em dia. Depois porque os princípios básicos sobre software não mudam, mudam ferramentas. Se você acompanha qualquer publicação sobre administração de empresas vai perceber que é assim também, todo mês aparecem novos gurus e novas metodologias de gestão. Se você é um bom desenvolvedor e sabe uma linguagem como Java não precisa de um curso ou faculdade para aprender uma ferramenta similar como C# ou Ruby. O problema é que a maioria dos profissionais sequer aprende os conceitos básicos.
No mais, a última parte do seu comentário me soou como: “quando você cansa de aprender coisas noas o tempo todo vira analista”. Realmente não entendi. As técnicas para análise mudam frequentemente, evoluem e morrem. Acho que o dia em que se cansa de acompanhar evolução é melhor pedir aposentadoria.
[]s
[...] post sobre Análise de Sistemas já teve 65 comentários (incluindo respostas, é claro). Acho que já descartei uns 20 [...]
Ótimo post. Excelente explicação sobre oque pregamos ser “evolução natural da espécie”.
Apesar de compartilhar com o seu ponto de vista (uso essa idéia na minha carreira, já que estou estudando liderança para ser líder de equipes) o analista de sistemas ainda é necessário em empresas que consideram que desenvolver software é que nem fabricar carros e se auto-denominam “Fábrica de Softwares” (a maioria até onde eu saiba). Quando as empresas entederem que software é algo empírico e que deve ser planejado e tratado como tal, o analista de sistemas não será um cargo e será apenas mais um papel que o programador irá exercer implicitamente dentro de alguma das dezenas de iterações de uma determinada história.
[...] relação ao negócio da aplicação, ótimo, mesmo dentro de um processo em cascata ainda assim o analista de sistemas (negócios?) estava próximo da equipe de desenvolvedores, fui até ele conversar sobre o que não [...]
Será que consigo uma resposta para minha indagação?
Sou formado pela FATEC em Análise e Desenvolvimento de Sistemas.
Até que idade o mercado absorve este profissional??
Abraços
RBordignon
Redorno,
Creio que pelo texto fica bem claro que a posição aqui é de que este profissional sequer deveria existir.
[]s
[...] irritei bastante gente da última vez que falei sobre analistas de sistemas. Até hoje, 10 meses depois, ainda tem gente que me manda e-mail [...]
[...] muito do modelo em cascata, o que todos sabemos é que as fases iniciais sempre são feitas pelos “analistas de sistemas” da empresa, na maior moleza gastando mais da metade do tempo e verba do projeto sem gerar nada de [...]
estou na faculadade do mesmo,estou quase terminando mais até hoje nao entendi nada,ainda mais que é tele aula uma vez na semana
as vezes quero morrer ,sera que é só eu que nao entendo
[...] uma passeada pelos sites de emprego de informática, é fácil ver vagas para analista de sistemas / programador / desenvolvedor júnior, pleno e sênior, etc. Acontece que a maioria das pessoas [...]
[...] uma passeada pelos sites de emprego de informática, é fácil ver vagas para analista de sistemas / programador / desenvolvedor júnior, pleno e sênior, etc. Acontece que a maioria das pessoas [...]
[...] uma passeada pelos sites de emprego de informática, é fácil ver vagas para analista de sistemas / programador / desenvolvedor júnior, pleno e sênior, etc. Acontece que a maioria das pessoas [...]