Les détails techniques

  • Équipe : Ingénierie
  • Contrat : CDI
  • Lieu : Télétravail (en Europe)
  • Rythme : Temps plein
  • Salaire : de 55 000 € à 65 000 €
  • Statut : À pourvoir
  • Publié le :
Envoyer une candidature

Développeur back-end (H/F)

Introduction

Nous recrutons une personne au poste de développeur back-end pour nous aider à concevoir et créer des produits bancaires de qualité.

Nous construisons depuis 4 ans une banque pour les entreprises européennes. De l’ingénierie, aux règles métier, en passant par le design, tout ou presque reste à inventer.

À propos du poste

Le rôle

Ce rôle consiste à travailler au sein de notre équipe Core Banking System (CBS), le cœur de notre infrastructure technique, écrit en Elixir (~10%) et Kotlin (~90%), et que nous avons choisi de développer intégralement en interne. En travaillant sur notre CBS, vous contribuerez au développement de notre système de gestion des transactions : connexion aux systèmes de paiement, au registre des opérations (ledger), détection de la fraude, gestions de nos utilisateurs, création de nouveaux produits bancaires, etc.

Plus largement, vous développerez également les API qui permettent de faire communiquer notre back-end avec nos applications (sur le web comme sur mobile). Vous intégrerez aussi les services tiers sur lesquels nous nous appuyons. Vous serez le premier interlocuteur technique sur nos projets, le point de départ de nos développements.

Notre équipe CBS travaille également au développement de l'infrastructure de nos outils de gestion de données, regroupés au sein de notre Data Management Platform (DMP). Ce DMP est la mémoire de notre système, ces données récoltées nous permettant de répondre aux exigences réglementaires, d'analyser et piloter notre banque. Par exemple, nous créons régulièrement des tableaux de bord afin de veiller à bien diversifier nos risques quand nous accordons des crédits ou de suivre nos flux entrants et sortants et ainsi faciliter la gestion de notre trésorerie.

Plus globalement, en tant que développeur back-end, vous alternerez entre des moments de discussion et des moments de création, entre conception et réalisation. Vous écrirez du code, bien sûr, mais pas que, vous écrirez aussi des tests et de la documentation pour aider vos collègues à suivre vos avancées — entre autres. Vous apprendrez de nous et nous apprendrons de vous : vous relirez le code de vos pairs, vous corrigerez des bugs, et vous nous aiderez à maintenir un haut niveau d’exigence technique.

Vous pourrez donner votre avis sur de nombreux sujets en utilisant nos canaux de discussion dévolus à la collaboration : Confluence, pour les discussions asynchrones, fouillées, documentées ; et Slack, pour les discussions brèves, rapides, informelles.

L’équipe

Nous construisons nos produits et notre organisation dans le calme, en ménageant à chacun des périodes de travail sans interruption, dans un environnement propice à la concentration. Notre organisation interne nous permet de pousser régulièrement du code en production.

Pour vous donner une meilleure idée des sujets sur lesquels travaillent nos équipes techniques, voici quelques liens vers des articles et des présentations :

Bien que nous nous projetions sur plusieurs années, nous restons curieux et ouverts aux nouveautés, à tout ce qui permet de ne pas stagner. Si vous avez besoin d’un livre, nous vous le commanderons pour l’ajouter à notre bibliothèque. Si vous souhaitez assister à une conférence, nous pouvons vous payer les billets, le transport et l’hébergement sur place.

Les responsabilités

Dans les grandes lignes, vous aurez pour mission de :

  • Écrire du code élégant, calibré pour un fonctionnement en production à grande échelle. Ce que vous allez créer est appelé à durer.
  • Contribuer à la direction technique de nos produits, en prenant la responsabilité de certains projets.
  • Partager votre expertise avec vos collègues, en participant à des revues de code, en rédigeant de la documentation ou en organisant des présentations internes.
  • Proposer de nouveaux outils, de nouvelles approches de développement, dans le but d’améliorer notre façon de travailler.
  • Collaborer avec nos product designers et nos développeurs, de la conception à la mise en production de fonctionnalités.
  • Documenter (en anglais) les API et les applications que vous contribuez à créer.
  • Prendre en compte les avis de nos banquiers et de nos clients pour améliorer les produits que nous leurs proposons. Voyez ça comme du service client par procuration.

À propos de vous

Profil recherché

Vous êtes une personne expérimentée et autonome. Vous appréciez les discussions et les compromis qu’implique l’ajout de fonctionnalités dans des applications complexes. Vous aimez vous concentrer sur votre code, mais vous savez aussi que votre travail ne s’arrête pas quand votre fonctionnalité passe en production. Vous prenez du plaisir à créer qu’à collaborer avec des product managers et des designers pour faire en sorte que vos créations soient utiles sur la durée.

Vous n’êtes pas infaillible et ne pensez pas l’être. Vous avez déjà cassé des environnements de production et redoublé d’efforts pour les réparer, sans paniquer. Vous savez utiliser Git et vous maîtrisez les grands principes du contrôle de versions, de l’intégration continue, des revues de code et de la documentation.

Nous embauchons des personnes curieuses, audacieuses et humbles, à qui nous accordons ensuite beaucoup d’autonomie pour apprendre et créer. Nous nous intéressons plus à ce que vous avez fait depuis votre sortie de l’école, qu’au diplôme que vous y avez obtenu. À nos yeux, des projets intelligemment menés en disent plus long que n’importe quel pédigrée académique.

Compétences attendues

Idéalement, vous avez :

  • Au moins 5 ans d’expérience avec des langages de programmation orientés objet. Nous utilisons Kotlin.
  • Des compétences en matière de système distribué, d’architecture logicielle, de montée en charge et d’optimisation des performances.
  • Une bonne connaissance des bases de données relationnelles et l’habitude d’écrire du SQL. Nous utilisons PostgreSQL.
  • Vous avez déjà travaillé sur des systèmes orientés événements. Nous utilisons Kafka et AMQP.
  • L’habitude de collaborer avec d’autres personnes sur du code (tests, revues, intégration continue, contrôle de versions, documentation).
  • L’envie de faire ponctuellement un peu de développement front-end, pour donner forme à vos données et permettre à vos collègues d’en saisir par le biais d’interfaces simples.
  • De l’empathie pour les personnes qui utilisent ce que vous créez — vous aurez régulièrement des interactions avec nos banquiers et nos clients.
  • Un bon niveau d’anglais à l’écrit — notre documentation est en anglais.

Note : vous n’avez pas besoin de posséder 100 % des compétences listées ci-dessus pour nous écrire. Si vous pensez avoir la plupart des qualités requises pour ce poste, à l’exception d’une ou deux, écrivez-nous quand même. Et si une petite voix vous dit que vous feriez mieux d’attendre, ignorez-la et envoyez-nous votre candidature malgré tout. Les personnes qui travaillent chez Memo Bank ne cochaient pas toutes 100 % de nos cases au moment où elles nous ont écrit. Elles ont simplement tenté leur chance en se disant qu’elles feraient de leur mieux si elles étaient prises. Vous êtes sans doute dans le même état d’esprit, alors allez-y.

Comment postuler

La candidature

Si vous désirez nous rejoindre, voici comment faire. Envoyez-nous votre CV (ou votre LinkedIn) et un texte (en français ou en anglais) nous expliquant pourquoi vous postulez. Nous n’attendons pas une lettre de motivation formelle. Parlez-nous plutôt de ce que vous pensez apporter à Memo Bank. Dites-nous ce que vous aimeriez que Memo Bank vous apporte en retour. N’ayez pas peur de mettre un peu de vous dans chacune de vos phrases. Votre texte sera lu avec attention par vos futurs collègues.

Vous n’aurez pas de points bonus si vous écrivez un long texte, pas de pénalités si vous faites court. Laissez de côté les passages que nous pourrions être tentés de sauter. Concentrez-vous sur ce qui vous tient à cœur.

Nous sommes conscients de vous demander un effort. Vous avez sans doute déjà un métier, vous allez prendre sur votre temps pour nous écrire et nous vous en sommes reconnaissants. La balle est dans votre camp maintenant. Nous avons hâte de vous lire.

Les entretiens

Voici ce à quoi vous pouvez vous attendre si votre candidature est retenue :

  1. Premier entretien téléphonique avec notre équipe de recrutement (30 minutes) ;
  2. Test technique à faire chez vous à votre rythme (1 heures de travail environ) ;
  3. Entretiens avec des membres de différentes équipes par visioconférence (3 heures).

Memo Bank est membre du collectif IDEA pact, une communauté dont les membres s’engagent à favoriser l’inclusion, la diversité, l’équité et l’accessibilité en entreprise — dès le recrutement. Nous avons à cœur d’offrir un environnement de travail inclusif, c'est-à-dire un espace où chaque personne peut exprimer son individualité de manière authentique, sécurisante et valorisante. Nous sommes convaincus que c’est la diversité de parcours, expériences, cultures et perspectives qui fait la richesse d’une équipe, et le succès d’un projet. Nous avons construit un processus de recrutement basé sur les compétences, dont vous trouverez le détail sur notre blog. Si vous avez besoin d’un aménagement au cours de l’une de ses étapes, faites-le nous savoir dans votre candidature ou lors de votre entretien téléphonique.

Envie de nous rejoindre ?

Envoyer une candidature

Vous aimez l’annonce ?

Découvrez l’équipe qu’elle concerne.

Voir l’équipe

Envie d’autre chose ?

Jetez un œil à nos autres annonces.

Voir les offres