- Organiser et conduire des réunions de cadrage avec les clients et/ou les utilisateurs potentiels de l’application pour identifier et documenter précisément leurs besoins et les problématiques à résoudre, en utilisant des techniques de questionnement et d'écoute active, afin de garantir une compréhension complète des attentes
- Analyser la pertinence des demandes clients en évaluant leur faisabilité technique et leur impact sur le projet grâce à des critères d'analyse spécifiques pour faire ressortir les besoins implicites et proposer des alternatives optimisées
- Réaliser une maquette de l'application web à l’aide d’un outil de prototypage et en intégrant les principes d'UX/UI design afin de tester le fonctionnement de l'application auprès de l'équipe technique et du client
- Intégrer les pratiques d'accessibilité (directives WCAG), d'éco-conception et de responsive design lors de la conception des maquettes en prenant en compte les retours des utilisateurs et/ou des clients pour optimiser l'expérience utilisateur de tous les publics, y compris les personnes en situation de handicap
- Concevoir le schéma de la base de données relationnelle, en définissant les tables, les colonnes, et les relations entre elles, en utilisant des outils de modélisation comme MySQL Workbench ou ER Studio, pour structurer efficacement les données nécessaires au parcours utilisateur
- Créer un cahier des charges détaillé (spécificité technique, budget, délai) et un prototype en utilisant un outil collaboratif comme Notion et un logiciel de prototypage comme Figma afin d'obtenir un validation finale des clients avant de démarrer le développement de l'application web
- Identifier les évolutions clés du développement web et de l'IA en analysant des sources d'information spécialisées pour alimenter et challenger la conception de l'application web
- Vérifier que le projet respecte les standards de sécurité et de respect du RGPD, d’accessibilité web, et d’éco-conception en utilisant des checklists de conformité et des sessions de formation pour l'équipe de développement, afin de garantir que l'application respecte les exigences légales et éthiques tout au long de son cycle de développement
- Implémenter et gérer un système de gestion de projet en utilisant des outils type Kanban pour l'organisation des tâches et un diagramme de Gantt pour la planification des échéances, afin de coordonner efficacement les équipes de développement web et assurer le suivi précis du projet
- Organiser une réunion de lancement de projet pour présenter la feuille de route et le tableau Kanban, en utilisant des outils de présentation comme PowerPoint ou Google Slides afin de recueillir le feedback des équipes et ajuster le plan de projet
- Déployer des outils et des processus pour permettre la collaboration de plusieurs développeurs à distance, garder un historique des étapes du développement et permettre des revues de code en utilisant un service en ligne comme GitHub
- Mettre en place une organisation pour améliorer la productivité et permettre la montée en compétence des équipes en utilisant des outils d'assistance IA au codage comme Copilot et/ou ou en instaurant des sessions de feedback collaboratives (peer programming) et/ou des rétrospectives
- Créer l'architecture backend pour le stockage des données en utilisant des bases de données relationnelles comme MySQL ou PostgreSQL, afin d'assurer une gestion efficace et sécurisée des données
- Développer des services avancés de transformation et de mise en forme des données brutes afin de les conserver de manière sécurisée et de permettre l'utilisation de modèles d'IA (RAG) à l’aide de requêtes SQL, de scripts et/ou des lignes de commandes et en collaborant avec des experts data (Data Engineers)
- Appliquer les principes de sécurité dès les premières étapes du développement de l'application web en intégrant des mesures de sécurité comme la mise en place de certificats SSL pour prévenir les vulnérabilités courantes
- Développer le front-end de l'application en employant des langages de programmation tels que Rails ou React pour proposer une expérience utilisateur réactive et conforme aux maquettes et prototypes validés par le client et assurer une intégration fluide avec le back-end.
- Sélectionner et intégrer des librairies ou API externes pertinentes de manière sécurisée, telles que des services de paiement, des modèles d'IA ou d'authentification, en évaluant leur documentation technique, leur fiabilité, leur niveau de sécurité et leur compatibilité avec l'architecture de l'application, pour enrichir la solution sans réinventer des fonctionnalités existantes.
- Concevoir un système de tests manuels (Bug Bash) en utilisant la méthodologie TDD (Test-Driven Development) et en élaborant une liste complète de cas d'utilisation et de scénarii d'exception afin de garantir la qualité et la fiabilité de l'application web.
- Développer et automatiser des tests unitaires et fonctionnels en utilisant des frameworks comme RSpec ou Jest et/ou en collaborant avec des experts DevOps pour valider régulièrement chaque fonctionnalité de l'application web
- Préparer des démonstrations intermédiaires de l'application en utilisant des environnements de test, pour présenter les fonctionnalités développées et l'avancement du projet, afin de recueillir des retours des clients et des utilisateurs, y compris ceux en situation de handicap
- Proposer des solutions techniques et/ou adapter les priorités et les tâches en analysant les résultats des tests effectués et les retours utilisateurs afin de répondre aux nouvelles exigences et d'optimiser les délais de livraison
- Configurer l'environnement de production sur des serveurs, en choisissant une solution d'hébergement adaptée (comme AWS, Google Cloud, ou Heroku) et en mettant en place les services nécessaires (bases de données, stockage, calcul), pour garantir la disponibilité et la scalabilité de l'application web
- Réaliser le déploiement de l'application web en utilisant des outils d'intégration continue et de déploiement continu (CI/CD) comme Jenkins, GitLab CI, ou GitHub Actions, pour automatiser le processus de mise en production et faciliter les mises à jour futures de l'application
- Produire et enrichir la documentation du code en utilisant des plateformes collaboratives telles que GitHub ou Notion et des outils d'IA générative comme ChatGPT afin de garantir le partage des connaissances entre les équipes
- Présenter l'application web finalisée et la documentation utilisateur en s'adaptant au public visé à l'aide d'un outil de présentation comme Google Meet ou Loom pour garantir une compréhension claire et inclusive auprès de toutes les parties prenantes
- Configurer des systèmes de supervision en utilisant des outils comme Nagios ou Prometheus, afin de surveiller en temps réel l'état de l'application et des services d'hébergement, pour détecter les anomalies rapidement
- Surveiller les annonces et les mises à jour des frameworks de langage, des API et des fournisseurs de services cloud, en utilisant des outils de veille technologique, afin d'anticiper les changements et d'assurer la stabilité de l'application
- Analyser les erreurs et bugs en consultant les logs des outils d'alerte et les données des outils d'analyse et en sollicitant les équipes afin d'identifier les causes profondes des dysfonctionnements et de proposer des solutions correctives
- Mettre en place un outil d’analyse du trafic comme Google Analytics ou Hotjar en le connectant au code source de l’application afin de de comprendre le comportement des utilisateurs et d'améliorer l'application web dans le respect du règlement général sur la protection des données (RGPD)
- Mesurer et optimiser les performances de l'application web en installant des outils et des frameworks dédiés et en analysant leurs résultats afin d'assurer une fluidité optimale de l'application web et des fonctionnalités basées sur l'IA
- Développeur/euse d'applications mobiles
- Ingénieur/e études et développement en logiciels de simulation
- Ingénieur/e logiciel
- Testeur/euse en informatique
- Développeur/euse informatique
- Cogniticien/ne
- Développeur/euse multimédia
- Ingénieur·e en intelligence artificielle
- Cheffe de projet numérique responsable
- Scrum master