Comment quitter la science pour l'informatique et devenir testeur : l'histoire d'une carrière

Comment quitter la science pour l'informatique et devenir testeur : l'histoire d'une carrière

Aujourd'hui, nous félicitons pour cette fête les personnes qui veillent chaque jour à ce qu'il y ait un peu plus d'ordre dans le monde - les testeurs. Ce jour-là, GeekUniversity du groupe Mail.ru ouvre la faculté pour ceux qui veulent rejoindre les rangs des combattants contre l’entropie de l’Univers. Le programme de cours est structuré de manière à ce que le métier de « Testeur de logiciels » puisse être maîtrisé à partir de zéro, même si vous avez auparavant travaillé dans un domaine complètement différent.

Nous publions également l'histoire de Maria Lupandina, étudiante à GeekBrains (@mahatimas). Maria est candidate en sciences techniques, avec spécialisation en acoustique. Elle travaille actuellement comme testeur de logiciels pour une grande société d'ingénierie qui développe des logiciels pour les établissements médicaux.

Dans mon article, je veux montrer la possibilité d'un changement de carrière assez radical. Avant de devenir testeur, je n'avais pas beaucoup de contacts avec l'informatique, hormis les moments qui étaient nécessaires à mon précédent métier. Mais sous la pression d'un certain nombre de facteurs, décrits en détail ci-dessous, j'ai décidé de quitter le domaine scientifique pour me consacrer à l'informatique pure. Tout s'est bien passé et je peux maintenant partager mon expérience.

Comment tout a commencé : technologie et science

Après avoir obtenu un diplôme universitaire en génie biomédical, j'ai trouvé un emploi dans une entreprise industrielle en tant qu'ingénieur de laboratoire. C’est un travail assez intéressant ; mes responsabilités incluaient la mesure et le suivi des paramètres des produits de l’entreprise, ainsi que des matières premières à différentes étapes de production.

Je voulais devenir un bon spécialiste, je me suis donc progressivement immergé dans les technologies de production et maîtrisé les spécialités connexes. Par exemple, lorsque le besoin s'est fait sentir, j'ai étudié la méthodologie permettant de réaliser des analyses chimiques pour contrôler la qualité de l'eau, en utilisant comme sources les normes gouvernementales et les réglementations de l'industrie. Plus tard, j'ai enseigné cette technique à d'autres laborantins.

Parallèlement, je préparais ma thèse de doctorat que j’ai soutenue avec succès. Étant déjà candidat, j'ai réussi à recevoir une importante subvention de la Fondation russe pour la recherche fondamentale (RFBR). Dans le même temps, j'ai été invité à l'université en tant que professeur pour un salaire de 0,3. J'ai effectué des travaux grâce à une subvention, développé des programmes et du matériel méthodologique dans des disciplines pour l'université, publié des articles scientifiques, donné des conférences, mené des pratiques, développé des quiz et des tests pour le système d'éducation en ligne. J'ai vraiment aimé enseigner, mais malheureusement, le contrat a pris fin, tout comme ma carrière d'employée universitaire.

Pourquoi? D’une part, je souhaitais poursuivre mon parcours scientifique, en devenant, par exemple, professeur assistant. Le problème est que le contrat était à durée déterminée et qu'il n'a pas été possible de prendre pied à l'université - malheureusement, aucun nouveau contrat ne leur a été proposé.

En même temps, j’ai quitté l’entreprise parce que j’ai décidé qu’il fallait changer quelque chose : je ne voulais pas vraiment passer toute ma vie à travailler comme ingénieur de laboratoire. Je n'avais tout simplement nulle part où évoluer professionnellement, il n'y avait aucune opportunité de me développer. L'entreprise est petite, il n'était donc pas nécessaire de parler d'évolution de carrière. Au manque de perspectives de carrière s'ajoutent des salaires bas, un emplacement peu pratique de l'entreprise elle-même et un risque accru d'accidents de la production. On se retrouve avec toute une série de problèmes qu'il a fallu tout simplement couper, comme un nœud gordien, c'est-à-dire arrêter.

Après mon licenciement, je suis passé au pain gratuit. J'ai donc développé des projets sur mesure en ingénierie radio, en ingénierie électrique et en acoustique. Elle a notamment conçu des antennes micro-ondes paraboliques et développé une chambre acoustique anéchoïque pour étudier les paramètres des microphones. Il y avait beaucoup de commandes, mais je voulais quand même quelque chose de différent. À un moment donné, j’ai voulu m’essayer au métier de programmeur.

Nouvelles études et freelancing

D'une manière ou d'une autre, une publicité pour les cours GeekBrains a attiré mon attention et j'ai décidé de l'essayer. Tout d’abord, j’ai suivi le cours « Fondamentaux de la programmation ». J'en voulais plus, j'ai donc suivi également les cours « Développement Web », et ce n'était qu'un début : je maîtrisais HTML/CSS, HTML5/CSS3, JavaScript, puis j'ai commencé à apprendre Java dans le «Programmeur Java" Étudier a été un grand défi pour mes points forts - non pas parce que le cours en lui-même était difficile, mais parce que je devais souvent étudier avec un enfant dans les bras.

Pourquoi Java ? J'ai lu et entendu à plusieurs reprises qu'il s'agit d'un langage universel qui peut être utilisé, par exemple, dans le développement Web. De plus, j'ai lu que connaissant Java, vous pouvez passer à n'importe quel autre langage si le besoin s'en fait sentir. Cela s’est avéré vrai : j’ai écrit le code en C++, et cela a fonctionné, même si je n’ai pas approfondi les bases de la syntaxe. Tout s'est bien passé avec Python, j'y ai écrit un petit analyseur de page Web.

Comment quitter la science pour l'informatique et devenir testeur : l'histoire d'une carrière
Parfois, je devais travailler comme ça : mettre l'enfant dans un sac à dos ergonomique, lui donner un jouet et espérer que cela suffirait pour terminer la prochaine commande.

Dès que j'ai eu une certaine connaissance et expérience en programmation, j'ai commencé à exécuter des commandes en tant qu'indépendant. J'ai donc écrit une application pour la comptabilité des finances personnelles, un éditeur de texte personnalisé. Quant à l'éditeur, il est simple, il possède quelques fonctions de base pour formater le texte, mais il fait le travail. De plus, j'ai résolu des problèmes de traitement de texte et j'ai participé à la mise en page de pages Web.

Je tiens à souligner que l'étude de la programmation a élargi mes capacités et mes horizons en général : je peux non seulement écrire des programmes personnalisés, mais aussi réaliser des projets pour moi-même. Par exemple, j'ai écrit un programme petit mais utile qui vous permet de savoir si quelqu'un gâche vos articles Wikipédia. Le programme analyse la page de l'article, trouve la date de la dernière modification et si la date ne correspond pas à la date à laquelle vous avez modifié votre article pour la dernière fois, vous recevez une notification. J'ai également écrit un programme pour calculer automatiquement le coût d'un produit aussi spécifique que la main-d'œuvre. L'interface graphique du programme est écrite à l'aide de la bibliothèque JavaFX. Bien sûr, j'ai utilisé le manuel, mais j'ai développé l'algorithme moi-même, et les principes de la POO et le modèle de conception mvc ont été utilisés pour l'implémenter.

Travailler en freelance, c'est bien, mais un bureau, c'est mieux

En général, j'ai aimé être indépendant, car on peut gagner de l'argent sans quitter la maison. Mais le problème ici, c'est le nombre de commandes. S'il y en a beaucoup, tout va bien avec l'argent, mais il y a des projets urgents avec lesquels il a fallu s'asseoir tard dans la nuit en mode urgence. S’il y a peu de clients, alors vous ressentez le besoin d’argent. Les principaux inconvénients du travail indépendant sont des horaires irréguliers et des niveaux de revenus incohérents. Bien entendu, tout cela a affecté la qualité de vie et l’état psychologique général.

Il est désormais admis que l'emploi officiel est ce qui contribuera à éliminer ces problèmes. J'ai commencé à chercher des postes vacants sur des sites Web spécialisés, j'ai élaboré un bon CV (pour lequel je remercie mes professeurs - je les ai souvent consultés sur ce qui devrait être inclus dans le CV et ce qu'il est préférable de mentionner dans une communication personnelle avec un employeur potentiel). Au cours de la recherche, j'ai effectué des tâches de test, dont certaines étaient assez difficiles. J'ai ajouté les résultats à mon portfolio, qui est finalement devenu assez volumineux.

En conséquence, j'ai réussi à obtenir un emploi de testeur dans une entreprise qui développe des systèmes d'information médicale pour automatiser le flux de documents dans les établissements médicaux. Une formation supérieure en génie biomédical, ainsi que des connaissances et une expérience en développement de logiciels, m'ont aidé à trouver un emploi. J'ai été invité à un entretien et j'ai fini par obtenir le poste.

Maintenant, ma tâche principale est de tester la solidité des applications écrites par nos programmeurs. Si le logiciel ne réussit pas le test, il doit être amélioré. Je vérifie également les messages des utilisateurs du système de mon entreprise. Nous avons tout un département qui travaille à résoudre divers problèmes, et j'en fais partie. La plateforme logicielle développée par notre société a été mise en œuvre dans des hôpitaux et des cliniques ; en cas de difficultés, les utilisateurs envoient une demande pour résoudre le problème. Nous étudions ces demandes. Parfois, je choisis moi-même la tâche sur laquelle je vais travailler, et parfois je consulte des collègues plus expérimentés sur le choix des tâches.

Une fois la tâche sécurisée, le travail commence. Afin de résoudre le problème, je découvre l'origine de l'erreur (après tout, il est toujours possible que la cause soit un facteur humain). Après avoir clarifié tous les détails avec le client, je formule une spécification technique pour le programmeur. Une fois le composant ou le module prêt, je le teste et l'implémente dans le système du client.

Malheureusement, la plupart des tests doivent être effectués manuellement, car la mise en œuvre de l'automatisation est un processus métier complexe qui nécessite une justification sérieuse et une préparation minutieuse. Cependant, je me suis familiarisé avec certains outils d'automatisation. Par exemple, la bibliothèque Junit pour tester un bloc à l'aide de l'API. Il existe également le framework twin d'ebayopensource, qui permet d'écrire des scripts simulant les actions des utilisateurs, très similaires à Selenium, utilisé sur le Web. De plus, je maîtrise le framework Cucumber.

Mes revenus dans mon nouvel emploi ont doublé par rapport à ceux d'un indépendant - mais cela est en grande partie dû au fait que je travaille à temps plein. À propos, selon les statistiques de hh.ru et d'autres ressources, le salaire d'un développeur à Taganrog est de 40 70 à XNUMX XNUMX roubles. En général, ces données sont vraies.

Le lieu de travail est équipé de tout le nécessaire, le bureau est spacieux, il y a de nombreuses fenêtres, il y a toujours de l'air frais. De plus, il y a une cuisine, une cafetière et, bien sûr, des biscuits ! L'équipe est également géniale, il n'y a aucun aspect négatif à cet égard. Bon travail, chers collègues, de quoi d'autre un programmeur de tests a-t-il besoin pour être heureux ?

Par ailleurs, je voudrais souligner que le bureau de l’entreprise est situé à Taganrog, qui est ma ville natale. Il existe de nombreuses sociétés informatiques ici, il y a donc de la place pour se développer. Si vous le souhaitez, vous pouvez déménager à Rostov - il y a plus d'opportunités là-bas, mais pour l'instant je n'ai pas l'intention de déménager.

Quelle est la prochaine?

Jusqu'à présent, j'aime ce que j'ai. Mais je ne vais pas m’arrêter, et c’est pour cela que je continue à étudier. En stock - un cours sur JavaScript. Niveau 2", dès que j'aurai plus de temps libre, je commencerai certainement à le maîtriser. Je répète régulièrement les sujets que j'ai déjà abordés et je regarde des conférences et des webinaires. En plus de cela, je participe à un programme de mentorat chez GeekBrains. Ainsi, pour les étudiants qui ont terminé avec succès les cours et les devoirs, la possibilité d'être un mentor pour d'autres étudiants est disponible. Le mentor répond aux questions et aide aux devoirs. Pour moi, c'est aussi une répétition et une consolidation de la matière abordée. Pendant mon temps libre, lorsque cela est possible, je résous des problèmes à partir de ressources telles que hackerrank.com, codeabbey.com, sql-ex.ru.

Je suis également un cours sur le développement Android dispensé par des professeurs ITMO. Ces cours sont gratuits, mais vous pouvez passer un examen payant si vous le souhaitez. Je tiens à souligner que l'équipe ITMO détient le championnat du monde des compétitions de programmation.

Quelques conseils pour ceux qui s'intéressent à la programmation

Ayant déjà une certaine expérience en développement, je conseille à ceux qui envisagent de se lancer dans l'informatique de ne pas se précipiter dans la piscine. Pour devenir un bon spécialiste, il faut être passionné par son travail. Et pour ce faire, vous devez choisir la direction que vous aimez vraiment. Heureusement, cela n'a rien de compliqué - il existe désormais sur Internet de nombreuses critiques et descriptions sur n'importe quel domaine de développement, langage ou framework.

Eh bien, vous devez être prêt à un processus d'apprentissage constant. Un programmeur ne peut pas s'arrêter - c'est comme la mort, même si dans notre cas, ce n'est pas physique, mais professionnel. Si vous êtes prêt pour cela, alors allez-y, pourquoi pas ?

Source: habr.com

Ajouter un commentaire