Como evitar contratar profissionais DBAs “Fake” e despreparados

Olá Pessoal,

Um dia desses estive envolvido na contratação de um DBA para um dos clientes onde presto serviços. Nesse cliente, havia uma área de administração de banco de dados e administração de dados sobre a mesma gerência. As atribuições básicas da célula de administração de banco de dados consistiam em garantir a disponibilidade do ambiente, zelar pelos backups, investigar problemas de desempenho, etc (infelizmente a segurança não era uma das atividades nesse cliente). A célula de administração de dados tinha como atribuições avaliar todos os modelos de dados e alterações propostas pela equipe de desenvolvimento e gerenciar algumas integrações entre banco de dados (Views, Linked Servers, etc). Nesse meio tempo, apareceu um projeto de Business Intelligence que ganhou alta prioridade e alguns profissionais de ambas as células foram alocados para esse projeto.

A área gostaria de contratar alguns DBAs plenos e sêniores para as áreas de administração de banco de dados e para auxiliar no projeto de Business Intelligence que acabou se tornando uma célula permanente da equipe de banco de dados. Como eu também estava atuando diretamente nessas duas células, foi atribuído a mim a responsabilidade de recrutar e selecionar candidatos para essa vaga. Na parte de recrutamento, a primeira coisa que fiz foi procurar locais onde encontraria esses DBAs mais facilmente como grupos de e-mail, comunidades no Orkut, sites de vagas como o APInfo, Curriculum, etc. Também aproveitei as oportunidades de ministrar cursos oficiais para divulgar as vagas. As estratégias de recrutamento haviam dado certo. Em pouco tempo, diversos currículos a avaliar. A próxima etapa era a seleção desses currículos e entrevistas com os profissionais.

Na parte de seleção apareceram muitos bons currículos. Havia profissionais com proficiência em Oracle (e nem tínhamos ORACLE no ambiente), profissionais com experiência em cluster (esse era um requisito interessante) bem como profissionais com certificações, além de larga experiência etc. Havia alguns profissionais com o perfil menos capacitado e que poderiam ser incluídos como plenos que também eram interessantes. Aqueles currículos de desenvolvedores querendo se tornar DBAs foram descartados (o cargo exigia certa experiência) e aqueles cujo havia ausência de experiência (mesmo com certificação) ficaram em segundo plano. Após a etapa de triagem de currículos, a quantidade de profissionais diminuiu consideravelmente. A próxima etapa então era a entrevista com esses profissionais.

Ao entrevistar alguns profissionais, era nítido que alguns desses não tinham exatamente a mesma experiência declarada em seus currículos e confesso duvidar se eles tinham as certificações que diziam ter (acho que se tivessem já estariam contratados em outro lugar). Alguns profissionais entrevistados tinham realmente o "marketing" e "arte de vender" bem aguçados (provavelmente mais conhecimento nessa área do que em banco de dados) e se eu tivesse um pouco menos de experiência com o SQL Server eles teriam me convencido de que eu estava entrevistando o candidato perfeito para vaga.

Se a contratação de um DBA júnior for equivocada, o prejuízo pode não ser significativo. Se o DBA júnior não possuir tudo o que é necessário, mas tiver disposição e boa vontade, pode ser fácil treiná-lo em em poucos meses ter a disposição o profissional necessário (inclusive algumas contratações de profissionais júniores é feita dessa forma). Já para DBAs pleno e sênior (principalmente) os impactos podem ser bem maiores. Contratar um DBA sênior para gerenciar um ambiente de missão crítica, garantir que os backups estão sendo feitos, que o SGBD está devidamente configurado e que os dados estão seguros é algo mais sério. Se a pessoa contratada não estiver apta a esse cargo, os riscos de algum incidente operacional são altos quanto os impactos que eles podem causar. Seria desastroso contratar um profissional sênior e descobrir que nos últimos meses ele sempre truncava o log logo após ter feito um backup full nas rotinas de manutenção (e isso aconteceu só que foi com um pleno).

Como estava sobre minha responsabilidade a indicação de candidatos em potencial, seria muito ruim se uma indicação minha resultasse em um profissional "fake". Para evitar que isso acontecesse, comecei a incluir certas etapas no processo seletivo de forma a eliminar profissionais "fake", ou seja, que tem um currículo invejável, se saem bem na entrevista, mas que tem pouco a contribuir efetivamente. A seguir algumas recomendações para "filtrar" esses profissionais despreparados.

Comente sobre uma funcionalidade que não existe no produto
Essa é uma arma poderosa para filtrar candidatos que contam vantagem ou mentem durante uma entrevista. Durante o processo seletivo de um dos candidatos, perguntei a ele se ele já havia utilizado uma implementação de índices do tipo bitmap e hash no SQL Server. Quando ele respondeu que sim eu tive que conter a vontade de rir. Para ter certeza de que se tratava de um blefe, perguntei o quanto mais ou menos tinha melhorado a performance com uso do índice bitmap no SQL Server 2005. A resposta pontual de 30% só foi a confirmação de que ele não tinha a menor idéia do que estava falando. Os profissionais "fake" sabem que se responderem sucessivos "não conheço" ou "nunca usei" serão descartados e esse acabou comentando essa "bobagem". Já foi um candidato a menos para as próximas etapas.

Comente algum absurdo e veja a reação do candidato
Um bom profissional vai perceber quando o entrevistador fala algum absurdo e dificilmente irá conter-se em fazer uma correção ou comentar que trabalha de outra forma. Existem formas e formas de se fazer uma crítica, mas quando bem feita, o entrevistador provavelmente considerará um ponto positivo a favor do candidato uma vez que demonstra conhecimento sobre o assunto. Já o profissional "fake" com algum conhecimento achará estranho mas talvez não tenha segurança para questionar. O profissional sem nenhum conhecimento nem perceberá. Em uma das entrevistas, comentei que tínhamos uma rotina de reindexação para deixar o fillfactor em 50%. Afinal era necessário balancear os INSERTS, UPDATEs e DELETEs com o SELECT e ficaria metade para cada. Alguns criticaram argumentando que era um valor muito baixo (e de fato é) enquanto outros disseram que era uma excelente idéia. Os que acharam uma excelente idéia foram eliminados (não gostaria de deixá-los propor uma política de reindexação para um ambiente de missão crítica). Atenção, essa técnica pode ser perigosa, pois, uma colocação muito absurda pode dar idéia de um ambiente muito banguçado e profissionais pouco capacitados e isso pode desmotivar alguns candidatos bons. Não diga nada muito absurdo até porque senão poderá ficar muito óbvio.

Pergunte os livros que ele leu recentemente sobre o assunto e o que ele gostou e não gostou em cada um deles
Como tenho o hábito de ler muitos livros de SQL Server, havia uma probabilidade enorme de que qualquer livro que o candidato falasse eu tivesse lido ou ao menos conhecesse. É interessante ver também que tipo de autores o candidato costuma referenciar (eu, por exemplo, jamais contrataria um DBA sênior que falasse que o melhor livro lido de SQL Server foi o do Ramalho). Os profissionais "Fake" costumam gaguejar nessa hora, pois, se ele chutar algum nome de um livro que não exista e haja uma conferência posterior, há grandes chances do título ser considerado um blefe. Ele pode até se equivocar, mas é claro que ele não falará um título só e dificilmente errará mais de um nome. Um profissional "Fake" também sabe que não é bom dizer que não leu nenhum livro recentemente. Um dos candidatos falou que gostou muito dos livros do Training Kit. Eu já havia lido e perguntei o que ele mais gostou e não gostou na coleção. Ele não soube responder com exatidão. Não posso considerar um blefe, mas se ele não respondesse ou falasse alguma "besteira" já perderia alguns pontos. Se o último livro for muito antigo a impressão também não é boa.

Pergunte se o entrevistado tem o hábito de participar de grupos de discussão
Se o candidato tiver esse hábito, basta anotar os grupos e pesquisar posteriormente. Se o candidato não tiver esse hábito (mas disser que tem), uma pesquisa posterior poderá informar que se trata de um blefe. Candidatos que não tenham o hábito de participar de fórums e grupos de discussão (mas querem dizer que tem) geralmente tem um branco enorme nessa hora. Dificilmente ele tentará "chutar" um comunidade e um nickname mas alguns tentam fazer isso. Os que tentaram logo foram desarmados quando perguntei o que ele tinha visto recentemente na dita comunidade que o chamou a atenção. Se o candidato tem esse hábito, esse pode ser um forte ponto a favor, pois, o entrevistador poderá conhecer mais sobre o candidato.

Entreviste o candidato a vaga com mais de uma pessoa
Normalmente profissionais "fake" tendem a querer impressionar, mas raramente tem uma memória para lembrar exatamente o que disseram. Se o candidato for entrevistado por mais de uma pessoa e posteriormente os entrevistadores conversarem e encontrarem grandes divergências na entrevista, é um forte sinal de que ele talvez não seja bem o que diz ser. Em contrapartida, essa técnica talvez não seja tão eficiente, pois, uma entrevista tem uma forte dose de subjetividade (pode ser interessante anotar os principais pontos ou gravar a entrevista se possível).

Submeta o entrevistado a uma prova prática
Essa é uma forma bem efetiva de eliminar profissionais "Fake". Normalmente aqueles profissionais que colocam boas experiências no currículo e ainda apresentam uma certificação tendem a impressionar e se destacar entre os demais. Hoje com a facilidade de braimdumps e testkings disponíveis, a certificação por si só, pode não ser suficiente para atestar a qualidade de um profissional sênior. Se o profissional certificado obteve a prova a partir de um "testking" da vida, ou seja, memorizou a prova para conseguir a certificação, uma prova prática é excelente para desbancá-lo, uma vez que ele não conhecerá a prova previamente e terá que se virar como puder. Dos candidatos que entrevistei, um era certificado (MCTS) e não conseguiu resolver um simples problema de fragmentação (ele não conhecia a sys.dm_db_index_physical_stats e nem o DBCC SHOWCONTIG). Outro MCDBA, quando perguntado sobre qual comando "zera" o Identity, disse que não lembrava o comando, mas que tinha um "script" para isso (bastava apenas usar o DBCC CHECKIDENT).

Submeta o entrevistado a uma prova teórica
Coloque uma prova teórica para que o candidato tenha que responder questões discursivas e sem nenhuma interação com o SGBD (assim ele não poderá consultar o Books OnLine). Esse tipo de questão normalmente testa o conhecimento e criatividade do candidato para resolver problemas. Alguns candidatos que colocaram chavões como "tem que avaliar o impacto", "é preciso traçar uma estratégia para atacar o problema" ou ainda "é necessário um plano de ação" foram descartados. Não há problema em usar os chavões. O problema é quando eles são utilizados de forma genérica e não fornecem a solução para o problema. Justificativas como "não há condições suficientes para avaliar o problema" também não são suficientes se não possuírem bons argumentos.

Teste o caráter do candidato
Um dos entrevistados tinha um compromisso às 12h. Quando chegou às 11:40 eu entreguei a prova prática. Como ele possuia um compromisso às 12h entendi perfeitamente que não poderia esperar que ele terminasse a prova teórica até 12h. Esse entrevistado já havia feito diversos outros testes e portanto dei um voto de confiança e pedi que ele me enviasse a prova por e-mail até às 14h. Para a minha surpresa, a prova chegou às 13h. Ao conferir as respostas, bastou fazer uma pesquisa no google e encontrar as respostas no Wikipedia. Como posso confiar um banco de dados a alguém que não honrou a confiança de uma simples prova teórica ? Mais um entrevistado descartado.

Sempre que conto essa história me perguntam se eu consegui indicar alguém para as vagas de DBAs desse cliente. De fato, ao colocar essas restrições, o número de candidatos final ficou bem reduzido e dado os benefícios oferecidos vs obrigações exigidas, não encontramos o profissional que gostaríamos no nível sênior. Consegui auxiliar a contratação de um profissional pleno que embora não tivesse um bom conhecimento técnico na época veio a se tornar um excelente profissional para o cliente posteriormente. Embora o conhecimento técnico não fosse muito forte, ele não violou nenhum dos testes que mencionei acima, ou seja, eu podia até não estar indicando alguém com o perfil desejado, mas sabia exatamente quem eu estava indicando. Houve a contratação de um profissional sênior mesmo violando algumas das regras. Infelizmente ele não atendeu as expectativas e em pouco tempo foi desligado. Gastou-se tempo, dinheiro, treinamento em vão.

Bem, fica aqui a lição. Não basta dizer que sabe, é preciso comprovar…
Embora tenha tocado apenas em aspectos técnicos vale a pena dizer também que conhecimento técnico não é tudo. Há outras características igualmente importantes.

[ ]s,

Gustavo

11 Respostas para “Como evitar contratar profissionais DBAs “Fake” e despreparados

  1. Realmente esse é um assunto complicado…Já estive nos dois lados e ambos são complicados…concordo com alguns pontos e não acho outros pontos realmente fundamentais…Por exemplo, eu não guardo na memória os nomes de livros que leio (todos é claro, os ultimos eu lembro…as vezes não…mas tudo bem…rrss)…atribuo isso a fato de não considerar isso relevante…MAS…já me fizeram essa pergunta antes…e depois disso o que eu fiz…?!?!…tenho anotado no meu Smartphone…pronto…pode perguntar que respondo…rrsss…claro que não com acesso direto na memória, vou precisar de uma leitura fisica…vai custar mais caro…mas respondo…rrsssQuando sou o entrevistador eu costumo fazer o seguinte na avaliação de Inglês…(não precisamos dizer que se é Sênior tem que ter Fluência ou quase Fluência nesse idioma)…se o candidato colocar no CV um conhecimento em Inglês Avançado ou superior…comece a entrevista em Português e alguns minutos fale ao candidato que a entrevista irá continuar em Inglês…Eu particularmente não gosto das divisões de Junior, Pleno e Sênior…pois essa divisão não é clara em termos de atividades, tempo de experiência e responsábilidades…mas é o que o mercado usa a tempos…algumas empresas já não usam mais esses termos…na verdade trocaram por outros…que no final fica quase que a mesma coisa…

  2. Gustavo, muito bom!Passei por isso a pedido do meu cliente, onde foi necessário entrevistar um candidato e até hoje estamos procurando essa pessoa e já estamos com alguns meses. Tivemos diversos candidatos, porém nenhum preenche a vaga ou tecnicamente ou profissionalmente falando. O ambiente trata-se de missão crítica mesmo, parar esse ambiente é algo que não está nos planos do cliente. Inclusive estamos evoluindo a plataforma para conseguirmos realizar operações ONLINE, sem grandes impactos ao ambiente. Então está cada dia mais difícil encontrar bons profissionais.Parabéns pelas dicas!Abraço,Rodrigo

  3. Oi Pessoal,Obrigado pelas sugestões, vou incrementar meus critérios de seleção. De fato o que escrevi jamais será unânime, pois, existe muita coisa a se considerar no momento de selecionar alguém (ainda não tinha pensado na questão do idioma). A idéia é só fomentar o assunto, mas cada organização irá seguir um caminho de seleção próprio. Não sei o que acontece, mas com tanta penetração do SQL Server no mercado sinto que continua difícil encontrar profissionais sênior…Fabiano, você me lembrou que eu ainda estou devendo o artigo sobre o hash index…Abs,

  4. Grande Gustavo!Muito bom o texto onde vc passa as experiências sobre recrutamento. Admiro quem o faz, pois é necessário muita paciência.Eu já estive dos dois lados e sei que muita coisa do vc escreveu de fato é verdade, pois contratar um DBA de qualquer nível é uma arte, o que mais encontramos por ai são desenvolvedores achando que são DBA´s porque sabem fazer select e join.Creio que além dos itens citados devem existir também o feeling do DBA que está entrevistando o candidato e bom senso. Solicitar informações sobre o ambiente por onde a pessoa passou e quais as contribuições do candidato para o ambiente, onde estudou são dados importantes para vc formar uma opnião prévia sobre a pessoa e levar a possíveis conhecidos em comum. O mercado é pequeno e sempre existe alguém que conhece o entrevistado. Já conheci DBA´s certificados com anos de experiência que não sabem o que faz a AWE quando habilitada em servidores de 32 bits, assim como conheci DBA´s com muita base teorica (certificação+academia+leitura pessoal) que responde a todas as perguntas com clareza e firmeza, mas que estavam em um ambiente pouco desafiador e que não exijia desse profissional 1/3 do conhecimento que ele acumulou durante a vida, e, que ao chegar em um ambiente de missão crítica sentiu-se perdido.Esses profissionais também precisão ser descobertos, pois na entrevista podem não sair-se tão bem, pois suas experiências são muito acadêmicas e infelizmente existe um abismo entre ler e colocar em produção. Para encontrarmos bons DBA´s precisamos de uma série de fatores para que esses profissionais se desenvolvam, fatores como auto-desenvolvimento e oportunidade de trabalhar em um ambiente que os permita implementar o que foi estudado, debater entre outros dba´s temas novos e obter novos conhecimentos todos os dias.Abraco

  5. Olá Wagner,Realmente os pontos que você colocou são bem válidos. A idéia era de fato fomentar uma discussão e pelo visto há vários pontos de vista igualmente interessantes (acho que vou aperfeiçoar as técnicas). Networking de fato significa muita coisa ainda mais em um mercado pequeno como o de DBAs. A questão da teoria e prática também é igualmente importante.Abs,

  6. Muito bom Gustavo, não aguartei o riso quando li: "Comente algum absurdo e veja a reação do candidato". Quanto aos comandos, acredito que DBCC Checident seja obrigação saber, no entanto, realmente ninguém sabe a sintaxe de todos de cabeça. Acho um ponto a se levar em conseidreação na hora deste trecho da entrevista.Abraços

  7. Oi Demétrio,Sim, você está certo. Eu não descartaria um bom candidato apenas porque ele esqueceu a sintaxe de um comando. Embora tenha comentado somente esse deslize, havia outros pontos nesse candidato que também foram negativos.Abs,

  8. Fala Gustavo,Achei muito interessante o seu artigo e, confesso que a maioria dos pontos mencionados sao filtros exelentes para a escolha do candidato ideal. Infelizmente o mercado de DBAs esta num cenario complicado em vista dos poucos profissionais capacitados. Eu mesmo senti dificuldades esses ultimos tempos ao selecionar alguns candidatos, pois muitos morrem ate mesmo no curriculo. Ja aqueles que mentem, conhecidos tambem como "DBAs Politicos" (hehe), sao fatalmente "desmascarados" na entrevista. Como voce demonstrou, basta uma simples conversa tecnica e o "peixe morre pela boca".[ ]s.

  9. ainda bem que nao mandei meu curriculo, hehehe …. cara sei como e essas coisas aqui na empresa a gente pega cada coisa e muito mais complicado contratar do que administrar qualquer que seja o ambiente.abs

  10. 4 anos depois e seus artigos continuam válidos e atuais. Parabéns, Mestre!

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s