Point your AI agent at freehire and let it find you a job.

Get the CLI →

Inria

NewBe an early applicant

Ingénieur Backend

Posted
Discussion

Summary

Backend engineer on Software Heritage, a non-profit FOSS project hosted by Inria that archives the world's publicly available source code (27B+ files, 5B+ commits). Day to day: building new features, optimizing the Git ingestion platform, extending archiving to new sources, and maintaining a healthy Python codebase with PostgreSQL, Docker/Kubernetes and FOSS practices.

Corps d'accueil : Ingénieur de Recherche (IR)

Software Heritage est un projet d’archive universelle du code source logiciel, 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 27 milliards de fichiers source uniques et 5 milliards de commits, récupérés à partir de plus de 300 millions de projets de développement logiciel. L’initiative Software Heritage, hébergée par la Fondation Inria est un projet entièrement logiciel libre (FOSS) et à but non lucratif.

Nous recherchons un·e ingénieur·e back-end pour rejoindre notre équipe de développement. Le/la candidat(e) doit maîtriser le langage de programmation Python et manifester un vif intérêt pour les logiciels libres et open source (FOSS). Il/elle intégrera notre équipe d'archivage et travaillera dans un premier temps à l'optimisation de notre plateforme d'ingestion Git, puis à l'extension de l'archivage à de nouvelles sources de code source.

En tant que membre de l'équipe Software Heritage, le/la candidat(e) participera au
développement logiciel de la plateforme Software Heritage. Dans le cadre de ce poste, le/la candidat(e) travaillera principalement sur :

1. la mise en œuvre de nouvelles fonctionnalités pour Software Heritage conformément à la feuille de route du projet et aux spécifications fournies par l'équipe de direction,

2. la maintenance d'une base de code saine en utilisant les meilleures pratiques de développement logiciel (DVCS, intégration continue, tests unitaires, refactoring, documentation, revue de code, etc.),

3. la participation active aux communautés FOSS des composants logiciels utilisés par Software Heritage,

4. la conception de l'architecture des futurs composants de l'écosystème logiciel de Software Heritage.

Les compétences suivantes sont attendues :

- 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
- Connaissance pratique des technologies de conteneurisation (Docker, Docker Compose, Kubernetes, etc.).
- Bon niveau d'anglais (écrit et oral)
- Bonnes aptitudes relationnelles et de communication

La connaissance et l'expérience des éléments suivants seront considérées comme un plus :

- Expérience des solutions de stockage d'objets à grande échelle (Ceph, stockage blob dans le cloud, ZFS, Swift, etc.)
- Langage de programmation Rust
- Programmation fonctionnelle
- Expérience des technologies de planification distribuée (RabbitMQ, Kafka, etc.)

  • Restauration subventionnée
  • Transports publics remboursés partiellement
  • Congés: 7 semaines de congés annuels + 10 jours de RTT (base temps plein) + possibilité d'autorisations d'absence exceptionnelle (ex : enfants malades, déménagement)
  • Possibilité de télétravail (après 6 mois d'ancienneté) et aménagement du temps de travail
  • Équipements professionnels à disposition (visioconférence, prêts de matériels informatiques, etc.)
  • Prestations sociales, culturelles et sportives (Association de gestion des œuvres sociales d'Inria)
  • Accès à la formation professionnelle
  • Sécurité sociale

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

Le/la candidat(e) doit avoir une expérience de participation à des projets FOSS existants, à quelque titre que ce soit (développeur(euse), animateur(trice) de communauté, rédacteur(trice) technique, etc.). En fonction de son expérience, nous attendons du/de la candidat(e) qu'il/elle fasse preuve d'autonomie et d'organisation. Une bonne connaissance des bonnes pratiques de développement logiciel, notamment dans le contexte du développement de logiciels libres, est indispensable.

Le/la candidat(e) devra :

- maîtriser Python et les outils de son écosystème (pypi, pip, virtualenvs, etc.),
- connaître l’environnement GNU/Linux, de préférence Debian (ou distributions dérivées),
- être rigoureux dans son organisation quotidienne, notamment avec les outils de gestion de versions (GitLab, GitHub, etc.),
- être à l’aise avec les pratiques des communautés de développement de logiciels libres (organisation distribuée, communication via IRC et listes de diffusion, sprints, etc.).

Skills

Apply

See also

Backend jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.