Développeur backend
À propos du poste
En tant que développeur backend, vous concevez, construirez et maintenez les systèmes et infrastructures côté serveur qui alimentent nos produits. Vous travaillerez en étroite collaboration avec les développeurs frontend, les chefs de produit, les équipes QA et DevOps pour fournir des services backend fiables, évolutifs et sécurisés. Vous prendrez en charge le développement de l’API, l’architecture des bases de données et les intégrations système tout en veillant à ce que tous les composants backend respectent les normes de performance, de sécurité et de qualité.
Gestion
Responsabilités
- Concevoir, développer et maintenir des services backend, des API et des microservices robustes
- Construire et optimiser des schémas de base de données, des requêtes et des modèles de données pour la performance et la scalabilité
- Intégrer des services tiers, des API et des systèmes internes selon les besoins du produit
- Collaborer avec les développeurs frontend pour définir et fournir des API bien structurées et documentées
- Écrire du code propre, testable et maintenable selon les normes d’ingénierie établies
- Participer à des revues de code, fournir et recevoir des retours techniques constructifs
- Identifier, déboguer et résoudre les défauts backend et les goulots d’étranglement de performance
- Contribuer aux discussions sur l’architecture système et aux décisions de conception technique
- Veillez à ce que les systèmes backend respectent les meilleures pratiques de sécurité et les exigences de conformité
- Surveillez la santé du système, intervenez en cas d’incidents et mettez en place des mesures préventives
- Maintenir une documentation approfondie pour les services, les API et les composants d’infrastructure
- Collaborer avec le QA pour soutenir les cycles de test et garantir la fiabilité du backend
- Participez à des cérémonies agiles, incluant des stand-ups, la planification de sprints, des rétrospectives et des démonstrations
- Évaluer et améliorer continuellement les processus backend, les outils et les pratiques de développement
Exigences
- La maîtrise de l’anglais écrit et oral est obligatoire
- Licence en informatique, génie logiciel, ou domaine connexe, ou expérience pratique équivalente
- 3+ ans d’expérience professionnelle en développement backend
- Forte maîtrise d’un ou plusieurs langages backend tels que C#, Node.js, Go, Python, Java, Ruby, ou similaires
- Solide expérience dans la conception et le travail avec des bases de données relationnelles (PostgreSQL, MySQL) et NoSQL (MongoDB, Redis ou similaires)
- Expérience de la création et de la consommation d’API RESTful et/ou de services GraphQL
- Familiarité avec les plateformes cloud telles qu’AWS, GCP ou Azure et leurs services principaux
- Compréhension des mécanismes d’authentification et d’autorisation, y compris OAuth, JWT et SSO
- Expérience avec le contrôle de versions utilisant Git et les flux de travail collaboratifs de développement
- Solide compréhension des principes de l’ingénierie logicielle, notamment la scalabilité, la fiabilité, la sécurité et la maintenabilité
- Solides compétences en résolution de problèmes et capacité à travailler efficacement en équipe
Compétences préférées
- Expérience avec l’architecture de microservices et les outils de conteneurisation, y compris Docker et Kubernetes
- Familiarité avec les systèmes de mise en file d’attente de messages tels que RabbitMQ, Kafka ou similaires
- Exposition aux pipelines CI/CD et aux pratiques DevOps
- Expérience avec les stratégies de mise en cache et les techniques d’optimisation des performances
- Connaissance de l’architecture de produit SaaS et des patrons multi-locataires
- Familiarité avec les outils d’infrastructure en tant que code tels que Terraform ou Ansible
