fundo
Eu sou um engenheiro de software que está trabalhando em busca de um novo contrato para o próximo ano. Em minha pesquisa, estou passando por várias entrevistas técnicas absurdas, como indicado por essa pergunta popular que fiz hoje cedo .
Mesmo que as perguntas que estavam sendo feitas nem sempre fossem absurdas, eu estaria cansado de respondê-las várias vezes para várias oportunidades de contrato.
Então, isso me fez pensar que fazer um exame padronizado que os profissionais de software que trabalham poderiam fornecer um cartão de pontuação comum que poderia ser referenciado pelos entrevistadores em vez de perguntas absurdas sobre entrevistas técnicas (por exemplo, trote de nerd).
Questão
Existe um teste de aptidão padronizado de engenharia de software (SEAT ??) disponível para os profissionais que trabalham?
Se não houver um exame por aí, que perguntas ou tópicos devem ser abordados?
Um pensamento adicional
Ao sugerir uma pergunta ou tópico, lembre-se de se concentrar em perguntas ou tópicos relevantes para as práticas contemporâneas de desenvolvimento e para as necessidades realistas da força de trabalho, pois isso seria o ponto de um teste de aptidão padrão. Em outras palavras, não há perguntas transversais de palhaço .
fonte
Respostas:
Dê uma olhada no Codility .
É um teste de programação on-line que suporta vários idiomas diferentes. As perguntas são bem definidas e não são muito complexas, embora exijam reflexão e boas técnicas de programação (defensivas) - não apenas é necessário escrever uma solução de trabalho correta, mas também testará coisas como condições de borda e excesso de números inteiros .
Não tenho ideia de quão bem considerada é a autocertificação, mas dois pedidos de emprego recentes usaram esse site como parte do processo de seleção.
fonte
Os testes de aptidão destinam-se a medir a facilidade inata de alguém para um determinado assunto, e não o quanto você já sabe sobre um assunto. Eu não acho que é isso que você está procurando. Em vez disso, você parece querer uma maneira padrão de demonstrar o que sabe para não precisar suportar as perguntas técnicas em uma entrevista (ou pelo menos evitar as bobagens).
Boas notícias: existem várias maneiras de demonstrar o que você sabe. As ferramentas à sua disposição incluem:
currículo: um currículo bem escrito pode ajudar bastante a responder perguntas sobre o que você fez no passado e, por extensão, o que você sabe agora. Não apenas liste onde você trabalhou, diga o que fez.
projetos: traga algo que você criou com você e ofereça uma demonstração rápida. Mostre seu código e esteja disposto a explicá-lo. Isso permite que você mostre sua capacidade técnica em seu próprio território. (Se é algo para o qual outras pessoas também contribuíram, seja muito claro sobre o que você fez versus o que outras pessoas fizeram. Se você puder, é melhor mostrar algo que é totalmente seu.)
redação: se você escreveu algum artigo, blog ou artigo de livro ou revista, tente introduzi-lo antes da entrevista para que os entrevistadores tenham a chance de lê-la.
grau ou certificação: são quase o mais próximo possível de um exame padrão.
Em suma, seu objetivo é fornecer o máximo de evidência possível de que você tem o conhecimento que o entrevistador está procurando.
Más notícias: não importa o que aconteça, você provavelmente sempre enfrentará uma ou duas questões técnicas ao entrevistar para um emprego. Mesmo se você realmente se impressionar com a sua experiência e puder demonstrar que é exatamente o cara que eles estão procurando, eles ainda farão algumas perguntas sobre estruturas de dados ou o que for. Não há desvantagem para a empresa - a pessoa que ela procura deve poder responder a essas perguntas enquanto dorme, e aparentemente há muitas pessoas que não conseguem . Além disso, algumas organizações têm procedimentos rígidos de contratação que exigem que façam as mesmas perguntas de todos os candidatos; os entrevistadores não são livres para decidir que você conhece suas coisas e eles podem simplesmente pular as perguntas técnicas.
fonte
Indiscutivelmente, esse é o papel das certificações e diplomas. Se você deseja um teste padronizado da familiaridade de alguém com uma linguagem de programação específica, procure pessoas que tenham uma certificação de linguagem específica. Se você deseja um teste padronizado do conhecimento geral em ciência da computação, procure alguém que tenha um diploma em ciência da computação.
O problema, é claro, é que todos sabemos que esse tipo de credencial está longe de ser perfeito. É muito fácil para as pessoas fazerem um exame de certificação depois que os tópicos do exame são finalizados sem realmente aprender nada ou poder aplicar o conhecimento. Uma fração bastante grande de desenvolvedores sólidos não se incomodará em passar pelo processo de certificação. E tentar ser certificado em tudo o que um empregador está procurando (linguagens, processos e metodologias de desenvolvimento etc.) seria bastante oneroso. Os diplomas de ciência da computação também são falíveis - há pessoas que concluem seu curso sem nunca conseguir aprender a escrever código útil e há pessoas que aprendem a escrever código ótimo enquanto se especializam em outra coisa.
Dado que as abordagens padronizadas demonstraram ser insuficientes no mundo real, é excepcionalmente improvável que um exame padronizado funcione melhor. Quase certamente acabaria sendo jogado exatamente como os exames de certificação existentes. As pessoas cursavam o exame ou tinham acesso às perguntas dos "despejos de cérebros". Os desenvolvedores existentes nem todos se esgotariam para fazer o exame. E os empregadores não estariam dispostos a confiar muito nos resultados dos exames. Então eles ainda vão querer fazer perguntas técnicas em uma entrevista.
Além disso, porém, uma boa entrevista técnica (obviamente, há entrevistadores ruins e perguntas ruins, assim como existem desenvolvedores ruins) também deve ser sobre como avaliar como a abordagem de um candidato se encaixará na equipe atual. Uma boa entrevista deve avaliar as habilidades de comunicação de um candidato e suas habilidades pessoais, tanto quanto avalia suas habilidades técnicas. Estou muito mais interessado em um candidato que faça boas perguntas para esclarecer os requisitos e que explique bem o processo de pensamento deles, mesmo que eles não apresentem imediatamente o melhor algoritmo sobre alguém que cria um ótimo algoritmo, mas não pode explique sua resposta efetivamente ou discuta as compensações efetivamente.
fonte
O Teste de Aptidão para Programadores / Analistas Sem Linguagem fornece uma medida objetiva do potencial de um candidato a emprego para entender e aplicar regras de raciocínio, lógica, matemática do computador e procedimentos. A LPAT não testa o candidato em um idioma específico do computador. Consulte http://www.aprtestingservices.com/business/lpat/
fonte