Tous les postes  >  Ingénieurie

Software Engineer (Nest.Js/Node.Js)

Notre mission à Maagot est de bâtir une Afrique prospère

Chez Maagot, nous travaillons au quotidien à faire entrer l’Afrique dans une Nouvelle Ère Financière, car l’énorme potentiel de ses centaines de millions d’habitants et d’entreprises a longtemps été freiné par la lourdeur et l’inefficacité du système bancaire traditionnel.

Notre préoccupation n’est pas de vendre des produits : nous permettons aux individus et aux entreprises en Afrique de transformer au quotidien la vie de leurs proches, faire prospérer leurs activités et contribuer ainsi au développement des communautés et nations à travers tout le continent.

Partager sur :

Au sujet du poste

Notre vision est noble et grandes sont nos ambitions pour le futur. C’est pourquoi la technologie joue un rôle prépondérant en ce sens qu’elle nous rend capables de fournir une expérience plaisante à nos clients où leurs opérations financières sont rapides, sécurisées, peu coûteuses et agréablement simples.

En tant que Software Engineer de talent et d’expérience (minimum 4-5 ans) pour rejoindre notre équipe de développement. Tu seras responsable de la conception, du développement et de la maintenance de micro services backend performants et évolutifs, en utilisant Nest.Js et TypeScript.

Te concernant

  • Excellence technique : Tu maîtrises parfaitement Node.Js, Nest.Js et TypeScript, et tu as une solide expérience en développement backend, incluant des environnements à forte charge.
  • Approche TDD/BDD : Tu es habitué(e) au développement orienté tests avec Jest et Supertest, et tu adoptes systématiquement une démarche de tests automatisés.
  • Curiosité et innovation : Tu es passionné(e) par les nouvelles technologies, que ce soit pour améliorer l’architecture, les performances ou la sécurité des services.
  • Clarté communicationnelle : Tu as d’excellentes compétences en communication (écrite et verbale) essentielle pour transmettre simplement et efficacement des concepts techniques à des parties prenantes non-techniciennes (par exemple).
  • Capacité à collaborer : Tu fais preuve d’un véritable esprit d’équipe pour travailler en collaboration avec différentes équipes (Engineering, Product, Sales, etc.).
  • Curiosité et innovation : Tu es passionné par les nouvelles technologies, que ce soit pour améliorer l’architecture, les performances ou la sécurité des services.
  • Adaptabilité et proactivité : Tu sais gérer les priorités dans un environnement agile et en constante évolution, tout en proposant des solutions innovantes aux problématiques techniques.

1. Responsabilités principales

  • Développement de micro services :
    • Concevoir, développer et maintenir des services backend modulaires et scalables avec Nest.Js et TypeScript.

    • Créer des API RESTful et/ou GraphQL pour permettre l’intégration avec nos applications mobiles, web et autres micro services.

  • Conception d’architectures distribuées :

    • Participer à la dénition et à la mise en œuvre d’une architecture microservices robuste, capable d’interagir avec des services écrits en d’autres langages.

    • Collaborer avec l’équipe pour intégrer des outils d’API Gateway qui assurent l’authentication, le routage, le caching et le rate limiting.

  • Intégration de systèmes et communication asynchrone :

    • Utiliser Kafka pour publier et consommer des événements afin de synchroniser les opérations entre microservices.

    • Travailler avec des bases de données SQL (PostgreSQL) et NoSQL (Redis) pour la persistance et le caching des données.

  • Qualité, tests et déploiement continu :

    • Rédiger des tests unitaires et d’intégration (TDD/BDD) pour assurer la robustesse du code.

    • Collaborer avec l’équipe CI/CD pour automatiser les déploiements via GitHub Actions, Jenkins ou d’autres outils.

  • Sécurité et conformité :

    • Mettre en place des pratiques de sécurité avancées (chiffrement, gestion des tokens, contrôle d’accès) en conformité avec les normes du secteur financier.

    • Assurer une veille technologique pour anticiper et intégrer les meilleures pratiques de sécurité.

  • Collaboration et support technique :

    • Participer aux revues de code et partager les meilleures pratiques avec l’équipe.

    • Fournir un support technique lors des incidents et contribuer à l’optimisation continue des services.

2. Compétences requises

  • Expérience Professionnelle : Minimum 4-5 ans d’expérience en développement backend dans un environnement de production, avec une expertise avérée sur Node.js, Nest.js et TypeScript.
  • Maîtrise de l’écosystème JavaScript :
    • Excellente connaissance de Node.js et de ses librairies, ainsi que des frameworks et outils tels qu’Express, GraphQL, et ORM (Prisma est un plus).
  • Architecture en micro service :
    • Expérience avérée dans la conception et la mise en œuvre de systèmes distribués et d’API REST/gRPC.
  • Conteneurisation et orchestration :
      • Expertise avec Docker et expérience avec Kubernetes pour le déploiement et le scaling horizontal.
  • Intégration et communication :
    • Maîtrise des outils d’intégration continue et de déploiement (GitHub Actions, Jenkins, etc.).
    • Expérience avec des systèmes de messagerie comme Kafka pour la gestion des événements asynchrones.
  • Bases de données :
    • Connaissances approfondies en PostgreSQL pour la gestion des transactions et en Redis pour le caching.
  • Compétences en DevOps et monitoring :
    • Familiarité avec les outils de monitoring (Prometheus, Grafana) et une bonne compréhension de la gestion des logs et des alertes.
  • Approche testée (TDD/BDD) :
    • Solide expérience avec Jest, Supertest et les meilleures pratiques de tests automatisés.
  • Sécurité en production :
    • Connaissance approfondie des mécanismes de sécurité (chiffrement, gestion des tokens, etc.) et des standards de conformité du secteur financier.

3. Bons points

  • Expérience préalable dans le secteur fintech ou sur des projets liés aux paiements est un réel avantage.
  • Connaissance d’outils d’infrastructure-as-code (Terraform, Ansible) pour automatiser la gestion de l’infrastructure.
  • Familiarité avec des technologies front-end (React, React native, Next.Js,) pour faciliter les échanges inter-équipes.
  • Connaissance des outils collaboratifs (Jira, Confluence, GitHub).
  • Anglais courant (niveau professionnel acceptable ou plus).

4. Avantages

  • Salaire compétitif, aligné sur les tendances du marché. Accessible dans le formulaire de candidature.
  • Evoluer au sein d’une entreprise à la culture organisationnelle saine, motivante, transparente.
  • Faire partie d’une équipe brillante, agile, expérimentée, aux ambitions de “Licorne”.
  • Progression salariale basée sur les évaluations périodiques de performance (performance reviews).
  • Nouvel ordinateur MacBook Pro / Air ou PC, 3 mois après le démarrage.
  • Couverture assurance maladie.
  • Budget de 150 000 FCFA par an pour toute formation de ton choix.
  • Goodies Maagot.

Partager sur :

L’expérience financière gratifiante™