Notre stack technique

Découvrez les passionné(e)s qui font vivre notre outil et les technologies qui le soutiennent.

Plus de 2 000 leaders de l'industrie mobile nous font confiance.

Binance Zynga Playtika Bumble Ubisoft Amazon

AppTweak aide les entreprises à rassembler et à analyser des données sur les performances de leurs apps et jeux dans l'App Store et Google Play.

Pour cela, nous...

  • rassemblons des gigaoctets de données chaque jour via des pipelines ETL
  • stockons et organisons ces données dans une vaste palette de bases de données
  • bâtissons des algorithmes et des modèles qui génèrent des prédictions et informations pertinentes pour nos clients
  • rendons ces données et analyses disponibles via des appels API
  • créons des représentations visuelles intuitives et simples d'emploi grâce à ces appels API

Nous déployons ces outils et services via des conteneurs Docker, qui tournent sur Kubernetes. Cela nous rend indépendants de la technologie et nous permet d'utiliser les meilleurs langages et librairies pour chaque service. Nous adorons Ruby et l'utilisons autant que possible, mais nous n'avons pas peur d'essayer autre chose !

Découvrez notre équipe technique

  • Back-end
    15
  • Front-end
    10
  • Data science
    5
  • Développeur web
    1
  • Assurance qualité
    4
  • animaux de compagnie
    9

Rencontrez Alex, directeur de la technologie chez AppTweak

Découvrez nos Squads 👋

Les équipes Développement et Data science d'AppTweak sont scindées en 9 Squads.
Une Squad est une équipe transverse chargée de gérer de façon totale et autonome un aspect spécifique de l'outil AppTweak.

Squad Visibility
Fournir aux éditeurs d'apps et de jeux des informations concrètes, pour surveiller et améliorer la visibilité de leurs produits dans les app stores.
Squad Lead Gen
Accroître le trafic vers le site AppTweak et encourager les visiteurs à faire un essai gratuit.
Squad Customer Lifecycle
Assurer une navigation fluide dans tout l'outil AppTweak et cultiver l'activation et la rétention des utilisateurs.
Squad Analytics
Aider les utilisateurs à mesurer les performances de leurs apps dans les app stores, sur différents marchés et par rapport à d'autres apps.
Squad Conversion
Fournir aux éditeurs d'apps et de jeux les outils nécessaires pour optimiser le taux de conversion de leurs produits dans les app stores.
Squad DeSy
Fournir des outils et processus pour aider les autres équipes à consolider l'homogénéité de notre IU dans tous nos produits numériques.
Squad API
Potentialiser l'API AppTweak pour élargir sa clientièle et développer des partenariats stratégiques.
Squad QAWAII
Améliorer l'infrastructure et les outils AppTweak, prendre en charge et partager les connaissances entre Squads.
Squad Data science
Soutenir la croissance des autres Squads en fournissant des algorithmes et analyses basés sur des données.

Notre façon de travailler

Chaque Squad décide de son organisation, mais en général, suit des sprints de 2 semaines avec les étapes rituelles suivantes :

  • Stand-ups : chaque jour ou plusieurs fois par semaine, selon la Squad.
  • Plannings Sprint et rétrospectives pour commencer et terminer chaque sprint.
  • Jours de démo : chaque mois, les Squads présentent des fonctions à venir ou fraîchement lancées à toute l'équipe AppTweak.
  • Debugging : les bugs sont gérés de façon hebdomadaire, le jeudi.

Nos technologies

Les technologies avancées permettent à nos développeurs et à nos data scientists d'améliorer leurs propres compétences et de développer notre outil de la manière la plus efficace possible.

  • Back-end

    • SAAS product est une application Ruby on Rails qui sert une application monopage React.
    • Les extracteurs et robots d'indexation reçoivent leurs tâches de queues SQS et stockent les données dans un mélange de bases de données MySQL, Redshift, MongoDB, PgSQL et Elasticsearch. Ils utilisent le langage de programmation Ruby (sans Rails).
    • Les API JSON REST sont aussi bâties en Ruby, avec le framework léger Sinatra.
    • Déploiement du code : Concourse en tant que pipeline CI/CD, pour bâtir des images Docker déployées sur un cluster Kubernetes hébergé sur AWS.
    • Nous surveillons tout avec Prometheus et Grafana pour visualiser les séries temporelles et les indicateurs de façon efficace.
  • Data science

    • La plupart de nos modèles d'apprentissage automatique sont bâtis avec Fastai/Pytorch ou Scikit-Learn.
    • Prophet nous permet de mieux comprendre nos séries temporelles.
    • L'exploration et l'analyse des données sont effectuées avec Pandas et Numpy.
    • La plupart des données qui alimentent nos algorithmes sont stockées dans des bases de données MySQL ou MongoDB.
    • Nous intégrons nos algorithmes dans des API JSON REST bâties avec Flask.
    • Nous effectuons nos déploiements via des images Docker sur un cluster Kubernetes hébergé par AWS.
  • Front-end

    • Application monopage basée sur React/Redux/Redux-sagas, écrite en TypeScript avec l'outillage standard (Webpack, Babel, ES6, ESLint et Prettier).
    • Le versant front-end consomme une API REST basée sur Ruby on Rails.
    • Pipeline CI/CD robuste avec Concourse et images Docker.
    • Système de design interne qui fournit les éléments IU et les directives à suivre dans l'ensemble de l'outil.

Nos défis technologiques

Notre équipe technique est composée d'individus aussi talentueux que passionnés. Voici quelques-uns des défis sous-jacents auxquels ils font face, dans leur travail sur les projets techniques d'AppTweak.

Back-end

  • Nous devons bâtir, maintenir et développer des extracteurs qui effectuent des millions de requêtes HTTP chaque jour.
  • Nous dépendons de sources de données susceptibles de changer sans préavis, et devons donc être prêts à déployer des correctifs à tout moment.
  • Nous gérons d'énormes quantités de données, qui exigent le plus grand soin pour garantir de hautes performances.
  • Nous surveillons toute une palette d'éléments dynamiques et nous assurons que tous fonctionnent correctement, en permanence.

Front-end

  • Notre couche front-end toute entière a été modernisée, et s'appuie désormais sur ReactJS avec Redux et Redux-Saga pour gérer le chargement des données et des états. Comme l'application centrale est désormais 100 % React, nous voulons améliorer notre architecture front-end en migrant vers une architecture micro front-end.
  • Certaines parties de l'application (comme notre tableau de mots-clés) doivent afficher des milliers de données : nous devons toujours penser à l'optimisation des performances.
  • L'application évolue constamment, au fil des sorties hebdomadaires. Maintenir un niveau de qualité front-end très élevé est un défi constant.

Data science

  • Nos projets couvrent une vaste part de l'apprentissage automatique au sens large : données tabulaires, clustering, traitement du langage naturel, analyse d'image, analyse de séries temporelles… Le défi : trouver, comprendre et utiliser de façon pertinente les technologies les plus prometteuses dans chacun de ces domaines.
  • Certains de nos algorithmes sont entraînés avec plus de 500 M de valeurs, ce qui exige une optimisation de la gestion de la mémoire et de la convergence.
  • Nous entraînons parfois nos modèles sur GPU, et nous devons optimiser toute la machinerie CUDA qui vient avec.
  • Nous bâtissons et maintenons des API REST pour présenter les prédictions de nos algorithmes, en garantissant de répondre aux exigences de vitesse du logiciel.

Intéressé(e) de rejoindre notre équipe ?

Découvrez nos offres d'emploi et postulez dès aujourd'hui !