top of page

Devenir Développeur Full Stack en Alternance

Prix

Financée par l'OCPO

Durée

450 heures

 A QUI S'ADRESSE CETTE FORMATION ? 

PROFIL DU STAGIAIRE

● Jeunes de moins de 36 ans

● Personnes de plus de 36 ans ayant une reconnaissance RQTH ou un projet de création d’entreprise à l’issue du contrat d’alternance

● Personnes de plus de 36 ans si le niveau de diplôme actuel est inférieur au niveau du titre visé par la présente formation

● Dispositif PRO A pour les salariés en entreprise


PRÉREQUIS

● Être titulaire d’un Bac + 2 ou d’un titre équivalent

● Avoir au moins un an d’expérience professionnelle cumulée en rapport direct avec le titre visé

● Disposer d’un ordinateur et d’une connexion internet durant toute la période de formation


CONTENU (PROGRESSION PÉDAGOGIQUE)


Bloc 1: Concevoir et modéliser une application (web, hybride, mobile ou desktop) ou l’évolution d’une application existante


● Analyser une demande de création ou d’évolution d’une application (web, hybride, mobile ou desktop) et élaborer un cahier des charges fonctionnel

● Analyser la demande initiale d’un client interne ou externe, afin de répondre de façon adaptée aux besoins exprimés, pour son domaine de compétences, dans le cadre d’un projet d’application (web, hybride, mobile ou desktop).

● Apporter son expertise technique, notamment en conseillant un client pour l’expression détaillée de son besoin d’application (web, hybride, mobile ou desktop) et la rédaction de tout ou partie de son cahier des charges fonctionnel.

● Préparer le déploiement d’un projet d’application (web, hybride, mobile ou desktop), par la mise en oeuvre d’outils et de méthodes de gestion de projet appliqués à chaque demande de développement en particulier

● Identifier les caractéristiques d’un projet d’application (web, hybride, mobile ou desktop), en termes de public utilisateur, besoins de référencement, sécurité, délais, budget et autres contraintes, afin d’élaborer la planification générale du projet, en se coordonnant avec les différentes parties prenantes.

● Travailler en mode agile, selon une méthode de gestion de projet adaptée, afin que le projet soit structuré et organisé selon un ensemble de valeurs, de principes et de pratiques communes à l’équipe impliquée.

● Mettre en oeuvre un environnement de développement collaboratif adapté à un projet d’application (web, hybride, mobile ou desktop), afin d’optimiser le temps de développement, le transfert de compétences auprès de ses pairs et la qualité logicielle.


➔ TD 1 - Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge »). À partir de la

note de cadrage complète du projet d’études propre au candidat, et des annexes de la note, le candidat doit, au regard du contexte proposé, formaliser par écrit :

E1 - Une présentation de synthèse et de reformulation de la demande client, présentant le public utilisateur, les besoins de référencement, de sécurité, et autres contraintes

E2 - Une planification prévisionnelle et une ébauche de budget,

E3 - Une note de synthèse présentant les préconisations techniques formulées pour le projet,

E4 - Une procédure de mise en oeuvre d’un environnement complet de développement basé sur le SCM1 GIT2 et l’utilisation de la virtualisation sur le poste de travail local,

E5 - Une note de synthèse proposant et justifiant l’utilisation d’une méthode de développement agile,

E6 - Une trame type de compte rendu d’activité correspondant à la méthode projet retenue lors de l’évaluation E5.

● Rédiger les spécifications techniques, conception et modélisation d’une application (web, hybride, mobile ou desktop)

● Concevoir une ou plusieurs maquettes « wireframe » (maquette fonctionnelle), en utilisant un outil dédié, afin de fournir l’ébauche d’une application à un client/ maître d’ouvrage

● Traduire des besoins client exprimés dans un cahier des charges fonctionnel, sous forme de spécifications techniques de besoin (STB), afin de constituer les dossiers de conception d’un projet d’application (web, hybride, mobile ou desktop).

● Modéliser une application (web, hybride, mobile ou desktop), afin d’abstraire la réalité, de déterminer l’architecture logicielle de l’application et d’obtenir une vision globale de celle-ci.

● Concevoir l’architecture des bases de données d’une application (web, hybride, mobile ou desktop), afin de représenter la structure et la logique de stockage de celles-ci, ainsi que la couche de persistance (sauvegarde et restauration des données), garantissant au client la gestion des informations nécessaires à son activité.

● Déterminer l’architecture logicielle d’une application (web, hybride, mobile ou desktop) à partir des dossiers de spécifications fonctionnelles et techniques, afin d’être en adéquation avec le niveau de qualité et de gestion des coûts attendu.

● Déterminer les moyens techniques et technologiques permettant d’assurer le respect des lois, normes et règlements (CNIL5 , RGPD 6) applicables aux données traitées et stockées dans une application, afin de les implémenter en phase de développement, et d’être en mesure de prévenir tout risque juridique en la matière.


➔ TD 2 – Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge »). À partir de la note de cadrage complète et du cahier des charges du projet d’études propre au candidat, celui-ci doit, au regard du contexte proposé :

E7 - Réaliser une présentation de maquette « wireframe » concernant une vue de l’application objet du projet

E8 - Constituer le dossier de conception traduisant les besoins du client exprimés dans le cahier des charges en spécifications techniques de besoin (STB), modéliser les cas d’utilisation, les classes d’analyse et de conception, le schéma entité association et le schéma des données, et décrire l’architecture logicielle choisie en vue du développement de l’application.


➔ TD 3 – Cas professionnel individuel écrit inclus dans le Dossier de validation (hors projet « fil rouge »). À partir d’un site web marchand existant fourni, non conforme et non optimisé, le candidat doit réaliser :

E9 - Un audit de conformité règlementaire RGPD du site, pour le traitement des données à caractère personnelles (sur le plan technique exclusivement).

● Réaliser une veille métier, technique, fonctionnelle et réglementaire, y compris liés à l’écoconception, l’accessibilité et la sécurité d’applications (web, hybride, mobile ou desktop)

● Proposer des solutions alternatives et/ou innovantes, issues de son activité de veille métier, afin de contribuer à l’atteinte de la promesse de valeur, ainsi qu’à la résolution de problèmes, lors d’un projet d’application (web, hybride, mobile ou desktop).


➔ TD 4 – Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge »)

E10 - On demande au candidat de formaliser par écrit une méthodologie de veille technologique relative au composants et technologies constitutifs de l’application (backend et front-end) développée pour son projet.


Bloc 2 : Développer la partie front-end d’une application (web, hybride, mobile ou desktop)


● Développer la partie front-end d’une application web, hybride, mobile ou desktop en utilisant plusieurs langages de programmation et en appliquant les bonnes pratiques d’UX design.

● Concevoir l’interface utilisateur d’une application (web, hybride, mobile ou desktop), afin qu’elle soit attrayante et fonctionnelle pour tous les utilisateurs, en conformité avec les maquettes précédemment validées.

● Sélectionner les éléments graphiques d’une application de telle façon qu’ils représentent l’identité visuelle du client et respectent sa charte graphique, afin de véhiculer l’image que le client souhaite transmettre.

● Mettre en oeuvre l’expérience utilisateur souhaitée dans la partie frontend d’une application (web, hybride, mobile ou desktop), en analysant et optimisant le parcours utilisateur, afin de le rendre le plus fluide et efficace possible, dans le respect des pratiques d’accessibilité à tous les publics.

● Utiliser un ou plusieurs langages de programmation spécifiques au développement front-end, pour produire un code qui satisfasse aux exigences qualité, sécurité et d’écoconception d’une application (web, hybride, mobile ou desktop).

● Consommer une API de manière sécurisée, afin d’intégrer des sources de données et des services tiers, au sein d‘une application (web, hybride, mobile ou desktop), en sélectionnant un format d’échange de données adapté aux de l’application et à son environnement.


➔ TD 5: Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge ») et présentée en soutenance. À partir de la note de cadrage complète, du cahier des charges et du dossier de conception comprenant les spécifications fonctionnelles et techniques du projet d’études propre au candidat, celui-ci doit, au regard du contexte proposé :

E1- Intégrer et développer intégralement la partie front-end en conformité avec le dossier de conception fourni, dans le respect de la charte graphique et des bonnes pratiques (UX, sécurité, écoconception),

E2 - Consommer une API tierce partie depuis la partie front-end de l’application.

● Tester la partie front-end d’une application web, hybride, mobile ou desktop.

● Tester la partie front-end d’une application (web, hybride, mobile ou desktop) d’un point de vue fonctionnel et technique, afin de garantir sa conformité vis-à-vis des spécifications, l’absence de dysfonctionnements et d’assurer la non-régression des composants implémentés.

● Industrialiser le développement de la partie front-end d’une application (web, hybride, mobile ou desktop), en automatisant notamment les processus d’assurance qualité, afin d’optimiser les ressources et délais nécessaires à la phase projet correspondante.

● Améliorer les performances SEO (Search Engine Optimization), c’est-à-dire le référencement naturel et marketing d’une application.

● Améliorer les performances SEO (Search Engine Optimization)/ référencement naturel et marketing d’une application (web ou hybride), en prévoyant les outils de mesure et de suivi de ces performances, afin de générer le volume et la qualité d’activité souhaitée par le client sur l’application.


➔ TD6 : Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge ») et présentée en soutenance. À partir de la note de cadrage complète, du cahier des charges et du dossier de conception comprenant les spécifications fonctionnelles et techniques du projet d’études propre au candidat, celui-ci doit, au regard du contexte proposé :

E3 - Élaborer et mettre en oeuvre un plan de tests cohérent avec le front-end précédemment développé.

E4 - Mettre en oeuvre l’industrialisation du développement front-end en automatisant l’exécution des tests définis (E3) et des outils d’assurance qualité adaptés, la gestion des dépendances et l’exécution d’une chaine de build orientée performance.


Bloc 3 : Développer la partie back-end d’une application (web, hybride, mobile ou desktop)


● Développer la partie back-end d’une application (web, hybride, mobile ou desktop), afin de créer les fonctionnalités attendues, telles que décrites préalablement de façon fonctionnelle et technique.

● Développer la couche de persistance d’une application (web, hybride, mobile ou desktop), selon l’architecture prévue, afin que les bases de données et systèmes de cache soient performants et sécurisés.

● Utiliser un ou plusieurs langages de programmation spécifiques au développement back-end, pour produire un code qui satisfasse aux exigences qualité, sécurité et d’écoconception d’une application (web, hybride, mobile ou desktop).

● Implémenter un système de paiement et une stratégie de monétisation, afin de permettre une activité de commercialisation via l’application développée, dans le respect des contraintes légales correspondantes.

● Développer une API sécurisée, afin de permettre à des services tiers de consommer des données produites par une application au travers de formats ouverts.

● Tester la partie back-end d’une application web, hybride, mobile ou desktop

● Tester la partie back-end d’une application (web, hybride, mobile ou desktop), d’un point de vue fonctionnel et technique afin de garantir sa conformité vis-à-vis des spécifications, l’absence de dysfonctionnements et d’assurer la non-régression des composants implémentés.

● Industrialiser le développement de la partie back-end d’une application (web, hybride, mobile ou desktop), en automatisant les processus d’assurance qualité et d’optimisation technique, pour préparer le déploiement de l’application et garantir sa mise en production.


➔ TD 7: Mise en situation professionnelle simulée individuelle écrite inclue dans le Dossier de validation (projet « fil rouge ») et présentée en soutenance. À partir de la note de cadrage complète, du cahier des charges, du dossier de conception et de la partie front-end complète et fonctionnelle d’une application du projet d’études propre au candidat, celui-ci doit, au regard du contexte :

E1 - Développer et mettre en oeuvre la couche de persistance des données

E2 - Développer intégralement la partie back-end en conformité avec le dossier de conception et intégrer la partie front-end, dans le respect des bonnes pratiques (sécurité, écoconception).

E3 - Implémenter un système de paiement et une stratégie de monétisation

E4 -Développer une API sécurisée

E5 - Élaborer et mettre en oeuvre un plan de tests complet et cohérent avec le back-end et la couche de persistance des données précédemment développés

E6 - Mettre en oeuvre l’industrialisation du développement back-end en automatisant l’exécution des tests définis (E5) et des outils d’assurance qualité adaptés, la gestion des dépendances et l’exécution d’une chaine de build orientée performance et sécurité.


Bloc 4 : Déployer et assurer le maintien en production d’une application (web, hybride, mobile ou desktop)


● Mettre en oeuvre des solutions techniques répondant aux besoins de la phase de production d’une application (web, hybride, mobile ou desktop), et au pilotage de ses performances dans la durée.

● Produire la documentation technique d’une application web, hybride, mobile ou desktop) et alimenter une base de connaissances, afin de capitaliser l’information et d’effectuer un transfert de compétences auprès de ses pairs, en vue de la maintenance de l’application.

● Administrer l’enregistrement et la configuration de noms de domaines et de certificats de sécurité pour des applications web, hybride ou mobile, pour fournir un accès pérenne et sécurisé aux applications concernées.

● Sélectionner une plateforme d’hébergement adaptée aux exigences techniques d’une application, en prenant en compte les exigences économiques, qualitatives et réglementaires, afin que celle-ci reste adaptée aux besoins du client dans la durée.

● Administrer des services d’hébergement dans un environnement dédié, cloud ou conteneurisé, en appliquant les bonnes pratiques de sécurité, afin de maintenir une continuité de service, conforme au niveau de qualité attendu.

● Mettre en oeuvre un système de déploiement automatisé d’une application pour différents types d’hébergement, en respectant les bonnes pratiques DevOps, pour être en mesure d’assurer une livraison en continu.

● Mettre en oeuvre un système de supervision d’une application et de services d’hébergement, définir des sondes et des alertes (état des services et sécurité), pour détecter, diagnostiquer et analyser l’origine de bugs, problèmes techniques, et failles de sécurité puis déployer des mesures correctives dans des délais adaptés.


➔ TD 8: Mise en situation professionnelle simulée individuelle écrite de maintenance d’une application. A partir d’un environnement technique fourni, les candidats sont confrontés à plusieurs cas pratiques issus de situations professionnelles réelles, adaptées pour les besoins de l’évaluation (anonymisation des données principalement). L’environnement fourni comprend une application web existante. Elle se compose principalement : - D’un front-end - D’un back-end Rest11 - D’une base de données relationnelle - D’une base de données NoSQL - D’au moins un micro-service serverless - D’appels API externes et de webhooks12 qui interviennent en back-end de la version mobile de l’application. Cette application comporte des bugs techniques, des failles de sécurité et repose sur certains composants obsolètes ou nécessitant une amélioration. À partir de cette application, le candidat doit réaliser :

E1 – Le choix d’une solution d’hébergement de type cloud adaptée à l’application, formalisée dans un livrable écrit et argumenté ; et la mise en oeuvre de l’environnement de qualification (pré-production) correspondant.

E2 - La mise en oeuvre sécurisée de l’environnement de production et l’administration des services correspondants.

E3 - La réservation d’un nom de domaine, la configuration des serveurs de noms et des services correspondants, l’installation et la vérification des certificats de sécurité pour les deux environnements précédemment créés.

E4 - La mise en oeuvre d’un système de déploiement automatisé pour les environnements précédemment créés.

E5 - La mise en oeuvre de la journalisation des services et des outils d’audit correspondants pour les deux environnements précédemment créés.

E6 - La mise en oeuvre des outils de supervision et la configuration des alertes adaptées au contexte de l’application pour les deux environnements précédemment créés.

E7 - La détection des bugs de l’application et la proposition de mesures correctives.

E8 - La détection des failles de sécurité, et la proposition de mesures correctives.

E9 - La génération de la documentation à partir du code source et la mise à jour du journal des évolutions ou « changelog ».


OBJECTIFS PÉDAGOGIQUES

Le titulaire de la certification doit être capable de :

● Analyser une demande de création ou d’évolution d’une application (web, hybride, mobile ou desktop) et élaborer un cahier des charges fonctionnel

● Préparer le déploiement d’un projet d’application (web, hybride, mobile ou desktop), par la mise en oeuvre d’outils et de méthodes de gestion de projet appliqués à chaque demande de développement en particulier

● Rédiger les spécifications techniques, conception et modélisation d’une application (web, hybride, mobile ou desktop)

● Réaliser une veille métier, technique, fonctionnelle et réglementaire, y compris liés à l’écoconception, l’accessibilité et la sécurité d’applications (web, hybride, mobile ou desktop)

● Développer la partie front-end d’une application web, hybride, mobile ou desktop en utilisant plusieurs langages de programmation et en appliquant les bonnes pratiques d’UX design.

● Tester la partie front-end d’une application web, hybride, mobile ou desktop.

● Améliorer les performances SEO (Search Engine Optimization), c’est-à-dire le référencement naturel et marketing d’une application.

● Développer la partie back-end d’une application (web, hybride, mobile ou desktop), afin de créer les fonctionnalités attendues, telles que décrites préalablement de façon fonctionnelle et technique.

● Tester la partie back-end d’une application web, hybride, mobile ou desktop

● Mettre en oeuvre des solutions techniques répondant aux besoins de la phase de production d’une application (web, hybride, mobile ou desktop), et au pilotage de ses performances dans la durée.


bottom of page