2020-02294 - Developpeur back-end pour Software Heritage

Type de contrat : CDD

Contrat renouvelable : Oui

Niveau de diplôme exigé : Bac + 5 ou équivalent

Fonction : Ingénieur scientifique contractuel

Niveau d'expérience souhaité : De 3 à 5 ans

Contexte et atouts du poste

Software Heritage est un projet ambitieux, entièrement logiciel libre (FOSS) et à but non lucratif, dont l'objectif est de récupérer, préserver dans le très long terme et partager la totalité du code source qui est publiquement disponible, avec l'historique de son développement (p.ex., comme stocké dans des systèmes de gestion de version). L'archive de Software Heritage contient déjà plus de 6 milliards des fichiers source uniques récupérés à partir de plus de 90 millions de projets de développement logiciel.

The Software Heritage offices are hosted at the Inria Paris research center, located at 2, Rue Simone Iff, in Paris.

Mission confiée

Nous recherchons un développeur back-end pour notre équipe de développement et travailler sur les axes suivants:

  • mettre en place de nouvelles fonctionnalités Software Heritage selon la feuille de route du projet et les spécifications fournies par l'équipe de direction
  • maintenir une base de code saine en utilisant les meilleures pratiques de développement logiciel de pointe (DVCS, intégration continue, tests unitaires, refactoring, documentation, révision de code, etc.),
  • participer activement aux communautés FOSS de composants logiciels utilisés par Software Heritage,
  • concevoir l'architecture des composants à venir de l'écosystème logiciel Software Heritage.

Principales activités

  • développement logiciel pour Software Heritage
  • documentation, revue de code, test et intégration
  • participation active à la vie d'équipe
  • intéraction avec les communautés Open Source pertinentes et avec les partenaires de Software Heritage

Compétences

Les compétences attendues d'un bon candidat sont les suivantes:

  • Python
  • Bonne connaissance des systèmes GNU / Linux
  • Connaissance pratique de Postgres ou d'autres SGBDR
  • Connaissance pratique des architectures logicielles distribuées
  • Principes de conception des architectures REST et microservices
  • Bon niveau d'anglais (écrit et oral)
  • Bonnes compétences relationnelles et communicationnelles

Une connaissance pratique d'une ou plusieurs des techniques et technologies suivantes serait un plus:

  • Expérience avec des solutions de stockage d'objets à grande échelle (Ceph, blob basé sur le cloud stockage, ZFS, Swift, etc.)
  • Technologies de conteneurs (docker, docker-compose, kubernetes, etc.).
  • Programmation système en C
  • Langage de programmation Rust
  • Programmation fonctionnelle
  • Expérience avec les technologies de planification distribuée (RabbitMQ, Kafka, etc.)

Tout le code développé dans le cadre de ce poste sera publié sous une licence FOSS, généralement copyleft (GPL3 ou AGPL3). Les contributions en amont aux produits FOSS dont nous dépendons sont fortement encouragées.

Avantages

  • Restauration subventionnée
  • Transports publics remboursés partiellement

Rémunération

En fonction des diplômes et de l'expérience professionnelle