Compétences attestées :
Concevoir et structurer des interfaces web pour produire des sites conformes aux exigences des standards d'accessibilité du W3C et à l'optimisation pour le référencement (SEO) Créer et intégrer, grâce au CSS3, des interfaces intuitives pour les utilisateurs (UI), en tenant compte de la compréhension approfondie de l'expérience utilisateurs (UX) et des meilleures pratiques en matière de design d'interaction Élaborer et réaliser des interfaces web adaptatives pour assurer une expérience utilisateur cohérente et de qualité sur tous types de terminaux Implémenter des interactions côté client pour concevoir des fonctionnalités interactives (validation de formulaires, animations…) permettant d’améliorer l’engagement utilisateur et l’interactivité du site web Optimiser la communication asynchrone entre les utilisateurs et les serveurs en développant des requêtes AJAX pour accroître la réactivité et la performance des applications web Structurer et intégrer des interfaces utilisateur riches et réactives adaptées aux besoins spécifiques du projet pour améliorer la productivité et la maintenabilité du code Configurer et personnaliser l’environnement de développement en paramétrant un IDE (environnement de développement intégré) et en utilisant le terminal afin de l'aligner de l'environnement de production cible Élaborer et implémenter des solutions back-end en appliquant la programmation orientée objet (POO), en utilisant des architectures MVC ainsi que les Frameworks adaptés pour structurer un code robuste et maintenable Optimiser et sécuriser les serveurs web, en ajustant les paramètres serveur et en employant des commandes avancées via le terminal pour améliorer les performances et la sécurité (SSH, MFA) des applications web en fonction de son OS (Linux, Windows) Élaborer et administrer des bases de données relationnelles (telles que MySQL ou PostgreSQL) et en utilisant SQL et en respectant les principes de normalisation pour assurer l'intégrité, la performance et la sécurité des données Concevoir et gérer l'administration des bases de données NoSQL, telles que le stockage de documents, les bases de données clé-valeur, en colonne ou les graphes, en tenant compte du besoin de l'application, pour optimiser et fluidifier l'utilisation de grandes volumétries de données non structurées Arbitrer et décider du choix entre les bases de données relationnelles et NoSQL en tenant compte des caractéristiques de chaque catégorie de base de données pour optimiser l'application en fonction de ses besoins Mettre en œuvre des stratégies de sauvegarde et de récupération en tenant compte des politiques de sécurité et de continuité d'entreprise pour protéger les données contre les pertes et les sinistres Concevoir des API (application programming interface) en utilisant des architectures et des langages de programmation pertinents en prenant en compte les besoins d'intégration et d'interopérabilité des systèmes pour faciliter et optimiser les échanges de données entre différents services Sécuriser les API, en mettant en œuvre des protocoles d'authentification et d'autorisation en utilisant des outils et des pratiques de sécurité standardisés pour protéger les données et les interactions contre les accès non autorisés et les vulnérabilités Réaliser différents tests sur les API (tests unitaires, d'intégration, de charge et de performance) avec des frameworks pour garantir la fiabilité et la robustesse des API dans des conditions d'utilisation variées et à fort trafic Réaliser et maintenir la documentation de l'API en collaboration avec les développeurs, en utilisant des outils tels que Swagger pour les API ou des générateurs de documentation de code dans le but de faciliter la maintenabilité et l'évolutivité de l'API Évaluer les besoins et intégrer les solutions cloud pour améliorer et moderniser les architectures des systèmes d'information Analyser les besoins techniques en s'appuyant sur des connaissances avancées des structures telles que monolithiques, microservices, serverless ou n-tiers pour sélectionner l'architecture d'application la plus appropriée aux exigences spécifiques du projet Administrer et rationaliser les plateformes cloud pour assurer l'équilibre entre la performance élevée et la gestion budgétaire efficace des services cloud Assurer la gestion et le suivi des révisions de code source à l’aide d'un logiciel de gestion de versions comme Git afin de garantir la traçabilité des changements et la coordination des versions au sein de l’équipe de développement Définir et appliquer des procédures de fusion de code et de résolution de conflits à l'aide de plateformes telles que GitHub ou GitLab pour faciliter le travail collaboratif, la révision de code et l'intégration continue (CI) Développer des environnements virtualisés en utilisant une plateforme conteneurisation pour standardiser et simplifier le déploiement d'applications sur tous types d'infrastructure Coordonner les containeurs avec des logiciels d'orchestration en garantissant l'activité des pipelines d'intégration et de déploiement continus pour optimiser la résilience et la performance des applications Automatiser la gestion et le déploiement des ressources cloud en appliquant les principes DevOps et en paramétrant les mesures de sécurité des applications et des données hébergées pour l’optimisation continue des processus de développement et de déploiement Analyser les besoins des utilisateurs et des parties prenantes à partir de résultats d'enquêtes et d'interviews pour identifier les objectifs et déterminer les fonctionnalités du projet numérique Étudier et évaluer la faisabilité du projet en tenant compte de la mobilisation des ressources humaines et matériels disponibles et nécessaires et de la pertinence et la faisabilité technique du projet numérique, afin d'atteindre les objectifs de l'application Collaborer activement à la rédaction du cahier des charges fonctionnels et/ou à la note de cadrage en évaluant les différentes solutions techniques et les performances attendues pour chaque fonctionnalité afin de définir les modalités du projet. Planifier et conduire le projet en appliquant des méthodologies de gestion de projet (méthodologie en V, en cascade ou Agile) selon le contexte, pour une planification et exécution efficaces des projets informatiques en respectant le plan de projet établi et en tenant compte des risques identifiés Coordonner les équipes de projet, en utilisant des outils collaboratifs pour la planification et le suivi des tâches et en accompagnant les compétences individuelles et collectives de l'équipe afin de garantir l'alignement des ressources avec les besoins du projet et d'ajuster la planification en fonction des écarts identifiés Effectuer un suivi continu des indicateurs de performance, en intégrant des outils de suivi budgétaire et de gestion des coûts, pour maintenir une gestion financière précise et proactive du projet Réaliser des évaluations périodiques de l'avancement de projet par des revues de performance et des rapports d'étape, pour mesurer l'atteinte des objectifs et l'efficacité des méthodologies de gestion de projet mises en œuvre Effectuer des revues de code en utilisant des outils d'analyse en respectant les principes de développement et les standards de l'entreprise, pour assurer une qualité et une maintenabilité élevées du code Concevoir et mettre en œuvre des tests automatisés en employant les meilleures pratiques et outils de test et en tenant compte des contraintes techniques et des exigences de performance pour valider la fiabilité et l'efficacité des applications Mettre en place, éditer et maintenir les documentations techniques complètes des applications et partager les connaissances au sein de l'équipe, en utilisant des plateformes collaboratives pour faciliter la maintenance et assurer l'évolutivité des systèmes Mobiliser ses connaissances technologiques, sa maîtrise de l'anglais et l'utilisation des fonctionnalités avancées des moteurs de recherches, en analysant les contenus de diverses sources d'informations Mettre en place une veille technologique en relation avec le périmètre d'un projet ou l'activité de l'entreprise Analyser les données brutes collectées dans la base de connaissance en comparant les différents résultats afin d'établir différentes hypothèses ou scénarii Diffuser les hypothèses ou scénarii à l'équipe de développement pour améliorer les connaissances et une montée en compétence de l'équipe de développement et le soutien du processus décisionnel et l'innovation au sein du projet
Voies d'accès à la certification :
Voies d'accès |
Composition des Jurys |
Après un parcours de formation sous statut d’élève ou d’étudiant
Non autorisé
|
|
En contrat d’apprentissage
Non autorisé
|
|
Après un parcours de formation continue
Non autorisé
|
|
En contrat de professionnalisation
Non autorisé
|
|
Par candidature individuelle
Non autorisé
|
|
Par expérience
Autorisé
|
|