Caro zumbi da caverna uivante: será mesmo que todo ABAPer desempenha um papel de consultor? Você, que fica debugando eternamente a VA01, responda rápido: O que é um Consultor? Você presta consultoria? Porque “Consultor” e não “Programador”? Existe alguma diferença? Todo Consultor é um Programador? Todo Programador é um Consultor?
Essas questões podem parecer “simples” para algumas pessoas mais experientes, porém convido você, pequenino ser pútrido tchecoslováquio com interrogações na cabeça, a refletir comigo sobre essas questões. Vamos descobrir o que isso tudo quer dizer, e discutir sobre a sua posição perante o seu trabalho.
Afinal, pode ser que entre Consultor, Desenvolvedor, Programador, Engenheiro e Arquiteto, você enfim tenha a plena certeza de que não passa de um Pasteleiro.
Você já parou para pensar alguma vez no motivo pelo qual as pessoas que programam em ABAP são frequentemente chamados de “Consultores”, e os que programa em PHP, Java, Ruby e etc, são comumente intitulados “Programadores”? Para começar nossa reflexão, vamos dar uma olhada em uma definição simples da palavra “Consultor”:
Consultor é o profissional que, por seu saber, sua experiência, é procurado para dar ou fornecer consultas técnicas ou pareceres, a respeito de assuntos ou matéria dentro de sua especialidade.
E, obviamente, vamos olhar também para uma outra definição simples da palavra “Programador”:
Programador é o profissional que projeta, codifica, testa, depura e documenta programas de computador. Em outras palavras, é o sujeito que cria uma seqüência de instruções para que o computador as execute.
Você pode encontrar definições diferentes, mas o sentido é mais ou menos o mesmo: Consultor é aquele cara que consegue analisar a solução inteira para dar a melhor alternativa possível para resolver um determinado problema; Programador é parte daquela parcela mínima da população mundial que sabe escrever programas com instruções capazes de serem executadas por computadores, devidamente documentados e testados. Se você pensar um pouco, é fácil chegar a conclusão de que todo programador experiente é também um ótimo consultor, mesmo não usando tal título.
A definição de que ABAPers são “Consultores” e Rubistas são “Programadores” é uma mera prática de mercado, provavelmente definida para justificar as altas taxas cobradas nos primórdios do ERP alemão. Afinal, para cobrar R$200/h, o cara tinha que ser um CONSULTOR, não um “mero” programador.
Mas não é aí que eu quero chegar, comandante. Eu quero que você pare e reflita comigo sobre mais uma questão que envolve títulos, sua carreira, e a maneira como você encara seu trabalho. Apresento aqui o esquema clássico de um projeto SAP, e o papel de ABAPer no projeto:
Sim, eu sei que você já está careca de saber sobre isso. Mas me responda o seguinte: quantas vezes você realmente ajudou a definir a solução do projeto como um todo? Quantas vezes você foi envolvido num Blueprint? Quantas vezes você xingou o funcional e os usuários por terem enviado uma EF “tosca”, sendo que você mal consegue entender o real motivo daquela EF existir? Você consegue explicar em poucas palavras porque a empresa quis implantar o projeto em que você trabalha? Para que serve a tabela Z de 8934 campos que o seu programa de 10mil linhas de código alimenta? Porque a interface que você está criando precisa existir?
Perguntas difíceis… Em quase 7 anos trabalhando com ABAPers, poucas vezes eu posso dizer que os vi realmente envolvidos nas soluções do projeto. Acho um pouco irônico: muitos dizem que ser ABAPer é mais do que fazer só a parte técnica, mas aposto que foram poucas as vezes em que eles realmente tiveram peso na definição de como um projeto vai ser implantado. E tudo fica ainda mais irônico se você tentar associar cada uma das perguntas acima com as definições de Consultor e Programador do início do post (faça o teste).
Eu já disse antes, mas não canso de dizer: a impressão que tenho é a de que está tudo errado. No formato atual, os ABAPers ficam presos, enjaulados em um círculo vicioso de trabalho, que destrói sua criatividade e a sua real capacidade de prestar consultoria:
Pense: se essa visão arcaica não existisse, e todos (funcionais, abapers, key users) pudessem desenhar juntos as soluções dos projetos, quantas neosaldinas a menos os profissionais SAP precisariam tomar? Mas o mais triste disso tudo é saber que o mercado pouco irá fazer para mudar esse esquema de trabalho, afinal, milhares de consultorias minúsculas que brotam a cada semana são a prova de que essa área, arcaica em métodos de trabalho, ainda é bastante lucrativa.
O mercado não vai mudar, mas você pode mudar. Você quer ficar preso dentro do loop infinito das EFs bizarras, ou quer criar, fazer algo novo, diferente?
Reflita: Você é um Consultor ou um Programador? Mais importante: o que você pode mudar em seu trabalho para que suas opiniões tenham mais peso, e que o seu valor seja realmente utilizado, ao invés de ser descartado?
Para aqueles que lerem isso e pensarem “quanta baboseira, eu participo das soluções e ajudo nas definições dos projetos”, saibam que eu gostaria que todos pudessem pensar assim. Infelizmente, essa não é a realidade.
E, por fim, para aqueles que se contentam em ficar no loop, também não tem problema: cada um tem o direito de fazer o que quiser de sua vida. Isso não me impede de lamentar pelas zilhões de idéias boas que vocês vão deixar de dar, que trariam menos transtornos para muita gente e potencializariam nossa posição no mercado de uma forma real, e não ilusória.
Aeee! Este sim é meu post “digno” de início do ano aqui no site, mesmo que um pouco atrasado. Aproveito para agradecer mais um vez os acessos e incentivos que recebemos. Que 2013 seja um ano repleto de posts malucos, dicas interessantes e piada infames. Não se esqueça de comentar e deixar sua opinião sobre o post.
Abraços a todos os CONSULTORES ABAP que fazem SELECT dentro de LOOP! 😀
Pelas definicoes do dicionario, eu nao posso ser considerado programador, ja que nao documento P nenhuma :p
Pode ser considerado irresponsável então? hehehehhehehe 😈
Sim. Mas nao espalha.
Ótimo post ,
Bom já trabalho como ABAP a 5 anos,diretamente em uma “empresa cliente” digamos assim, já tive contato com diversos “consultores abap”, e o que vejo é realmente isso.
Acho que me encaixo como consultor, mesmo não sendo de consultoria, pois sempre participei de definições, juntamente com os usuário, até testes finais e propondo melhorias.
Vejo isso como um privilégio que tive ao trabalhar diretamente com usuários.
Realmente uma situação atípica. Eu, por exemplo, passei mais ou menos uns 3 anos preso “no loop”. 🙂
Ótimo post Mauricio.
Mesmo tendo pouco tempo de ABAP o que percebo é que o ABAP pode não participar de um Blueprint de projeto mas que durante o desenvolvimento das especificações do projeto a maioria atua como um consultor ajudando o próprio funcional a redefinir o processo para que seja feita de uma maneira melhor.
Acredito que seja em qualquer linguagem.
Programador senta e faz.
Consultor participa do projeto. Dá ideias.
Eu, enquanto não entendo o que vou fazer, não começo.
Preciso entender como funciona, pois as vezes posso dar uma ideia melhor de como fazer e ficar melhor pro usuário final.
Ótimo post.
Abraços…
Não sou consultor nem programador, eu sou o faxineiro..
Na verdade, você é um BOT comentador de blogs de ABAP.. E cadê o bannerzinho do abapdungeon?
Não comento em tudo, só quando tenho algo importante para o assunto em questão..
E a segunda parte, quando tiver mais posts=)
Brincadeiras à parte, eu acho que um ABAP precisa conhecer um minimo de processo antes de fazer essas coisas(ele precisa saber um minimo de processo de qualquer maneira… buuutt that’s another story). Eu só consigo opinar sinceramente na alteração de um programa quando eu entendo o que está acontecendo =P
Eu já digo que depende. Quando você está discutindo como a solução vai se conectar, do ponto de vista técnico (tabelas Z, se vão ter vários funções, se vão ser métodos, como os programas se conversam, etc, etc), você não precisa manjar tanto de processo. A capacidade de abstração é o que manda na hora de ajudar a definir como vai ser a estrutura técnica de um projeto.
E outra – em reuniões como essa, é padrão um “briefing” funcional ou até dos usuários, para que todo mundo entenda para que serve o projeto.
Particularmente, eu já tive minha época de achar que eu precisava entender tudo funcionalmente para conseguir desenvolver meus programas. Uma amiga minha até ficava falando que eu queria dar uma de “funcionalzinho” toda hora xD. Depois de um tempo, descobri que é legal entender, mas não precisa ser absolutamente tudo. Afinal, se eu entender tudo, pra que serve o funcional? 😛
Complicado esta situação, acho que depende também muito da empresa/equipe na qual você esta trabalhando. Quando você é um efetivado e tem algumas hierarquias a seguir a dificuldade de se tornar mais envolvido em um projeto é um pouco maior, mas como falei depende muito da empresa/equipe.
Mas eu acho super importante participar de todos os pontos do projeto no qual você vai “colocar a mão na massa”, pode ajudar em muita coisa e evitar muitas surpresas durante o cilclo de desenvolvimento.
Então, eu acho que sim, depende um pouco da equipe, mas isso não quer dizer que todo ABAP procura estar uma posição “chave”. Tem muita gente que prefere ficar de boa, preso no loop, ao invés de ir lá e botar a cara a tapa, para ajudar a criar a arquitetura do projeto.
Eu ficaria muito feliz se um post como esse fizesse ao menos uma pessoa refletir sobre seu trabalho, de modo que ela passasse a almejar e lutar por uma posição mais estratégica em sua equipe 🙂
Abraços!
É zumbizada eu nunca li um post mais verdade do que esse, nosso mundo SAP tem coisas que causa muita confusão para explicar aos nossos colegas “Programadores” de outros sistemas. Sempre o mesmo ciclo juntando o cliente e o funcional e deixando o cara técnico que vai executar a coisa de fora. Então depois o desenvolvedor tem que Psicografar o que o primeiro sujeito quis.
Mauricio +1 pro seu post acima …
Alguem na SCN teve ideia semelhante para um blog:
http://scn.sap.com/blogs/boneill/2013/03/03/whats-the-difference-between-a-consultant-and-a-contractor
Tem projeto que eu sou consultor e tem projeto que sou programador! hahahaha
Existem projetos que seu conhecimento como ABAP podem ajudar a definir processos, e tem projetos que voce so fica cuspindo linhas de codigos!
Lendo esse post, com menos de 1 ano de ABAP deu vontade de entrar no meio da conversa do funcional com o cliente para observar e acompanhar o processo de escolha da melhor solução para um ‘problema’ rs. Assim, poderia começar a entender um pouco dos processos, pois é algo que tive vontade de ‘estar por dentro’ desde que entrei. Posso estar enganada, mas acho que um ABAPER por mais que no início não tenha como OPINAR nas decisões, sempre que tiverem oportunidade, possa acompanhar tais reuniões. Com certeza esclareceria muitas questões que os ABAPERS “noobs” (como eu rs) possuem quanto a processos.
Bom dia Mauricio, parabéns pelo post!
Sou ABAP JR, estou trabalhando em uma fábrica de software e infelizmente o método de trabalho da fábrica dificulta muito o processo de programadores se tornarem consultores, pois nosso trabalho se restringe a codificar e documentar o que já foi definido e especificado pelo funcional juntamente com o usuário. Seria interessante se houvesse alguma melhoria na forma das fábricas de software trabalharem.
Abraços!
Oi Mauricio, o post é bem interessante e acredito que de fato reflete a realidade, pelo menos em uma grande parcela dos projetos.
Só não sei se concordo com “O mercado não vai mudar, mas você pode mudar.”. Acho que para isso acontecer vai depender da situação, do momento, do lugar…
O comentário da Amanda é um típico exemplo onde a abordagem de Consultor está mais longe de ser colocada em prática.
Você conhece muito bem como funciona uma fábrica de softwares, o ciclo Usuário -> Funcional -> ABAPer.
Em outras situações o ABAPer chega em um projeto onde definições/desenhos, cronogramas, prazos e esforços já foram definidos e recebe a especificação funcional para fazer o desenvolvimento, que, com alguma sorte, não vai estar atrasado.
Então nos diga, você que já conseguiu sair do loop, qual abordagem usaria para virar um CONSULTOR nesse cenário?
Valeu e abraço!
Olá Aparecido! Obrigado pelo comentário!
Primeiramente, concordo que a frase ficou um pouco “forçada”. O que eu quis dizer é que o mercado, em geral, não vai mudar à curto prazo (acho que nem a médio.. mas se o Coreano maluco lançar mísseis e começar um guerra, tudo pode mudar 😀 ). Só não vou alterar porque, apesar de forçada, acho que ainda serve de “tapa na cara” para alguém que esteja no limiar entre continuar fazendo o mesmo ou mudar, tentando se reinventar.
Sobre o comentário da Amanda, a experiência de uma fábrica de software é muito válida para a carreira de um desenvolvendor. Serve como uma ótima incubadora, porque o cara precisa ser muito bom tecnicamente para conseguir entender o requerimento, codificar e cumprir o script de testes. Na fábrica, o contato com funcionais costuma ser escasso, obrigando o ABAPer a dar tudo de si para entender um requerimento maluco.
Mas, ficar preso na fábrica com o papel de desenvolvedor vai fazer com que, fatalmente, o cara entre no LOOP. A mensagem principal do post é a de que é possível fazer coisas diferentes. Isso pode ser feito através de conversas com líderes e coordenadores do local onde você trabalha, em conversas com gerentes de consultorias, e com o estudo – afinal, quanto melhor você for, mais vão levar a sua palavra em consideração para decisões críticas sobre a arquitetura de sistemas.
E, finalmente, se a empresa onde você trabalha recusa-se a mudar, talvez quem tenha que mudar seja você. Nem todas as consultorias, gerentes, e líderes do mercado são vilões: tem muita gente disposta a inovar e, muitas vezes, só falta um empurrão (que pode ser a sua idéia!). Foi assim que eu consegui sair do LOOP, e eu não me arrependo de ter feito as mudanças que fiz. Não tem sido um caminho fácil: fiquei envolto em incertezas, dúvidas e angústia por muito tempo. Porém hoje posso falar tranquilamente que trabalho realmente com o que eu gosto, e com pessoas que entendem a importância do meu trabalho. Isso, não há dinheiro que pague 🙂
Mais uma vez, obrigado pelo comentário. O post realmente tinha ficado um pouco pobre na parte de conclusões. Espero ter esclarecido as dúvidas.
Grande abraço!
Opa Maurício, eu que agradeço seu breve retorno e por compartilhar do seu conhecimento.
Acho que com esta conclusão, o post ficou completo.
Valeu e abraço!
povo, … qnto ganha na média um ABAPer Jr, Pleno e Sênior? please, só pra ter uma ideia se vale a pena investir nessa linguagem. valewww
legal o post. isso aí povo, se não entender o problema, fica difícil construir uma solução. =)
Isso quem pode te responder é o linkedin:
https://docs.google.com/file/d/0B9l6eL0eSkHkM1JQRlZreVBxYzA/edit?pli=1
🙂
obrigado!! 🙂
Muito verdade esse post.
Eu posso me considerar consultor, pelo menos no projeto em que estou atualmente. Embora eu seja um zumbi novo, me deparei com uma situação que me forçou a ser um ‘concultor’.
Meu atual projeto possui um funcional que nada sabe de TI, e muito pouco de seu modulo, e o cliente pior ainda, nem o propio problema ele consegue definir.
Por isso fui forçado a estudar, e muito, tanto um pouco da area dos dois, e a maioria das soluções, ideias e identificação dos problemas, sou quem esta fazendo. ‘-‘
Quando vc trabalha em Fábrica de software, geralmente vc está atrelado somente a construir o programa de diversos módulos, com diversos tipos de perfumarias e peripécias que o funcional imagina. (Já vi programa voltar para a fábrica porque o funcional viu que a constante estava em letra maiúscula e ele queria minuscula) . Mas quando está em projeto, tem que ter noção de negócio, pelo menos de testes em alguns módulos para não virar refém de Funcional e Usuário.
Atualmente, sou praticamente um SD “Juninho/Pleno” de tanto mexer e visualizar configuração que funcional teimoso acha que é “Z”, e tem que ser feito por exit…ai vou lá, entro no oráculo mundial, no SDN ou pergunto pra meu vovô no além, e eis que a resposta é parâmetro de configuração. E quando é EXIT, não sabem qual, onde e como, se muito sabem qual tabela mexer…Hoje vejo com outros olhos o trabalho do funcional no caso MM/SD, no qual trabalho mais perto…e quando pedem pra eu debugar a Miro ou a Pricing, percebo como eles ganham bem sem saber tanto quanto dizem.
Maurício, parabéns pelo Post. Dei várias risadas aqui. Contém uma discussão bacana e com boa dose de humor. “Abraços a todos os CONSULTORES ABAP que fazem SELECT dentro de LOOP! :D” foi o melhor… rsrsrs
Ola, é minha primeira visita no site por sinal muito interessante. Estou ingressando na academia e gostaria que vc falasse um pouco sobre a fase em que suas incertezas, dúvidas e angústias eram mais tenebrosas por assim dizer. Se vc puder claro. Obrigado.
Muito apropriado seu post. Sempre busquei atuar como consultora também, mesmo que isso incomode muita gente. Porque infelizmente, existe preconceito com o ABAPeiro, como se para trabalhar nessa função o sujeito fosse “pau mandado” e não tivesse capacidade analítica. Então, sempre procurei me envolver nas soluções até porque para construir os elefantes brancos que alguns funcionais e usuários idealizam só sendo irresponsável! com um certo jeito de falar e usando argumentos bem embasados, consegui influenciar bastante e até fornecer soluções. Mas não pensem que é fácil, porque para muitos nós ABAPers não passamos de codificadores. Mas se prepare para ter que aguentar muita gente difícil nessa profissão, tanto na equipe de projeto da consultoria como na do cliente. Ser consultor é desgastante e por mais competente que você seja, poucos vão te estender a mão para agradecer por ter feito um bom trabalho. Sugestão: seja honesto consigo mesmo e faça o que está certo e nunca o que te mandam fazer. Parabéns pelo post!
Olá! Boa tarde!
Estou vendo pra entrar na academia e estou pesquisando bastante sobre a área.
Gostaria de saber se somente com a academia já terei uma boa formação para entrar no mercado ou se é necessário mais outros cursos?
Já tenho uma formação em “gestão de sistemas”
Grato pela força desde já