Contexte
Je suis un ingénieur logiciel qui travaille et qui est en train de chercher un nouveau contrat pour la prochaine année. Dans ma recherche, je subis plusieurs entretiens techniques absurdes comme l'indique cette question populaire que j'ai posée plus tôt dans la journée .
Même si les questions qui m'étaient posées n'étaient pas toujours absurdes, je serais néanmoins fatigué d'y répondre plusieurs fois pour différentes opportunités de contrat.
Donc, cela m'a fait penser que le fait d'avoir un examen standardisé que les professionnels du logiciel pourraient passer fournirait un tableau de bord commun qui pourrait être référencé par les enquêteurs au lieu de questions d'entrevue techniques absurdes (c.-à-d. Nerd bizutage).
Question
Existe-t-il un test d'aptitude normalisé en génie logiciel (SEAT ??) à la disposition des professionnels?
S'il n'y a pas un tel examen sur le marché, quelles questions ou quels sujets devraient être abordés?
Une pensée supplémentaire
S'il vous plaît gardez à l'esprit, si vous suggérez une question ou un sujet, de vous concentrer sur des questions ou des sujets qui seraient pertinents pour les pratiques de développement contemporaines et les besoins réalistes de la main-d'œuvre, car ce serait le point d'un test d'aptitude standard. En d'autres termes, aucune question de traversée de clown .
la source
Réponses:
Jetez un oeil à la codilité .
Il s'agit d'un test de programmation en ligne qui prend en charge un certain nombre de langues différentes. Les questions sont bien définies et pas trop complexes bien qu'elles nécessitent une certaine réflexion, ainsi que de bonnes techniques de programmation (défensives) - non seulement vous devez écrire une solution de travail correcte, mais elles testeront des choses comme les conditions de bord et le débordement d'entier .
Je ne sais pas à quel point l'auto-certification est bien considérée, mais deux demandes d'emploi récentes ont utilisé ce site dans le cadre du processus de sélection.
la source
Les tests d'aptitude visent à mesurer la facilité innée d'une personne pour un sujet donné, et non pas ce que vous savez déjà sur un sujet. Je ne pense pas que ce soit ce que vous recherchez. Au lieu de cela, vous semblez vouloir un moyen standard de démontrer ce que vous savez afin de ne pas avoir à supporter les questions techniques lors d'une interview (ou au moins éviter les idiotes).
Bonne nouvelle: il existe de nombreuses façons de démontrer ce que vous savez. Les outils à votre disposition comprennent:
curriculum vitae: un curriculum vitae bien rédigé peut grandement contribuer à répondre aux questions sur ce que vous avez fait dans le passé et, par extension, sur ce que vous savez maintenant. Ne vous contentez pas d'énumérer où vous avez travaillé, dites ce que vous avez fait.
projets: Apportez quelque chose que vous avez créé avec vous et offrez une démo rapide. Montrez votre code et soyez prêt à l'expliquer. Cela vous permet de montrer votre capacité technique sur votre propre terrain. (Si c'est quelque chose auquel d'autres ont également contribué, soyez très clair sur ce que vous avez fait par rapport à ce que d'autres ont fait. Si vous le pouvez, il est préférable de montrer quelque chose qui vous appartient entièrement.)
rédaction: Si vous avez écrit des articles, un blog ou un livre ou un article de magazine, essayez de le présenter avant votre entretien afin que les enquêteurs aient la possibilité de le lire.
diplôme ou certification: ils sont à peu près aussi proches d'un examen standard que vous êtes susceptible de l'obtenir.
En bref, votre objectif est de fournir autant de preuves que possible que vous avez les connaissances que l'intervieweur recherche.
Mauvaise nouvelle: Quoi qu'il en soit, vous allez probablement toujours faire face à une ou deux questions techniques artificielles lorsque vous vous entretiendrez pour un emploi. Même si vous les impressionnez vraiment par votre expérience et que vous pouvez démontrer que vous êtes exactement le gars qu'ils recherchent, ils vous poseront encore quelques questions sur les structures de données ou autre chose. Il n'y a pas d'inconvénient pour l'entreprise - la personne qu'elle recherche devrait pouvoir répondre à ces questions dans son sommeil, et il y a apparemment beaucoup de gens qui ne le peuvent pas . De plus, certaines organisations ont des procédures d'embauche strictes qui les obligent à poser les mêmes questions à chaque candidat; les enquêteurs ne sont pas libres de décider que vous connaissez vos connaissances et ils peuvent simplement ignorer les questions techniques.
la source
Sans doute, c'est le rôle des certifications et des diplômes. Si vous voulez un test standardisé de la familiarité de quelqu'un avec un langage de programmation particulier, vous pouvez rechercher des personnes possédant une certification de langage particulière. Si vous voulez un test standardisé de connaissances générales en informatique, cherchez quelqu'un qui a un diplôme en informatique.
Le problème, bien sûr, est que nous savons tous que ces types de titres de compétences sont loin d'être parfaits. Il est trop facile pour les gens de s'entasser pour un examen de certification une fois que les sujets d'examen sont finalisés sans réellement apprendre quoi que ce soit ou être en mesure d'appliquer les connaissances. Une fraction assez importante de développeurs solides ne va pas se donner la peine de passer par le processus de certification. Et essayer d'être certifié sur tout ce qu'un employeur recherche (langages, processus et méthodologies de développement, etc.) serait assez onéreux. Les diplômes en informatique sont également faillibles - il y a des gens qui terminent leur diplôme sans jamais réussir à écrire du code utile et il y a des gens qui apprennent à écrire du bon code tout en se spécialisant dans autre chose.
Étant donné que les approches standardisées se sont révélées insuffisantes dans le monde réel, il est exceptionnellement peu probable qu'un examen standardisé réussisse mieux. Il finirait presque certainement par être joué comme les examens de certification existants. Les gens s'entassaient pour l'examen ou avaient accès aux questions des «décharges cérébrales». Les développeurs existants ne manqueraient pas tous de passer l'examen. Et les employeurs ne seraient pas disposés à s'appuyer fortement sur les résultats de l'examen. Ils voudront donc toujours poser des questions techniques lors d'une interview.
Au-delà de cela, cependant, un bon entretien technique (évidemment, il y a de mauvais enquêteurs et de mauvaises questions tout comme il y a de mauvais développeurs) devrait également viser à évaluer comment l'approche d'un candidat va s'intégrer à l'équipe actuelle. Un bon entretien doit évaluer les compétences en communication d'un candidat et ses compétences générales tout autant qu'il évalue ses compétences techniques. Je suis beaucoup plus intéressé par un candidat qui pose de bonnes questions pour clarifier les exigences et qui explique bien son processus de réflexion même s'il ne propose pas immédiatement le meilleur algorithme par rapport à quelqu'un qui propose un excellent algorithme mais ne peut pas expliquer sa réponse de manière efficace ou discuter efficacement des compromis.
la source
Le test d'aptitude de programmeur / analyste sans langue fournit une mesure objective du potentiel d'un candidat à un emploi pour comprendre et appliquer le raisonnement, la logique, les mathématiques informatiques et les règles de procédure. Le LPAT ne teste pas le candidat dans un langage informatique spécifique. Voir http://www.aprtestingservices.com/business/lpat/
la source