Que fait le Big Data dans MegaFon et comment y arriver?

MegaFon n'est pas seulement une entreprise de télécommunications qui fournit des communications mobiles, c'est une entreprise numérique qui crée des produits qui forment un écosystème pour la vie d'un client: "Own card", "Own cashback", "MegaFon.TV", "MegaFon.Music" et beaucoup d'autres d'autres. Le département MegaFon Big Data Analytics personnalise les offres en fonction des besoins de chaque client.

image
Discours de MegaFon Big Data Analyst à la conférence Data Fest au printemps 2019

Les datacientists MegaFon résolvent le problème de la préservation de la base d'abonnés, qui est l'une des priorités de l'entreprise dans un contexte de croissance plus lente du marché des services de télécommunications. Par exemple, il y a quelques années, sur la base des mégadonnées, une nouvelle ligne tarifaire «Activer» a été développée. Il est construit sur les intérêts réels des utilisateurs numériques: parler, discuter dans des messagers, écouter de la musique, discuter sur les réseaux sociaux, regarder des vidéos. Les noms des tarifs correspondent au remplissage en fonction des intérêts, et l'utilisation illimitée d'applications familières ne nécessite pas de calculs de trafic consommé. Lors de la formation d'un écosystème, notre tâche est de faire une offre individuelle à chaque client.

Le Big Data résout également les problèmes liés à la vente au détail. Par exemple, à l'aide de modèles d'apprentissage automatique, nous savons où déplacer les salons inefficaces et où en ouvrir de nouveaux. Travailler avec les géodonnées nous aide dans cette direction.

L'analyse des mégadonnées est également utilisée dans les tâches liées au développement de l'infrastructure réseau, où, en utilisant l'analyse des tours et du trafic qui en découle, nous déterminons la couverture optimale et prédisons les emplacements prometteurs pour la construction.

Quelles technologies sont utilisées?

La quantité de données avec laquelle nous travaillons représente des millions d'abonnés et des milliards d'enregistrements quotidiens pour eux. Le Big Data n'est pas seulement des bases de données telles qu'Oracle, MySQL ou MongoDB. Le Big Data est une gamme complète de logiciels pour travailler avec eux. Pour travailler avec des données volumineuses, vous devez comprendre le fonctionnement de Hadoop, connaître les fonctionnalités de l'utilisation de Spark, Hive, HDFS. Souvent, les analystes de données qui viennent chez nous n'ont jamais utilisé ces outils dans leur travail. Dans ce cas, nous enseignons les compétences qui ne suffisent pas.

Les compétences de travail avec les mégadonnées sont acquises avec l'expérience, c'est pourquoi MegaFon s'intéresse à des analystes talentueux qui sont prêts à apprendre tous les outils nécessaires et à les appliquer aux tâches réelles de l'entreprise.

image
BigDataCamp dans le bureau de MegaFon, 2019

Comment les experts du Big Data de MegaFon développent-ils des modèles?

Les experts Big Data de MegaFon sont divisés en analystes (dataists) et ingénieurs. Les analystes testent des hypothèses et construisent des modèles d'apprentissage automatique. Les ingénieurs aident les analystes à collecter les vitrines, à optimiser les processus ETL et sont responsables de la configuration des modèles en production.

Le développement du modèle est le suivant. Nous collectons d'abord les données nécessaires dans Hadoop ou Oracle. Ensuite, le modèle est formé sur des serveurs dédiés avec une grande quantité de mémoire et de cœurs de processeur. Pour la formation des réseaux de neurones, nous utilisons des serveurs avec des GPU.

image
BigDataCamp dans le bureau de MegaFon, 2019

Le langage principal pour développer des modèles est Python. Pour traiter les données en Python, les bibliothèques standard Pandas, NamPy, Scikit-learn sont généralement nécessaires. Pour les calculs dans Hadoop PySpark et Hive sont utilisés, pour la modélisation - bibliothèques Scikit-learn, Xgboost, LightGBM, PyTorch et autres. La liste dépend de la tâche. Pourquoi Python? Son principal avantage est la simplicité de la productivité. Nous pouvons prendre une décision qui sera immédiatement intégrée dans l'infrastructure commune. Bien qu'il arrive que les bibliothèques requises ne soient pas en Python, elles le sont dans d'autres langages. Par exemple, R possède des bibliothèques de statistiques qui ne sont pas en Python.

Et si personne ne connaît Hadoop?

Les compétences Hadoop sont souhaitables, mais elles ne sont pas une condition préalable pour accéder à notre équipe. Toutes les entreprises ne disposent pas de la quantité de données dont MegaFon dispose et, par conséquent, les candidats n'ont pas eu la possibilité de travailler avec Hadoop sur leur ancien lieu de travail.

Il n'est pas très difficile de maîtriser les commandes de base pour travailler avec le cluster Hadoop, mais lorsqu'il s'agit de tâches plus complexes, une compréhension approfondie des algorithmes de Big Data, MapReduce et des méthodes d'optimisation des requêtes est requise. Par exemple, dans l'écosystème Hadoop, il existe un produit tel que Hive. Il vous permet d'écrire des requêtes de type SQL et s'exécute sur Hadoop. Il a été initialement développé par Facebook. Mais vous devez vous rappeler qu'il ne s'agit pas de manipuler une base de données relationnelle, malgré le fait que vous écrivez en SQL. Ici, vous pouvez écrire des requêtes simples, mais pour atteindre l'efficacité, c'est-à-dire la vitesse et l'utilisation minimale des ressources du cluster, vous devez comprendre les nuances de l'optimisation des requêtes à l'aide de MapReduce.

Les stages sont l'occasion de développer et d'acquérir une expérience en affaires. Y a-t-il des stages en
Big Data MegaFon?

Dans notre monde numérique, il semble que déjà n'importe quel tabouret recueille des données sur la personne qui y est assise, sans parler de l'Internet des objets et du grand nombre de services que nous utilisons tous.

Le besoin de spécialistes augmente, il existe un grand nombre d'analyses et de prévisions sur le nombre qui sera nécessaire dans un avenir proche. Chaque entreprise qui collecte au moins certaines données comprend que ces données peuvent avoir de la valeur et un grand nombre d'informations. Par conséquent, les analystes de données sont maintenant dans une telle demande.

image
BigDataCamp dans le bureau de MegaFon, 2019

Nous sommes heureux d'avoir de grands spécialistes, mais le marché est petit et il n'y en a pas beaucoup qui nous conviennent. Par conséquent, MegaFon développe des programmes de stages. Fondamentalement, nous invitons les étudiants seniors et les jeunes diplômés impliqués dans la programmation et les mathématiques à effectuer des stages. Il y a des exceptions, par exemple, il y a eu une expérience réussie d'interagir avec des gars des départements de géographie. Il est important pour nous que l'étudiant puisse combiner harmonieusement travail et études, se développer davantage dans l'entreprise et à l'avenir passer au poste d'analyste ou d'ingénieur.

Comment tapez-vous dans une équipe?

Nos entretiens avec des stagiaires sont différents des entretiens avec des professionnels expérimentés. Lors de la recherche de stagiaires, le recruteur réalise un petit entretien téléphonique dont les résultats permettent de savoir si le candidat est intéressé par nos tâches et quel niveau de connaissances et d'expérience il possède actuellement. Il est important pour nous si le candidat est capable de programmer en Python, s'il connaît les bibliothèques de base de l'apprentissage automatique, s'il a de l'expérience dans la résolution de problèmes de formation liés à l'analyse des mégadonnées, s'il a déjà construit des modèles mathématiques et quels algorithmes il a utilisés.

Sur la base des résultats d'un entretien téléphonique, nous sélectionnons 5 à 10 candidats qui viennent simultanément dans notre bureau pendant 2 à 3 heures pour apprendre à connaître les gars de l'équipe et résoudre la tâche technique. Il est le plus proche possible de l'industrie des télécoms - il est nécessaire de construire un modèle de classement de nos abonnés. Ensuite, nous comparons les résultats et invitons les meilleurs à l'entretien final pour discuter d'un horaire de travail individuel, des tâches et d'autres conditions.

Le stage dure 3 mois. Le stagiaire est engagé dans de vraies tâches commerciales. Le plus souvent, les tâches sont déjà formalisées, et une personne a une compréhension claire de ce qui doit être fait, sinon, vous pouvez toujours vous tourner vers votre mentor .

En plus des tâches professionnelles, nos stagiaires suivent régulièrement des formations hors ligne et en ligne. Nous travaillons avec New Pro Lab, Big Data Team, Geek Brains, Data Gym et autres, nos experts ont accès à Coursera.

Comme le montre la pratique, trois mois suffisent pour comprendre si nous voulons continuer à travailler ensemble. Si le stagiaire donne de bons résultats, nous l'emmenons au poste de data scientist junior et nous nous développons davantage.

image
Egor, MegaFon Big Data Analyst, lors de la conférence Data Fest au printemps 2019.

La recherche de professionnels expérimentés est la suivante:

1. Double-chek CV ou profil de candidat avec les chefs d'équipe et le recruteur.

2. Entretien personnel avec le chef d'équipe, où il y a des questions techniques et pas seulement: théorie des probabilités, statistiques, apprentissage automatique, expérience de l'utilisation de différents utilitaires, attentes du candidat lui-même.

3. Si l'entretien s'est bien passé pour les deux parties, nous demandons le portfolio du candidat (projets personnels et code) ou nous demandons de résoudre notre tâche technique afin de voir le code et de découvrir l'avancement de la résolution des problèmes. La tâche technique est également associée aux télécoms: il faut prévoir si l'abonné dispose de plusieurs cartes SIM. La durée de la mission est déterminée par le candidat lui-même, mais elle ne dure généralement pas plus d'une semaine. Un de nos employés a résolu la tâche ce soir-là et une semaine plus tard est venu travailler pour nous. Salut Artyom;)

4. Rencontre avec le directeur de l'analyse des mégadonnées, discussion des tâches et des conditions.

La bureaucratie est-elle forte dans une grande entreprise?

La plupart de notre équipe travaille au siège social à Moscou, mais nous avons des équipes à Nijni Novgorod et à Iekaterinbourg. Des collègues de différentes villes peuvent être impliqués dans des projets, tout dépend des tâches et des compétences des employés.

Notre département est jeune, dynamique, et nous avons initialement réussi à construire correctement des processus d'interaction avec d'autres départements: nous n'avons pas besoin de demander des données à des collègues, nous utilisons principalement notre base de données, Oracle ou Hadoop, et construisons un modèle.

image
Travailler dans le bureau de MegaFon

Notre flux de travail est organisé comme suit. Tout d'abord, le gestionnaire discute des exigences avec un représentant du client. En règle générale, nous parlons d'améliorer un processus commercial à l'aide de l'apprentissage automatique et de l'analyse de données, par exemple, nous pouvons optimiser la vente de smartphones pour notre commerce de détail. Ensuite, le manager, le chef d'équipe et l'analyste discutent ensemble des termes et étapes de développement. Les arrangements sont enregistrés dans Jira, nous exécutons également Confluence, c'est notre Wiki interne. Bien sûr, nous utilisons Gitlab.

Cette année, nous avons introduit le processus de révision du code pour toutes les étapes clés du projet de science des données et voyons déjà les résultats: la qualité du code de nombreux gars s'est considérablement améliorée. D'autres plans visant à améliorer le processus de développement sont la mise en œuvre de l'outil DVC (Data Version Control), qui permettra de versionner l'ensemble du projet, y compris les jeux de données.

La durée des projets peut aller de plusieurs mois à six mois. L'analyste est impliqué à toutes les étapes du projet, de la formalisation des exigences à la détermination de l'événement cible du modèle, en passant par le suivi de la stabilité du résultat en production.

Nous sommes très axés sur les résultats, nous n'entreprenons jamais de développement sans une compréhension claire des avantages que nous pouvons apporter à MegaFon.
Après avoir construit le modèle, nous lançons des campagnes de test basées sur les résultats de son travail. En cas de succès, nous déployons notre solution auprès de millions d'abonnés MegaFon. À l'avenir, nous analysons les résultats non seulement du point de vue des métriques du modèle, telles que l'exactitude ou l'exhaustivité sur le segment cible, mais nous abordons également sérieusement l'analyse des indicateurs commerciaux. Nos analystes commerciaux nous y aident.

Équipe et développement

Le plus gros plus de travail dans ce département est une équipe de gars vraiment intelligents et des tâches intéressantes. Le bureau, le centre commercial, les bonus, les compensations, bien sûr, sont également bons, mais il est en troisième position. MegaFon for analysts est un véritable entrepôt de données. Tout le monde n'a pas la possibilité de travailler avec un tel type et une telle quantité de données que lorsqu'elles sont analysées, vous pouvez saisir des informations et prendre des décisions qui, en fin de compte, rapporteront beaucoup d'argent. C'est le plus intéressant pour l'analyste. Vous avez étudié à l'université, écrit un nouvel algorithme, codé, appliqué des méthodes scientifiques, l'algorithme a commencé à fonctionner et a vraiment apporté des avantages. C'est ce qui provoque le plus d'émotions.

Nous sommes des gens de chiffres, entourés de gens de commerce, et quand nos idées nous amènent à gagner de l'argent - c'est génial!

L'entretien a été préparé conjointement avec le service carrière My Circle.

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


All Articles