La blockchain est une technologie de registre distribué qui permet de stocker des données de manière sécurisée et immuable, ce qui la rend utile pour des applications qui nécessitent une transparence, une pérennité et une sécurité élevées.
Les activités de développement d'applications blockchain consistent à concevoir, créer puis déployer sur une blockchain, des applications décentralisées, qui permettent aux utilisateurs de stocker, de partager et de gérer des données. Ces applications peuvent être utilisées dans divers domaines tels que la finance, l'assurance, l'immobilier, la traçabilité d'une chaîne d'approvisionnement, la santé et bien d'autres encore.
Afin d'exercer des activités de développement d'applications décentralisées de manière professionnelle, il est nécessaire de maîtriser les langages de programmation couramment utilisés pour développer ces applications blockchain (tels que Solidity, TypeScrypt, Rust, Vyper, etc.), ainsi que de comprendre les concepts de base de la blockchain (tels que les contrats intelligents, les transactions, les nœuds, les blocs, les validateurs, etc.).
Ces activités de conception d'applications décentralisées et de déploiement sur une blockchain nécessitent donc des compétences spécifiques pour être mises en œuvre de manière efficiente, sécurisée et conforme aux dispositions légales en vigueur et à venir.
Objectifs :
Afin de développer une application décentralisée, les professionnel(le)s doivent :
Rédiger le cahier des charges d'un projet de développement d'une application décentralisée (C1)
Développer une application décentralisée en utilisant des langages de programmation adaptés aux technologies blockchain et aux technologies web (C2 et C7), tester ses fonctionnalités (C6) et la déployer sur une blockchain (C8)
Identifier d'éventuelle(s) vulnérabilité(s) dans les fonctionnalités d'un projet d'application décentralisée (C4) et mettre en place une gestion des versions en utilisant des méthodes d'intégration contenue (C5)
Être capable d'exploiter un jeton numérique (C3)
Compétences attestées
C1. Rédiger un cahier des charges en décrivant les objectifs, les modalités de réalisation et les fonctionnalités d'une future application décentralisée, afin de la conceptualiser et d'en assurer la réussite
C2. Développer un contrat intelligent (smart contract) en utilisant un langage de programmation adapté à une technologie blockchain afin de répondre au besoin de fonctionnalités d'une application décentralisée
C3. Exploiter un jeton numérique (fongible* ou non) en utilisant les librairies et les standards pratiqués dans l'industrie afin de rendre effectif un ensemble de fonctionnalités propres à une application décentralisée
C4. Identifier les points d'attention en matière de sécurité et les optimisations adaptées en analysant les fonctionnalités d'un contrat intelligent (smart contract) afin de prévenir des défaillances éventuelles
C5. Mettre en place la gestion des versions en utilisant des méthodes d'intégration continue, afin de garantir la viabilité du développement de l'application
C6. Vérifier la résilience d'une application décentralisée, en mettant en place des tests fonctionnels, afin d'en garantir le bon fonctionnement pour les usagers
C7. Développer un code informatique en utilisant un langage de programmation adapté aux technologies web afin de rendre effective la communication entre une interface web et/ou mobile et un ou plusieurs contrat(s) intelligent(s) (smart contract)
C8. Déployer un contrat intelligent (smart contract) sur une blockchain en s'appuyant sur un environnement de développement adapté afin de rendre opérationnelle une application décentralisée
Secteur d'activité et type d'emploi
Références juridiques des réglementations d'activité
La mise en place et l’utilisation de technologies blockchain, sans détention ou conservation de cryptoactifs pour le compte de tiers, ne sont pas sujettes à une réglementation particulière.
Voie d'accès à la certification
Prérequis à l'entrée
Expérience professionnelle de 1 an minimum ou diplôme/certification de niveau 5 minimum, en développement d’applications web ou logiciel.
Prérequis à la validation
Avoir suivi la formation associée à la certification dans son entièreté et avoir terminé, puis rendu, les livrables attendus pour l'évaluation avant la date de l'examen.
Composition du jury — Formation continue
Le jury de délivrance de la certification est composé : * Du directeur pédagogique de l’organisme certificateur ou de son représentant * D’un professionnel de l’écosystème blockchain, extérieur à l’organisme de formation et de certification, et justifiant d’au moins deux ans d’expérience professionnelle dans le développement d’applications blockchain.