Chef de projet en solutions logicielles pour l'internet des objets (IoT)

Diplôme actif Niveau | Code RNCP37046

Analyser les besoins exprimés et problématiques rencontrées par le marché offrant l’opportunité de création d’un objet connecté s’appuyant sur une démarche scientifique et méthodique. Valider le besoin identifié sur un marché, en prenant en compte les influences des différentes composantes de l’environnement (technologique -économique – politique – juridique – sociologique – écologique – démographique …). Analyser la demande du client, en l’interrogeant sur son contexte, ses problématiques liées à son activité, ses enjeux, ses contraintes et ses objectifs. Analyser les besoins opérationnels du client en l’accompagnant dans l’identification des usages et des bénéfices attendus. Accompagner les entités dirigeantes et parties prenantes de la solution logicielle dans le choix des solutions à développer en relevant les avantages et inconvénients de chacune. Réaliser un dossier de conception et de développement de l’objet connecté souhaité. Concevoir l’architecture du logiciel souhaité en collaboration avec les équipes de développeurs, en divisant et isolant ses différentes couches (de l’interface utilisateur jusqu’au cœur des règles métier) afin de faciliter le développement, l’évolution, le déploiement et la maintenance de celui-ci. Modéliser les interactions homme-machine nécessaires à l’utilisation efficace de l’objet connecté, en hiérarchisant les informations affichées et définissant l’enchainement des tâches. Définir l’approche de programmation optimale en choisissant les plateformes, les langages, les algorithmes, les matériels et technologies les plus adaptés en fonction des demandes et des solutions identifiées. Identifier et choisir l’ensemble des outils, logiciels et ressources (matérielles, budgétaires…) nécessaires au développement de la solution logicielle. Identifier et sélectionner les compétences complémentaires nécessaires à la réalisation du projet (bureau d’études électroniques, bureau d’études mécaniques, packaging, graphistes, traducteurs, experts métiers…). Vérifier les conséquences juridiques liées à l’utilisation de logiciels existants, notamment open source, dans la solution finale. Identifier les certifications, notamment radio, nécessaires à la mise sur le marché de l’objet connecté. Détecter en les anticipant, les risques liés à des inconnues technologiques (maturité, obsolescence, pérennité…) et réglementaires (RGPD, certifications, traçabilité, vie privée) pouvant intervenir lors des différentes phases du projet. Réaliser les prototypes ou preuves de concept (POC) de nature à dissiper les inconnues technologiques. Modéliser l’ensemble des données de l’application. Identifier et choisir les briques technologiques les plus adaptées au projet, en sélectionnant celles à créer et celles à utiliser (librairies, open source…). Rédiger les plans de test du projet de développement du logiciel en identifiant l’ensemble des tests nécessaires à la vérification du bon fonctionnement du code. Elaborer des indicateurs de suivi de production permettant de contrôler le bon fonctionnement de la solution logicielle à grande échelle. Sélectionner ou concevoir les algorithmes les plus pertinents. Mettre en œuvre le développement de tous types de logiciels sur tous types de matériels et supports, tout en faisant preuve d’une capacité d’anticipation face aux évolutions technologiques. Optimiser le code source du logiciel en réalisant des opérations de « réusinage » et en exploitant les résultats des différents tests réalisés lors de son développement. Programmer les interactions entre les différents composants visuels de l’interface décrites dans la spécification. Assurer l’interactivité et la responsivité de l’interface par l’utilisation de frameworks et langages de programmation adaptés. Déployer les solutions techniques retenues. Concevoir l’environnement de test, en définissant les indicateurs de performance en fonction des résultats attendus et des facteurs de décisions (montée en charge…). Mettre en œuvre les phases de test béta, en situation réelle auprès d’un échantillon représentatif d’utilisateurs. Vérifier la conformité des résultats obtenus dans l’environnement final en mettant en œuvre la phase de test d’intégration. Mettre en œuvre la phase de test de pénétration (ou intrusion) en simulant des attaques non autorisées en interne et en externe sur les différents niveaux de l’application logicielle. Mettre en œuvre les jeux d’essais et de tests du logiciel dans le respect des plans de test élaborés. Automatiser les tâches récurrentes. Rédiger les documentations techniques, en français ou en anglais, à destination de l’équipe de maintenance afin de faire le transfert de compétences dans les meilleures conditions, et à destination de l’équipe d’exploitation. Assurer la mise en production du logiciel développé en accompagnant les utilisateurs à le prendre en main, en s’appuyant sur des consignes et conseils d’utilisation. Assurer la maintenance corrective du logiciel et anticiper l’obsolescence des technologies au travers d’une veille active. Assurer la maintenance évolutive du logiciel en s’appuyant sur une veille des nouveaux usages et des nouveaux cyber-risques. Assurer la mise à jour de la solution logicielle au regard des évolutions réglementaires. Définir et répartir les tâches, rôles et responsabilités de chaque collaborateur en lien avec le projet de création d’objet connecté, en fixant et en priorisant des indicateurs à suivre (qualité du livrable, dépassement du budget, du temps…). Concevoir des outils de pilotage et de suivi permettant de contrôler la mise en œuvre ou l’adaptation du projet en collaborant avec des développeurs présents ou à distance. Assurer le suivi des indicateurs et la rédaction des rapports. Réaliser une veille technologique sur les innovations permettant d’apporter des plus-values à la solution logicielle. Décider et mettre en œuvre les nouvelles opportunités identifiées par le travail de veille. Organiser la collaboration de l’équipe en télétravail ou en face à face. Elaborer les conventions et règles de fonctionnement destinées à l’équipe en charge du développement du logiciel (étapes clés, styles de code à employer, bonnes pratiques à respecter…). Prévenir et gérer l’ensemble des risques et des imprévus (situations difficiles, conflits…) en adaptant avec agilité et créativité les étapes et les actions du projet. Identifier les gains de productivité possibles en lien avec les parties prenantes dédiées au projet en détectant les opportunités d’automatisation des différentes tâches et activités réalisées ou à réaliser. Transmettre les messages auprès des différentes parties prenantes, en prenant soin d’adapter son vocabulaire au niveau de connaissances de ses interlocuteurs, en vulgarisant si nécessaire les informations techniques.

Lire la suite

Prérequis

L’entrée en formation est ouverte aux candidats qui ont obtenu le baccalauréat et sous la condition qu’ils aient satisfait aux modalités d’admission (test de logique et entretien de motivation)

Voie d'accès

Non accessible en contrat de formation continue, contrat de professionnalisation, contrat d'apprentissage et en reconnaissance des acquis (VAE)

Où suivre ce diplôme ?

Compétences attestées

  • Analyser les besoins exprimés et problématiques rencontrées par le marché offrant l’opportunité de création d’un objet connecté s’appuyant sur une démarche scientifique et méthodique.
  • Valider le besoin identifié sur un marché, en prenant en compte les influences des différentes composantes de l’environnement (technologique -économique – politique – juridique – sociologique – écologique – démographique …).
  • Analyser la demande du client, en l’interrogeant sur son contexte, ses problématiques liées à son activité, ses enjeux, ses contraintes et ses objectifs.
  • Analyser les besoins opérationnels du client en l’accompagnant dans l’identification des usages et des bénéfices attendus.
  • Accompagner les entités dirigeantes et parties prenantes de la solution logicielle dans le choix des solutions à développer en relevant les avantages et inconvénients de chacune.
  • Réaliser un dossier de conception et de développement de l’objet connecté souhaité.
  • Concevoir l’architecture du logiciel souhaité en collaboration avec les équipes de développeurs, en divisant et isolant ses différentes couches (de l’interface utilisateur jusqu’au cœur des règles métier) afin de faciliter le développement, l’évolution, le déploiement et la maintenance de celui-ci.
  • Modéliser les interactions homme-machine nécessaires à l’utilisation efficace de l’objet connecté, en hiérarchisant les informations affichées et définissant l’enchainement des tâches.
  • Définir l’approche de programmation optimale en choisissant les plateformes, les langages, les algorithmes, les matériels et technologies les plus adaptés en fonction des demandes et des solutions identifiées.
  • Identifier et choisir l’ensemble des outils, logiciels et ressources (matérielles, budgétaires…) nécessaires au développement de la solution logicielle.
  • Identifier et sélectionner les compétences complémentaires nécessaires à la réalisation du projet (bureau d’études électroniques, bureau d’études mécaniques, packaging, graphistes, traducteurs, experts métiers…).
  • Vérifier les conséquences juridiques liées à l’utilisation de logiciels existants, notamment open source, dans la solution finale.
  • Identifier les certifications, notamment radio, nécessaires à la mise sur le marché de l’objet connecté.
  • Détecter en les anticipant, les risques liés à des inconnues technologiques (maturité, obsolescence, pérennité…) et réglementaires (RGPD, certifications, traçabilité, vie privée) pouvant intervenir lors des différentes phases du projet.
  • Réaliser les prototypes ou preuves de concept (POC) de nature à dissiper les inconnues technologiques.
  • Modéliser l’ensemble des données de l’application.
  • Identifier et choisir les briques technologiques les plus adaptées au projet, en sélectionnant celles à créer et celles à utiliser (librairies, open source…).
  • Rédiger les plans de test du projet de développement du logiciel en identifiant l’ensemble des tests nécessaires à la vérification du bon fonctionnement du code.
  • Elaborer des indicateurs de suivi de production permettant de contrôler le bon fonctionnement de la solution logicielle à grande échelle.
  • Sélectionner ou concevoir les algorithmes les plus pertinents.
  • Mettre en œuvre le développement de tous types de logiciels sur tous types de matériels et supports, tout en faisant preuve d’une capacité d’anticipation face aux évolutions technologiques.
  • Optimiser le code source du logiciel en réalisant des opérations de « réusinage » et en exploitant les résultats des différents tests réalisés lors de son développement.
  • Programmer les interactions entre les différents composants visuels de l’interface décrites dans la spécification.
  • Assurer l’interactivité et la responsivité de l’interface par l’utilisation de frameworks et langages de programmation adaptés.
  • Déployer les solutions techniques retenues.
  • Concevoir l’environnement de test, en définissant les indicateurs de performance en fonction des résultats attendus et des facteurs de décisions (montée en charge…).
  • Mettre en œuvre les phases de test béta, en situation réelle auprès d’un échantillon représentatif d’utilisateurs.
  • Vérifier la conformité des résultats obtenus dans l’environnement final en mettant en œuvre la phase de test d’intégration.
  • Mettre en œuvre la phase de test de pénétration (ou intrusion) en simulant des attaques non autorisées en interne et en externe sur les différents niveaux de l’application logicielle.
  • Mettre en œuvre les jeux d’essais et de tests du logiciel dans le respect des plans de test élaborés.
  • Automatiser les tâches récurrentes.
  • Rédiger les documentations techniques, en français ou en anglais, à destination de l’équipe de maintenance afin de faire le transfert de compétences dans les meilleures conditions, et à destination de l’équipe d’exploitation.
  • Assurer la mise en production du logiciel développé en accompagnant les utilisateurs à le prendre en main, en s’appuyant sur des consignes et conseils d’utilisation.
  • Assurer la maintenance corrective du logiciel et anticiper l’obsolescence des technologies au travers d’une veille active.
  • Assurer la maintenance évolutive du logiciel en s’appuyant sur une veille des nouveaux usages et des nouveaux cyber-risques.
  • Assurer la mise à jour de la solution logicielle au regard des évolutions réglementaires.
  • Définir et répartir les tâches, rôles et responsabilités de chaque collaborateur en lien avec le projet de création d’objet connecté, en fixant et en priorisant des indicateurs à suivre (qualité du livrable, dépassement du budget, du temps…).
  • Concevoir des outils de pilotage et de suivi permettant de contrôler la mise en œuvre ou l’adaptation du projet en collaborant avec des développeurs présents ou à distance.
  • Assurer le suivi des indicateurs et la rédaction des rapports.
  • Réaliser une veille technologique sur les innovations permettant d’apporter des plus-values à la solution logicielle.
  • Décider et mettre en œuvre les nouvelles opportunités identifiées par le travail de veille.
  • Organiser la collaboration de l’équipe en télétravail ou en face à face.
  • Elaborer les conventions et règles de fonctionnement destinées à l’équipe en charge du développement du logiciel (étapes clés, styles de code à employer, bonnes pratiques à respecter…).
  • Prévenir et gérer l’ensemble des risques et des imprévus (situations difficiles, conflits…) en adaptant avec agilité et créativité les étapes et les actions du projet.
  • Identifier les gains de productivité possibles en lien avec les parties prenantes dédiées au projet en détectant les opportunités d’automatisation des différentes tâches et activités réalisées ou à réaliser.
  • Transmettre les messages auprès des différentes parties prenantes, en prenant soin d’adapter son vocabulaire au niveau de connaissances de ses interlocuteurs, en vulgarisant si nécessaire les informations techniques.

Blocs de compétences

Assurer la maintenance corrective du logiciel et anticiper l’obsolescence des technologies au travers d’une veille active Assurer la maintenance évolutive du logiciel en s’appuyant sur une veille des nouveaux usages et des nouveaux cyber-risques Assurer la mise à jour de la solution logicielle au regard des évolutions réglementaires
Concevoir l’environnement de test, en définissant les indicateurs de performance en fonction des résultats attendus et des facteurs de décisions (montée en charge…) Mettre en œuvre les phases de test béta, en situation réelle auprès d’un échantillon représentatif d’utilisateurs Vérifier la conformité des résultats obtenus dans l’environnement final en mettant en œuvre la phase de test d’intégration Mettre en œuvre la phase de test de pénétration (ou intrusion) en simulant des attaques non autorisées en interne et en externe sur les différents niveaux de l’application logicielle Mettre en œuvre les jeux d’essais et de tests du logiciel dans le respect des plans de test élaborés Automatiser les tâches récurrentes Rédiger les documentations techniques, en français ou en anglais, à destination de l’équipe de maintenance Assurer la mise en production du logiciel développé en accompagnant les utilisateurs à le prendre en main, en s’appuyant sur des consignes et conseils d’utilisation
Rédiger les plans de test du projet de développement du logiciel en identifiant l’ensemble des tests nécessaires à la vérification du bon fonctionnement du code Elaborer des indicateurs de suivi de production permettant de contrôler le bon fonctionnement de la solution logicielle à grande échelle Sélectionner ou concevoir les algorithmes les plus pertinents Mettre en œuvre le développement de tous types de logiciels sur tous types de matériels et supports, tout en faisant preuve d’une capacité d’anticipation face aux évolutions technologiques Optimiser le code source du logiciel en réalisant des opérations de « réusinage » et en exploitant les résultats des différents tests réalisés lors de son développement Programmer les interactions entre les différents composants visuels de l’interface décrites dans la spécification Assurer l’interactivité et la responsivité de l’interface par l’utilisation de frameworks et langages de programmation adaptés Déployer les solutions techniques retenues
Définir et répartir les tâches, rôles et responsabilités de chaque collaborateur en lien avec le projet de création d’objet connecté, en fixant et en priorisant des indicateurs à suivre (qualité du livrable, dépassement du budget, du temps…) Concevoir des outils de pilotage et de suivi permettant de contrôler la mise en œuvre ou l’adaptation du projet en collaborant avec des développeurs présents ou à distance Assurer le suivi des indicateurs et la rédaction des rapports Réaliser une veille technologique sur les innovations permettant d’apporter des plus-values à la solution logicielle Décider et mettre en œuvre les nouvelles opportunités identifiées par le travail de veille Organiser la collaboration de l’équipe en télétravail ou en face à face, en permettant à chacun d’exprimer ses idées et de proposer des solutions aux difficultés rencontrées Elaborer les conventions et règles de fonctionnement destinées à l’équipe en charge du développement du logiciel (étapes clés, styles de code à employer, bonnes pratiques à respecter…) Prévenir et gérer l’ensemble des risques et des imprévus (situations difficiles, conflits…) en adaptant avec agilité et créativité les étapes et les actions du projet Identifier les gains de productivité possibles en lien avec les parties prenantes dédiées au projet en détectant les opportunités d’automatisation des différentes tâches et activités réalisées ou à réaliser Transmettre les messages auprès des différentes parties prenantes, en prenant soin d’adapter son vocabulaire au niveau de connaissances de ses interlocuteurs, en vulgarisant si nécessaire les informations techniques
Analyser les besoins exprimés et problématiques rencontrées par le marché offrant l’opportunité de création d’un objet connecté s’appuyant sur une démarche scientifique et méthodique (collecte de faits, hypothèses, identification des parties prenantes et futurs utilisateurs, tests et résultats) et en faisant preuve d’esprit d’analyse et de synthèse Valider le besoin identifié sur un marché, en prenant en compte les influences des différentes composantes de l’environnement (technologique -économique – politique – juridique – sociologique – écologique – démographique …) Analyser la demande du client, en l’interrogeant sur son contexte, ses problématiques liées à son activité, ses enjeux, ses contraintes et ses objectifs Analyser les besoins opérationnels du client en l’accompagnant dans l’identification des usages et des bénéfices attendus Accompagner les entités dirigeantes et parties prenantes de la solution logicielle dans le choix des solutions à développer en relevant les avantages et inconvénients de chacune Réaliser un dossier de conception et de développement de l’objet connecté souhaité, en prenant en compte les objectifs définis, les fonctionnalités et spécifications à mettre en œuvre, les coûts inhérents à la fabrication de l’objet connecté, au développement et à l’exploitation du logiciel
Concevoir l’architecture du logiciel souhaité en collaboration avec les équipes de développeurs, en divisant et isolant ses différentes couches (de l’interface utilisateur jusqu’au cœur des règles métier) Modéliser les interactions homme-machine nécessaires à l’utilisation efficace de l’objet connecté, en hiérarchisant les informations affichées et définissant l’enchainement des tâches Définir l’approche de programmation optimale en choisissant les plateformes, les langages, les algorithmes, les matériels et technologies les plus adaptés en fonction des demandes et des solutions identifiées Identifier et choisir l’ensemble des outils, logiciels et ressources (matérielles, budgétaires…) nécessaires au développement de la solution logicielle Identifier et sélectionner les compétences complémentaires nécessaires à la réalisation du projet (bureau d’études électroniques, bureau d’études mécaniques, packaging, graphistes, traducteurs, experts métiers…) Vérifier les conséquences juridiques liées à l’utilisation de logiciels existants, notamment open source, dans la solution finale Identifier les certifications, notamment radio, nécessaires à la mise sur le marché de l’objet connecté Détecter en les anticipant, les risques liés à des inconnues technologiques (maturité, obsolescence, pérennité…) et réglementaires (RGPD, certifications, traçabilité, vie privée) pouvant intervenir lors des différentes phases du projet Réaliser les prototypes ou preuves de concept (POC) de nature à dissiper les inconnues technologiques Modéliser l’ensemble des données de l’application Identifier et choisir les briques technologiques les plus adaptées au projet, en sélectionnant celles à créer et celles à utiliser (librairies, open source…)

Métiers accessibles avec ce diplôme