Comment j'ai passé l'été sur VK

L'été est terminé et, dans le même temps, la plupart des stages d'été dans les entreprises informatiques ont pris fin. Cette année, j'ai eu la chance d'avoir un stage d'été à VKontakte. Ce fut sans exagération les deux mois les plus mouvementés de ma vie, et je veux vraiment parler de comment c'était.




À propos de moi


Je veux d'abord parler un peu de moi. Je m'appelle Amina, j'ai 25 ans et je suis logisticien de formation. Je suis venu dans l'informatique relativement récemment - il y a seulement trois ans. Tout a commencé avec les cours de composition de HTML Academy, et un an plus tard, j'ai obtenu un emploi de développeur front-end dans un studio web. Et c'est aussi mon premier article sur Habré, donc avec une initiative de moi :)


Comment j'ai découvert le stage


Un de mes amis travaille chez VK dans le département de test iOS. Une fois, il a dit que bientôt VKontakte commencerait à recruter pour un stage d'été, dans lequel il y aurait deux places dans la direction frontend. Tout ce qui sera nécessaire est de résoudre la tâche de test et de passer un entretien.


J'étais sûr que l'entrée en VK était plutôt difficile en raison de la rareté des postes vacants et des exigences élevées pour les candidats, alors je n'espérais guère dépasser la phase de candidature. Mais je me demandais quelle était la tâche de test - si elle est intéressante, vous pouvez la joindre au portefeuille à l'avenir.


Tâche de test


Au total, huit équipes ont participé au programme de stage "VKontakte in Practice":


  • Équipe de recherche appliquée;
  • Équipe Messenger;
  • Équipe d'infrastructure mobile. Android
  • Équipe d'infrastructure mobile. iOS
  • Équipe de publicité frontale;
  • Core ML Team;
  • Équipe d'analyse au sein du département commercial et publicitaire;
  • Équipe de base de données.

Pour postuler à chacun d'eux, il fallait effectuer au moins une tâche de test, et dans certains d'entre eux, il y en avait deux. En direction des stagiaires frontend, deux mentors ont été recrutés: de la Messenger Team et de la Advertising Team.




Le test était commun aux deux équipes, vous pouvez donc envoyer des candidatures aux deux à la fois. Mais j'ai décidé que la publicité n'était pas très intéressante pour moi et j'ai envoyé la candidature uniquement à l'équipe Messenger.


Voici la liste des exigences pour la tâche de test:


Créez une version simplifiée du tableau kanban, sur laquelle vous pouvez:


  • ajouter de nouvelles cartes;
  • ajouter de nouvelles colonnes;
  • faites glisser les cartes entre les colonnes.

Assurez-vous que la solution est pratique, rapide et précise. Réfléchissez à la façon de rendre l'utilisateur confortable et agréable à utiliser votre produit.


Mise en page par référence: vk.cc/9jpmLH


Lors de l'évaluation du travail, les éléments suivants seront pris en compte:


  • respect de la mise en page, précision du code;
  • qualité de la mise en page;
  • flexibilité et évolutivité de la solution.

De plus, nous l'adorons lorsque le code utilise un minimum de dépendances externes.



La disposition de conception était très concise et uniquement pour les versions de bureau. Par conséquent, j'ai dû réfléchir à tous les détails et nuances moi-même. Comme il s'est avéré plus tard, c'était l'une des astuces de cette mission. J'ai décidé de ne pas réinventer la roue et j'ai grimpé pour voir comment elle est mise en œuvre sur Trello et sur des sites similaires avec des tableaux kanban.


J'étais sûr que si je veux au moins d'une manière ou d'une autre me souvenir parmi un grand nombre de candidats, je devrais envoyer ma décision dès que possible. Et pas perdu! En conséquence, elle a effectué la mission dans les cinq jours suivant le début de la réception des candidatures (sans sommeil, sans nourriture, etc.).


Voici à quoi ressemblait l'implémentation de la tâche:




Si c'est intéressant, alors dans le groupe VK Education, il y a une vidéo où les mentors des deux équipes, Tim Chaptykov et Dima Bezugly, parlent de ce à quoi aurait dû ressembler la mise en œuvre idéale de la tâche et décrivent les erreurs les plus courantes lors de l'exécution. Voici le lien: vk.cc/9Q54fO


Entretien d'embauche


Après deux semaines d'attente longues et douloureuses, HR VKontakte m'a écrit et m'a invité pour un entretien. J'étais tellement content et en même temps tellement terrifié que toute la semaine avant cette réunion, je faisais le tri d'articles sur le sujet «Comment obtenir un entretien technique chez le développeur frontend» et des documents similaires.


L'entretien lui-même était censé avoir lieu avec le mentor de l'équipe Messenger - Tim Chaptykov. Mais le mentor de l'équipe de publicité, Dima Bezugly, est également venu me parler. Les questions étaient standard - pour moi, sur l'expérience, la pile de technologies que j'utilise dans mon travail. Je ne me souviens pas de l'entretien lui-même, car j'étais encore terrifiée, nerveuse et je ne comprenais pas ce que je faisais ici. La seule question que je voulais poser lors de l'entretien lui-même était de savoir s'il y avait des commentaires sur ma tâche de test.




Naturellement, je l'ai oublié! Par conséquent, je l'ai réussi après un entretien avec les RH. Je pensais que j'obtiendrais une réponse sous la forme de deux ou trois commentaires, mais je ne connaissais tout simplement pas Tim. Le lendemain, j'ai reçu un examen extrêmement détaillé avec tous les commentaires, une description de ce qui était censé être fait, ainsi qu'une analyse de tous les inconvénients et avantages de ma mise en œuvre.


Voici le message:




C'était très cool et agréable, car généralement de telles questions après l'entrevue restaient sans réponse pour moi (peut-être que j'étais juste chanceuse, mais quand même).


Il ne restait plus qu'à attendre la fin de l'acceptation des candidatures et l'annonce des résultats. Ce furent deux semaines d'attente très excitantes, après quoi ils m'ont finalement appelé et m'ont dit qu'ils m'avaient accepté. Je pars en stage chez VK!


Premières impressions


Ma première journée sur VK a été très chargée. Tout d'abord, tous les stagiaires ont visité le bureau: ils ont montré où est basée l'équipe, où se trouve la célèbre salle de réunion «Pytichnaya» et comment monter le dôme. Ensuite, ils ont montré des emplois et distribué du matériel: un macbook, un moniteur, un clavier et des écouteurs comme souhaité (ils sont nécessaires - pour cela, je dois dire merci aux musiciens qui occupent Nevsky Prospekt en été). Et juste après, j'ai commencé à plonger dans le travail. Le mentor et moi avons discuté d'un plan de travail pendant deux mois, et je suis allé mettre en place un environnement de travail, une documentation sur la laine et jouer au jeu «trouver le bon article dans Confluence».




Tâches de stage


Mes tâches de stage étaient connues depuis le tout début - je les ai découvertes lors de l'entretien. Ne pas rester assis dans le coin et éditer des bugs que personne ne touche. Il s'agissait de trois tâches principales du produit pour la section des messages - vous verrez bientôt leur implémentation dans la version de bureau de VK. En attendant, la NDA;)


La section des messages VK a de nombreuses fonctionnalités à prendre en compte lors du développement. Le plus important d'entre eux, à mon avis, est que presque tous les événements se produisent en mode temps réel. Les données du serveur sont constamment mises à jour, vous devez surveiller cela. Ce qui est superposé, c'est que les tests doivent traiter absolument tous les cas - et si même quelques bugs extrêmement rares sont détectés, ils doivent être corrigés. C'est simple - VK chaque mois, 97 millions de personnes l'utilisent, et si chaque cent millième bug apparaît, il s'avère que près de 1000 utilisateurs l'attraperont. Par conséquent, il n'y a pratiquement pas de bugs mineurs.


Messenger


Je voudrais parler séparément de l'équipe Messenger. Cool qu'elle soit très bien coordonnée, malgré le fait qu'elle soit divisée en sous-commandes par plateforme. Pour tenir tout le monde au courant sur chaque plateforme, un rassemblement a lieu le lundi, où tout le monde raconte ce qu'il a fait la semaine dernière et ce qu'il fera ensuite.




Mais les réunions les plus cool sont une rétrospective. Une fois par mois, un rassemblement est organisé où toute l'équipe se rassemble et discute de tout le bien et du mal qui se sont produits pendant cette période.
Tout d'abord, la rétrospective prend une grande coupe avec M & M's. Puis, en deux phrases, il parle de quelque chose de bien qui s'est passé dans sa vie, mange des bonbons et passe la tasse à la suivante. Et la rencontre se poursuit de la même manière. Et ainsi de suite jusqu'à ce que tout le monde s'exprime. Les gars parlent des changements globaux dans la vie et de petites choses comme «lire un bon livre» ou «aller dans un grand film». Cela égaye tout le monde et aide à syntoniser de manière positive.


Vient ensuite une discussion des problèmes accumulés. L'équipe a une boîte aux lettres spéciale où les gars jettent des autocollants pendant un mois: sur le vert, ils écrivent sur ce qu'ils ont aimé, sur le jaune - ce qui dérange, sur le rouge - en colère.




Tous les autocollants sont distribués sur le tableau selon les colonnes joyeuses, tristes et folles, puis l'équipe en discute. S'il y a des problèmes qui ne peuvent pas être éliminés ici et maintenant, il s'avère comment les résoudre et qui les prendra. Les problèmes peuvent être différents: des plus petits, tels que la température d'un climatiseur, aux gros problèmes techniques ou organisationnels. L'essentiel est que tout le monde se soucie: si quelque chose dérange, cela dérange tout le monde. Par conséquent, le bénéfice de ces réunions est maximum.


C'était aussi très cool de découvrir comment la vie bouillonne à l'intérieur du bureau de VKontakte. Par exemple, chaque jeudi passe la journée de démonstration, où les développeurs de différentes équipes partagent la joie de leurs fonctionnalités. Des sorties cinéma, team building et pizza sont organisées tous les vendredis pour les salariés.


Séparément, pour les stagiaires, des déjeuners ont eu lieu avec les cadres dirigeants de l'entreprise: quatre groupes de deux ou trois stagiaires et quatre cadres supérieurs. Il se trouve que moi et deux autres stagiaires d'iOS avons déjeuné avec le directeur général de VK Andrei Rogozov. Je m'attendais à ce que tout se passe dans un cadre plutôt formel, mais en réalité, cela s'est avéré complètement différent. Il y a eu un déjeuner en tube, où l'AR a raconté de nombreuses histoires de la vie de VKontakte, nous avons discuté des plans pour l'avenir.




En général, il y a eu tellement d'événements que ces deux mois se sont envolés instantanément. A la fin de tous les stagiaires, une présentation finale était attendue, où chacun a évoqué les résultats de son stage. Mon résultat a été deux nouvelles fonctionnalités. Il aurait dû y en avoir trois, mais dans le développement, quelque chose se passe rarement comme prévu. L'une de ces fonctionnalités a été donnée pour les tests, ce dont je suis extrêmement heureux. Je voudrais en parler, mais cela ne sera possible qu'après la sortie. Avant cela, je suis également passé par l'étape de révision du code. 47 commentaires ont été soigneusement laissés par mon équipe et résolus.


En conclusion, je tiens à dire que je suis très fier des personnes sympas avec lesquelles j'ai réussi à travailler pendant le stage. Je pense en particulier à une petite équipe de deux personnes chargée de publier sur le Web. Tim et Katya sont de vrais fans de leur domaine avec leurs approches de développement spéciales. Ce que j'ai appris d'eux au cours de ces deux mois semble dépasser le total des connaissances accumulées au cours de deux modestes années de travail.




Le stage VKontakte est une chance de voir comment un si gros projet fonctionne de l'intérieur, pour en savoir plus sur les processus. Un stage en soi n'implique pas un nouvel emploi, les stagiaires sont interrogés de manière générale. Cela a été discuté immédiatement et n'a pas été une surprise.


Mais, comme cela arrive souvent, tout peut changer. Les stagiaires ont si bien travaillé avec leurs mentors et collègues que 8 sur 13 ont été embauchés! Cependant, tout le monde n'est pas resté dans leurs équipes - certains ont décidé de s'essayer à autre chose.
Par exemple, je suis maintenant développeur junior dans l'équipe d'infrastructure d'automatisation et de maintenance - je connais le côté administrateur de VKontakte.

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


All Articles