Atualmente, existe algum teste de aptidão moderno e padronizado para engenharia de software? [fechadas]

10

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 .

Matt Cashatt
fonte
Boa pergunta, mas, infelizmente, parece não haver maneira de evitar a entrevista técnica incompetente. Os piores são aqueles realizados por recrutadores sem experiência em programação. Eu tive alguns que eram chocantemente ruins. Dei o que acreditava ser uma resposta adequada a algumas perguntas a serem respondidas, que estavam completamente erradas porque não correspondiam à definição enlatada que eles obtiveram de algum lugar.
precisa saber é o seguinte

Respostas:

7

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.

Peregrino
fonte
2
Site limpo! As perguntas são realmente bastante desafiadoras. Acabei resolvendo o problema pela metade e alguns testes extremos falharam nos testes de desempenho, mesmo que eles nunca saíssem e dissessem que meu código seria testado quanto ao desempenho.
Maple_shaft
3

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.

Caleb
fonte
Caleb - Agradeço seu comentário e tenho todas as balas que você mencionou. Além disso, o tipo de perguntas mencionadas no link que você forneceu ou problemas comuns na estrutura de dados como barra lateral de uma entrevista maior são bons. Pessoalmente, estou cansado de correr como uma galinha sem cabeça para vários "exames de tecnologia" diferentes para fazer perguntas que não são relevantes para o trabalho. E, novamente, estou apenas após um contrato de trabalho, portanto há muitas iterações desse processo de "triagem técnica". Simplesmente acredito que um teste padronizado pode evitar isso.
precisa saber é o seguinte
2

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.

Justin Cave
fonte
Graças a Justin Cave, seus pontos foram bem tomados - especialmente o último parágrafo com o qual concordo totalmente. O fato é que, nessas entrevistas "tecnológicas" que foram uma péssima experiência para mim, parece que o entrevistador sempre se enquadrava na categoria de não ter as habilidades sociais mencionadas, e era difícil entender as palavras que eles estavam dizendo ( e muito menos o que eles estavam perguntando).
precisa saber é o seguinte
Considero-me superior às habilidades que você mencionou, além de ser um programador sólido e ter provado isso ao longo dos anos, para que me pareça lamentável que esses guardiões do portão estejam entre mim e meu próximo contrato. Eu pensaria que uma abordagem padronizada compensaria esse problema.
precisa saber é o seguinte
@MatthewPatrickCashatt - Mas, ao mesmo tempo, você não gostaria de saber que terá problemas de comunicação com a equipe durante a entrevista antes de iniciar o trabalho? Se você não consegue entender o que eles estão perguntando, mesmo que a culpa seja completamente deles, você não terá sucesso trabalhando com eles.
Justin Caverna
Eu acho que estamos falando de dois contextos diferentes (minha culpa). Veja bem, estou lidando com várias agências de recrutamento que estão entre mim e, digamos, com um contrato de seis meses na Amazon ou Microsoft. Não tenho escolha a não ser passar por essas agências, mas não vou trabalhar com as pessoas empregadas por elas. Então, invariavelmente, encontro um rastreador empregado pela agência que tem uma pilha de livros em C #, Java, C ++ ou algoritmo em sua mesa, vamos a uma sala de conferências e eles passam a me fazer perguntas que evidenciam que não existem. faz parte da força de trabalho há um tempo.
precisa saber é o seguinte
@ MatthewPatrickCashatt - Bem, sem dúvida, existem entrevistadores pobres por aí. Mas, se forem incompetentes, é improvável que usem os resultados de um bom teste padronizado, mesmo que exista pelas mesmas razões que eles simplesmente não exigem um diploma e as certificações apropriadas hoje.
Justin Caverna
0

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/

Joel W.
fonte