Contribuer à la définition de la vision et de la feuille de route pour les produits, architectures et solutions commercialisées et utilisées.
Comprendre les besoins du projet et participer à la collecte des exigences techniques.
Développer des composants, fonctionnalités et services bien conçus, testés, lisibles et maintenables, en suivant les principes de “Clean Code”.
Expliquer les différents compromis réalisés lors des prises de décisions techniques.
Collaborer avec les concepteurs et architectes pour optimiser les designs applicatifs et améliorer la stabilité, performance, disponibilité et sécurité des applications et services.
Participer activement aux revues de code afin d’assurer la qualité du code et partager les connaissances au sein de l’équipe.
Développer, exécuter et maintenir des tests unitaires, fonctionnels, d’intégration, End-2-End, et participer à leur automatisation.
Travailler en étroite collaboration avec les designers et product designers pour créer des expériences utilisateurs remarquables.
Communiquer régulièrement avec les membres de l’équipe de développement et être capable de les challenger sur des aspects techniques.
Contribuer de manière proactive à la résolution des incidents.
Tenir à jour la documentation et les pratiques permettant d'éviter la répétition des décisions.
Gérer efficacement les priorités et segmenter son temps de manière optimale.
Exigences minimales
Baccalauréat en informatique / ingénierie ou équivalent.
Expérience avérée en développement logiciel (5+ ans), dont au moins 2 ans en développement mobile natif Android (JAVA ou Kotlin).
Expérience dans l’intégration d'APIs (RESTful / GraphQL) dans des applications mobiles.
Expérience dans la création d’applications mobiles.
Maîtrise des techniques de débogage, de profilage et d'optimisation des performances.
Expérience en développement au sein d’une équipe Agile.
Connaissance des pipelines CI / CD et des outils de développement (GitHub, AppCenter, Firebase, Gradle).
Maîtrise du français.
Atouts
Curiosité et intérêt marqué pour les technologies émergentes.
Connaissance de l'intégration des librairies Gradle Android.
Automatisation des tests unitaires, graphiques et fonctionnels.
Compréhension des principes de tests mobiles End-2-End.
Expérience avec les plateformes cloud (AWS, Docker, Kubernetes).
Connaissance des outils Atlassian (JIRA, Confluence, etc.).