
Emumba est un cabinet de conseil en ingénierie et en innovation fondé en 2011, qui aide les entreprises et les startups à créer, moderniser et exploiter des logiciels cloud natifs. Ses activités couvrent l’ingénierie cloud sur AWS, l’IA générative, la catalogage et la découverte des données, la qualité des données, l’ingénierie des données, la sécurité Zero Trust, le DevOps, l’automatisation des infrastructures, l’assurance qualité et l’expérience utilisateur. Emumba combine ces compétences pour fournir des applications d’entreprise et des intégrations évolutives à des clients de différents secteurs.
Ingénieur senior Go
Développez des services Go résilients et observables chez Emumba, tout en contribuant à l’architecture des systèmes distribués. Faites progresser les performances, la fiabilité et les pratiques d’ingénierie de l’équipe.
Description
- Développer des services et des API Go évolutifs et prêts pour la production
- Piloter les fonctionnalités de la conception architecturale et du développement jusqu’au déploiement et à la supervision
- Collaborer avec les équipes produit et infrastructure pour définir l’orientation technique
- Améliorer les performances, l’évolutivité et la tolérance aux pannes du système
- Renforcer l’observabilité grâce aux journaux structurés, aux traces et aux métriques
- Résoudre des problèmes complexes de concurrence et de systèmes distribués
- Examiner le code avec rigueur et maintenir des normes d’ingénierie élevées
- Accompagner les ingénieurs juniors et contribuer à une solide culture technique
- Améliorer les pipelines de déploiement et les pratiques opérationnelles
Exigences
- Avoir plus de 5 ans d’expérience en ingénierie logicielle, dont plus de 4 ans de pratique approfondie de Go
- Maîtriser les mécanismes internes de Go, notamment les goroutines, les canaux, le comportement de l’ordonnanceur, les primitives de synchronisation et le package context
- Appliquer les modèles de concurrence de Go et des techniques d’optimisation des performances
- Posséder de solides bases en informatique : structures de données, algorithmes, analyse de complexité et conception de systèmes
- Comprendre les concepts des systèmes d’exploitation liés au comportement à l’exécution
- Connaître les principes des systèmes distribués, notamment le théorème CAP, les modèles de cohérence, le consensus et la tolérance aux pannes
- Avoir de l’expérience avec AWS, GCP ou Azure et des environnements conteneurisés utilisant Docker et Kubernetes
- Avoir de l’expérience avec des bases de données SQL ou NoSQL et des files de messages comme Kafka ou RabbitMQ
- Comprendre les pipelines CI/CD et les pratiques DevOps
- Communiquer et collaborer efficacement
Avantages
- Relever des défis backend exigeants sur le plan technique
- Contribuer à l’architecture du système et à l’orientation de l’ingénierie à long terme
- Travailler avec des ingénieurs qualifiés dans une culture axée sur la clarté et la responsabilisation
- Accompagner d’autres personnes et exercer un leadership grâce à son expertise technique