Lincoln Borges

Desenvolvedor PHP Front-end e Back-end

MENU
Lincoln Borges

Desenvolvedor PHP Full Stack

Métodos

Métodos para achar um bom programador recém-formado para a sua empresa

Postado em 03 de Maio de 2017

Erros, falhas na validação, vulnerabilidades, e o péssimo desenvolvimento que dificulta a manutenção, são apenas alguns dos problemas que um programador mal capacitado pode trazer para a sua empresa. Por esta razão, é de suma importância saber filtrar os bons profissionais na hora da seleção.

Não é porque a pessoa é recém-formada que ela não consiga oferecer uma boa mão de obra com eficiência e qualidade. Sendo assim, não há a necessidade da empresa estar sempre buscando pessoas com experiência em carteira.

Talvez a maior dificuldade do RH da empresa seja em detectar um bom programador - uma vez que o profissional do setor de RH não entende os termos técnicos e as lógicas que podem ser aplicadas para desenvolver determinado software para respectivos propósitos - o que faz facilmente um programador mal capacitado se passar por qualificado e consequentemente conseguir a vaga.

O objetivo desse artigo é ajudar as empresas a selecionar o profissional que ela necessita. Visto que sou desenvolvedor de Sistemas Web e já ajudei a elaborar diversas seleções para outros desenvolvedores, possuo propriedade para falar sobre este assunto.

 

Trace a personalidade do profissional que melhor se encaixe na empresa

Como é a sua empresa? Liberal, onde as pessoas costumam ir de bermuda e chinelo e jogam sinuca no meio do expediente? Ou sua empresa é mais conservadora, onde as pessoas costumam ir alinhadas e padronizadas para o ambiente de trabalho?

Convenhamos que por mais que o profissional seja excelente, sua personalidade também deve coincidir com a da empresa. Não adianta ser um profissional mestre em PHP e ser sempre aquele “engraçadinho” de camiseta cavada, enquanto todos na empresa estão alinhados e seguem uma conduta mais conservadora.

Então esse se torna o primeiro método: identificar na entrevista o tipo de profissional que ele é, seja usando técnicas de análise para a linguagem não verbal; verificando suas redes sociais; ou até mesmo procurando referências desse candidato em outras empresas.

 

Não aplique prova de sintaxe

Sim, esse é um método muito eficaz para não perder o tempo da empresa!

Não adianta a empresa colocar o candidato sentado numa cadeira e dar um papel e uma caneta para ele escrever um código que lê um arquivo de texto. Isso é típico de prova de faculdade, onde o aluno decora as sintaxes e escreve o que decorou na prova.

Não se obtém um bom profissional usando esse método; no máximo se obterá um bom decorador de sintaxes.

O método para testar e identificar um bom programador é bem diferente disso!

 

Teste a capacidade de entregar uma solução

O que um programador faz em uma empresa de software? Escreve códigos?

Não! Ele entrega soluções.

Se o seu cliente precisar de um módulo onde suba um Excel no sistema e alimente determinadas informações, quem é que vai solucionar esse problema? O programador!

Se você realmente quer encontrar um bom profissional que irá girar as engrenagens da sua empresa, você deve testar a capacidade dele de fornecer a solução que você necessita.

 

Aplicando um teste para o candidato fornecer a solução

O primeiro passo é criar um ambiente teste. Se for uma busca por programador PHP, a empresa pode criar um espaço no seu servidor - seja local ou hospedagem em nuvem - com um banco de dados configurado, um software para edição de código que acesse o FTP desse ambiente de teste e um software para acessar e manipular o banco de dados.

Vamos simular um problema:

Um cliente precisa cadastrar os dados dos funcionários em um sistema web para controle interno, sendo os seguintes dados:

  • Nome
  • CPF
  • Celular
  • Foto

 

O sistema precisa listar, adicionar e editar os cadastros.

Entregue para o candidato o IP, o login, e a respectiva senha do banco de dados teste e do servidor de ambiente de teste; explique como acessar ele via browser (se tiver proxy ou não) e diga a seguinte mensagem:

“Por favor, me entregue uma solução, pois esse cliente não para de ligar aqui. Obrigado!”

 

Pronto, agora deixe que ele mostre sua capacidade de resolver problemas.

Você pode se questionar:

- Ok, mas ele vai pesquisar no Google

Não tem problema. Se o cliente paga você para desenvolver um sistema, e esse sistema foi codificado utilizando várias bibliotecas da comunidade open source, o cliente não te pagará mais?

 

-Ok, mas dependendo de onde ele copiar pode ter vulnerabilidades

Este é mais um motivo para deixar o candidato livre, pois saber pesquisar de maneira correta e entender o código pesquisado para que o mesmo não traga riscos para a empresa, é uma das principais atribuições que um programador deve ter. Então, se caso o candidato inserir as informações no banco de dados sem validação, baseado em uma pesquisa ruim, você pode automaticamente desqualifica- lo.

 

Não se preocupe, um programador experiente sabe se o que foi codificado está bom ou não, então, deixe o candidato livre para fazer as escolhas que ele achar necessário e avalie esse resultado final:

  • A solução foi entregue cumprindo todos os requisitos?
  • Os inputs foram validados para que o usuário deva obrigatoriamente preenchê-los?
  • Essa validação dos campos foi feita no back-end ou no front-end?
  • Para inserir a informação no banco de dados, foi feito um filtro para remover comandos de SQL Injection?
  • Na hora de cadastrar a foto do funcionário, a validação é feita somente para receber/gravar arquivos do tipo imagem?
  • Quanto tempo demorou para o candidato entregar essa solução?

 

Resumindo, você expôs um problema e agora precisa verificar se o candidato entregou a solução de forma correta, satisfazendo a necessidade do cliente e não gerando problemas para a empresa com gambiarras e amadorismos.

 

Acredite, esse teste não é tão complicado. Mesmo que o candidato seja um recém-formado sem experiência, se ele realmente tem interesse em trabalhar com a linguagem PHP (exemplo que usei anteriormente) ele com certeza já foi atrás para aprender a fazer um CRUD de maneira correta, estudando e implementando por conta própria, então não precisa se preocupar com o nível de dificuldade, o programador ideal para a sua empresa dominará tranquilamente.

 

É sempre bom ressaltar que todo esse processo deve ser acompanhado de profissionais adequados, sendo o entrevistador para detectar a personalidade, e o programador para criar o ambiente de teste e avaliar o resultado final.

Autor

Foto Lincoln Nathaniel Borges

Focado em desenvolvimento web, Lincoln é Bacharel em Ciência da Computação com pós graduação em segurança da informação. Especialista Full Stack com foco na linguagem PHP.

Amante de qualquer assunto que se relacione com tecnologia da informação ele produz conteúdo como artigos, tutoriais e notícias relacionadas ao mundo digital e programação.

Veja o currículo completo