Testeur pour une petite entreprise comme celle-ci

«Nous sommes une petite entreprise agroalimentaire» - c'est avec ces mots que je commence toujours l'histoire du lieu de travail actuel pour chaque candidat venu en entrevue. Ce n'est que par cette seule phrase qu'une personne peut immédiatement comprendre les avantages et les inconvénients auxquels elle sera confrontée si elle décide de lier son sort à nous.

La petite entreprise d'épicerie dans laquelle je travaille, bien sûr, n'a pas ses propres ressources humaines , mais le besoin de nouveau personnel se fait toujours sentir. Je suis juste un programmeur, ne revendiquant en aucun cas le titre de TeamLead ou PM (d'où ils viennent), voulant travailler avec des gens bons, adéquats et surtout professionnels (autant que possible dans le contexte déjà indiqué).

Heureusement, j'ai eu la chance de chercher un testeur, et non ... par exemple, un vendeur.

Comme vous l'avez probablement déjà compris, cet article explique comment trouver un testeur non ordinaire pour un programmeur ordinaire. À mon avis, l'expérience s'est avérée intéressante, mais d'abord.

L'article ne prétend nullement aux meilleures pratiques . Je voulais juste montrer mon approche en la matière.

Articles sur la recherche de testeurs c'est complet sur Habr


Oui, pas un peu. J'ai lu beaucoup d'entre eux, j'ai aussi appris quelque chose d'utile pour moi, mais il y a un MAIS significatif: ils sont tous écrits, sinon par des maîtres, alors au moins par des gens qui comprennent quelque chose en test ou en chasse + n'oubliez pas le budget.

Pourquoi exactement moi?


Simplement, je me suis avéré être le seul des programmeurs à s'intéresser à ce domaine de l' informatique (pour être de l'autre côté des barricades) et à m'éloigner légèrement des tâches professionnelles.

Je n'aime pas quand les RH font stupidement du publipostage de masse, lancent des offres basées sur des mots clés, sans aller plus loin, etc.

C'était peut-être ma plus grande motivation - aborder le processus d'embauche de manière aussi responsable et efficace (que possible), pour me prouver / me montrer: «eh bien, vous pouvez le faire normalement»

Prérequis


Étant donné que je ne l'ai pas testé avec des tests, les exigences ont été établies en conséquence:

  • état d'esprit analytique;
  • compréhension des tâches dans les tests de logiciels;
  • une expérience de testeur et une formation en informatique seront un avantage.

Dans la présentation proger (terre à terre), le testeur est celui qui recherche des bugs et peut décrire en détail le processus de leur reproduction.

Reprendre le processus d'examen


Et donc, le poste vacant est affiché sur un site bien connu, nous passons au processus de sélection des candidats. Ci-dessous, j'ai essayé de décrire les thèses spécifiquement ce que je payais, ou vice versa, je n'ai pas prêté attention au résumé:

  1. Faire un CV (présence de toutes sortes d'erreurs) - pourquoi ai-je besoin d'un testeur qui ne peut même pas tester son CV? (il semble être banal, mais il a été trouvé dans environ 20% des cas)
  2. Je ne me soucie absolument pas de l'âge, du sexe, de l'apparence, de l'état matrimonial, etc. (j'ai lu un tas d'histoires sur les «filles» des RH ).
  3. Avoir de l'expérience en tant que testeur - je pense que tout est clair: au moins une certaine expérience vaut mieux que rien.
  4. Disponibilité de l'éducation : la chose la plus importante est qu'il n'y a pas d'humanités, néanmoins, dans le processus de travail, vous devrez tirer des conclusions cohérentes et logiques et ne pas donner d'informations irrégulières. (ne prenez pas cet article au sérieux)
  5. Une lettre de motivation / bloc "A propos de moi" est généralement très mauvais ici: tout le monde écrit que c'est lui qui est le seul dont nous avons besoin, qu'il est le meilleur, que nous sommes la société de ses rêves, etc.

    Mais il y a, bien sûr, des exceptions aux règles : par exemple, lorsqu'un candidat indique qu'il a découvert un défaut particulier sur un site ou une application bien connu et, surtout, qu'il l'a enregistré , c'est certainement un plus dans le karma.
  6. Les compétences clés sont un point très intéressant, nous ne sommes pas intéressés par toutes ces balises QA : test fonctionnel, compilation de cas de test , test d' interface utilisateur , etc., bien qu'il soit préférable d'y assister, bien sûr.

    Les avantages séparés méritent des balises indiquant Selenium et d'autres outils d'automatisation des tests.

    Le plus important: nous prêtons attention aux compétences "non testeur" , par exemple: Python , Unity , PHP , Compass-3D , Sql , etc. (Je te dirai pourquoi plus tard)
  7. Cours / Certificats - un point très controversé / controversé: si le candidat n'a aucune expérience en tant que testeur ou sans formation informatique, la présence de cet article est la bienvenue.

    Habituellement, les candidats joignent des listes de contrôle qui ont servi de «travail de fin d'études» - vous devez admettre qu'il y a déjà quelque chose à voir.

Conversation personnelle


Et donc, sur la base des «règles / recommandations» ci-dessus, nous avons sélectionné les candidats qui nous intéressent, nous allons plus loin - la communication personnelle. Je n'ai pas spécifiquement indiqué le mot effrayant "interview" , parce que je ne vais pas jouer avec un candidat pour un mauvais / bon flic, etc. Je veux sincèrement communiquer spécifiquement, construire un dialogue afin que le processus se déroule de la manière la plus confortable et la plus intéressante pour toutes les parties. Pour les mêmes raisons, je ne pose pas de questions techniques spécifiques (enfin, nous n'oublions pas que je n'ai pas les connaissances nécessaires pour poser de telles questions).

Vous trouverez ci-dessous une liste de sujets / questions que j'aimerais aborder, découvrez les réponses:

  1. Lieu de travail précédent (le cas échéant) - tout est conforme à la norme:
    • qu'avez-vous fait exactement et comment l'avez-vous fait exactement?
    • pourquoi avez-vous décidé de changer?
    • quelle était la taille de l'équipe et quelle était l'équipe du projet?
    • Sur quels types de projets travailliez-vous? (à moins bien sûr que la NDA le permette)
    • Quelles méthodologies de gestion de projet avez-vous utilisées?
    • etc.
  2. Éducation - Personnellement , je ne me soucie pas de sa présence ou de son absence, est-ce terminé ou non, est-ce un point ou une correspondance, etc., je suis intéressé par la position de mon interlocuteur sur ce sujet, pourquoi il a pris telle ou telle décision pour lui-même sur cette question.
  3. Compétences clés (celles du CV du candidat) - à ce stade, vous pouvez apprendre beaucoup de choses intéressantes et utiles. Il est important de savoir exactement comment il a acquis ces compétences.

    Quelques exemples
    • Il y a un candidat dont la compétence clé est indiquée, par exemple: - Unité , lors d'une conversation, il s'avère qu'une personne essaie de s'engager dans le développement de jeux pendant son temps libre, c'est-à-dire il est immédiatement clair qu'il existe un intérêt pour le domaine informatique et que les connaissances / compétences humaines peuvent être jugées dignes d'être appliquées;
    • Un autre exemple: si une personne connaît Sql ou certains principes fondamentaux de Php , soit dit en passant, elle a compris au dernier lieu de travail, car il a traité avec une montagne de programmeurs, que vous avez dû suivre dans les deux et enfoncer dans une ligne de code spécifiquement inactive, alors vous pouvez le faire La conclusion est que la personne devant nous n'est pas maladroite;
    • Il y a aussi des exemples négatifs: le candidat dans les compétences spécifiées en Python - cela semble cool, mais au cours de la conversation, il s'avère qu'il ne connaît certainement pas PJ, il n'a lu aucun livre, il vient d'entendre que le petit gars est cool et c'est pourquoi il a souligné. ( WTF!? )
  4. Questions sur les bugs les plus intéressants / complexes que vous avez rencontrés - ici, la chose la plus importante est de faire attention aux émotions qui vous seront présentées: si à ce moment une personne a les yeux brûlants, une tempête d'émotions, etc. - Certainement un bon signe, ce qui signifie qu'une personne en a marre de son travail. Demandez également comment une personne a réussi à attraper ces bogues uniques et inoubliables.
  5. Test dans la vie réelle - dans ce cas, je pense, prof. la déformation est bonne. Une personne devrait être déformée des montants de logiciels avec lesquels elle se trouve partout. Demandez à l'enquêté une telle expérience, il est certain qu'il a quelque chose à vous dire (il était triste de constater que ~ 50% n'avaient pas une telle expérience).
  6. Intérêt personnel pour les projets / direction de l'entreprise (pas nécessaire, mais ce sera un plus).

    Quelques exemples à comprendre
    • Si vous développez un logiciel qui, par exemple, construit l'itinéraire de voyage optimal lors d'un voyage, ce serait bien pour la personne que vous cherchez à voyager et de rencontrer personnellement des problèmes que votre application résout;
    • Si vous développez des jeux, il est conseillé au testeur d'aimer jouer à des jeux, de garder une trace de toutes les dernières mises à jour, etc.
  7. Contre-questions - Je suis très heureux quand elles sont posées, surtout quand il y en a beaucoup. Il est clair que le candidat s'intéresse à son lieu de travail, son horaire de travail, sa pile technologique, son équipe, etc. Mais lorsque le candidat s'intéresse véritablement aux projets que vous menez, cela coûte cher! Vous ne savez pas à quel point c'est agréable d'entendre quand ils vous disent que c'était l'interview la plus intéressante / inhabituelle de leur vie.

Tâche de test


Qu'avez-vous pensé? Pas si simple!
Ne soyez pas trop paresseux pour faire une tâche de test! Soyez sûr d'entendre! Et bien sûr, cela ne devrait pas être sur un morceau de papier!

Surtout, sur le genou (dans ce cas, c'est seulement à portée de main), une application simple ( CRUD avec l'entité utilisateur) avec évidemment des jambages et aussi «TK» a été implémentée.

Des bancs dans la logique du programme:

  • manque de validation des données dans les champs de texte;
  • le contrôle du calendrier n'est en aucun cas limité lors de la saisie de la date de naissance de l'utilisateur (vous pouvez spécifier la date de naissance demain, etc.);
  • la date de création / sauvegarde de l'utilisateur est incorrectement indiquée (-1 jour à partir de la date correcte);
  • l'âge de l'utilisateur incorrectement calculé (sans utiliser d'arrondi);
  • lorsque l'application a été fermée, les données n'étaient pas enregistrées;
  • arrêt du programme après 5 minutes travail (à mon avis, le bug le plus drôle);
  • lors de la modification des données d'un utilisateur existant, le champ du deuxième prénom est toujours resté inchangé dans la liste de tous les utilisateurs;
  • le champ âge n'a pas été mis à jour lorsque la date de naissance a été modifiée (mise à jour uniquement lors du basculement entre les utilisateurs).

Je ne peux pas sur la mise en page:

  • la présence d'erreurs d'orthographe;
  • TextBlock des informations supplémentaires sur l'utilisateur déplacé lors de la saisie d'un grand ensemble de données;
  • manque de disposition adaptative (avec la taille de départ de la fenêtre, toutes les règles, avec un changement - tout se passe);
  • manque de localisation dans l'un des champs utilisateurs.

Des bancs sur la performance (que presque personne n'a trouvé):

  • l'ajout d'un enregistrement augmente de manière inappropriée la charge sur le processeur;
  • lors de la suppression d'un enregistrement, la mémoire est insuffisamment remplie.

Lors de l'émission d'une tâche de test, le style d'institution des bogues n'était pas spécifiquement indiqué - il était intéressant de regarder les différentes variantes, mais fondamentalement tout était le même (plaque / liste des cas de test ), parfois la présence de captures d'écran était satisfaisante.

En outre, les sujets ont été invités (si souhaité) à réfléchir à ce qui, à leur avis, était possible d'ajouter / modifier / supprimer dans la partie fonctionnelle du logiciel testé.

Bien sûr, il est conseillé que le test soit émis / fait avant votre conversation, afin que dans ce cas, il puisse être discuté.

Une observation intéressante: il y avait des candidats sans expérience de travail qui ont fait le test mieux que ceux qui avaient de l'expérience derrière eux.

Pourquoi exactement lui?


Avant de révéler toutes les cartes, je vais vous donner quelques statistiques: en 2 semaines de recherche, le poste a été consulté plus de 500 fois, plus de 50 candidats ont répondu, dont ~ 10 ont été sélectionnés pour une conversation personnelle et une tâche de test, ils recevraient la 3ème offre. De plus, j'ai été frappé par le fait qu'environ un tiers des candidats envisagés avaient une expérience de testeur dans de grandes entreprises, ce dont tout le monde entendait parler.

Mais le résultat a dépassé toutes mes attentes: une fille avec une apparence de mannequin (il n'y avait pas de photo dans le profil pour les filles RH «elle a immédiatement été vidé de ses paroles), avec une expérience économique et professionnelle supérieure incomplète en tant que testeur dans 2 entreprises (dont une très grande) .

Ils l'ont pris précisément pour une réflexion non standard: lors de l'exécution d'une tâche de test, il a «démonté» le prog, indiquant éventuellement tous les bogues spécialement cachés jusqu'à la ligne de code.

En conséquence, après plus de six mois de travail, nous n'avons plus d'âme. Un programmeur caché s'est réveillé dans notre testeur - et nous sommes tous prêts à l'aider.

Au lieu d'une conclusion


Enfin, je voudrais laisser quelques conseils évidents que, pour une raison quelconque, peu de gens suivent:

À l'employeur - sans faute, donnez votre avis, indiquez exactement ce que le demandeur n'avait pas (ne soyez pas paresseux!).

Pour le demandeur - ne pas «entrer dans l'informatique» pour des raisons d'argent; si vous n'avez pas d'expérience, remplissez votre main (ouvrez n'importe quelle application / site et testez plus loin).

Source: https://habr.com/ru/post/fr483510/


All Articles