Élaborer une application informatique Faire évoluer une application informatique Maintenir en conditions opérationnelles une application informatique en respectant les besoins décrits par le client en appliquant les principes algorithmiques en veillant à la qualité du code et à sa documentation en choisissant les ressources techniques appropriées Implémenter des conceptions simples Élaborer des conceptions simples Faire des essais et évaluer leurs résultats en regard des spécifications Développer des interfaces utilisateurs Élaborer et implémenter les spécifications fonctionnelles et non fonctionnelles à partir des exigences Appliquer des principes d’accessibilité et d’ergonomie Adopter de bonnes pratiques de conception et de programmation Vérifier et valider la qualité de l’application par les tests Choisir et implémenter les architectures adaptées Faire évoluer une application existante Intégrer des solutions dans un environnement de production Améliorer les performances des programmes dans des contextes contraints Limiter l’impact environnemental d’une application informatique Mettre en place des applications informatiques adaptées et efficaces en formalisant et modélisant des situations complexes en recensant les algorithmes et les structures de données usuels en s’appuyant sur des schémas de raisonnement en justifiant les choix et validant les résultats Analyser un problème avec méthode (découpage en éléments algorithmiques simples, structure de données...) Comparer des algorithmes pour des problèmes classiques (tris simples, recherche...) Formaliser et mettre en œuvre des outils mathématiques pour l’informatique Choisir des structures de données complexes adaptées au problème Utiliser des techniques algorithmiques adaptées pour des problèmes complexes (par ex. recherche opérationnelle, méthodes arborescentes, optimisation globale, intelligence artificielle...) Comprendre les enjeux et moyens de sécurisation des données et du code Évaluer l’impact environnemental et sociétal des solutions proposées Anticiper les résultats de diverses métriques (temps d’exécution, occupation mémoire, montée en charge...) Profiler, analyser et justifier le comportement d’un code existant Choisir et utiliser des bibliothèques et méthodes dédiées au domaine d'application (imagerie, immersion, intelligence artificielle, jeux vidéos, parallélisme, calcul formel...) Déployer une nouvelle architecture technique Améliorer une infrastructure existante Sécuriser les applications et les services en sécurisant le système d’information en appliquant les normes en vigueur et les bonnes pratiques architecturales et de sécurité en offrant une qualité de service optimale en assurant la continuité d'activité Identifier les différents composants (matériels et logiciels) d’un système numérique Utiliser les fonctionnalités de base d’un système multitâches / multiutilisateurs Installer et configurer un système d’exploitation et des outils de développement Configurer un poste de travail dans un réseau d’entreprise Concevoir et développer des applications communicantes Utiliser des serveurs et des services réseaux virtualisés Sécuriser les services et données d’un système Créer des processus de traitement automatisé (solution de gestion de configuration et de parc, intégration et déploiement continu...) Configurer un serveur et des services réseaux de manière avancée (virtualisation...) Appliquer une politique de sécurité au niveau de l’infrastructure Déployer et maintenir un réseau d’organisation en fonction de ses besoins Lancer un nouveau projet Sécuriser des données Exploiter des données pour la prise de décisions en respectant les réglementations sur le respect de la vie privée et la protection des données personnelles en respectant les enjeux économiques, sociétaux et écologiques de l’utilisation du stockage de données, ainsi que les différentes infrastructures (data centers, cloud, etc.) en s’appuyant sur des bases mathématiques en assurant la cohérence et la qualité Mettre à jour et interroger une base de données relationnelle (en requêtes directes ou à travers une application) Visualiser des données Concevoir une base de données relationnelle à partir d’un cahier des charges Optimiser les modèles de données de l’entreprise Assurer la sécurité des données (intégrité et confidentialité) Organiser la restitution de données à travers la programmation et la visualisation Manipuler des données hétérogènes Capturer et stocker des ensembles volumineux et complexes de données hétérogènes Préparer et extraire les données pour l’exploitation Appliquer des méthodes d’exploration et d’exploitation des données (apprentissage, informatique décisionnelle ou fouille de données) Mettre en production et optimiser le système de gestion de données de l’entreprise Lancer un nouveau projet Piloter le maintien d’un projet en condition opérationnelle Faire évoluer un système d’information en adoptant une démarche proactive, créative et critique en respectant les règles juridiques et les normes en vigueur en communiquant efficacement avec les différents acteurs d’un projet en sensibilisant à une gestion éthique, responsable, durable et interculturelle Appréhender les besoins du client et de l'utilisateur Mettre en place les outils de gestion de projet Identifier les acteurs et les différentes phases d’un cycle de développement Identifier les processus présents dans une organisation en vue d’améliorer les systèmes d’information Formaliser les besoins du client et de l'utilisateur Identifier les critères de faisabilité d’un projet informatique Définir et mettre en œuvre une démarche de suivi de projet Mesurer les impacts économiques, sociétaux et technologiques d’un projet informatique Savoir intégrer un projet informatique dans le système d’information d’une organisation Savoir adapter un système d’information Lancer un nouveau projet Organiser son travail en relation avec celui de son équipe Élaborer, gérer et transmettre de l’information en inscrivant sa démarche au sein d’une équipe pluridisciplinaire en accompagnant la mise en œuvre des évolutions informatiques en veillant au respect des contraintes juridiques en développant une communication efficace et collaborative Appréhender l’écosystème numérique Découvrir les aptitudes requises selon les différents secteurs informatiques Identifier les statuts, les fonctions et les rôles de chaque membre d’une équipe pluridisciplinaire Acquérir les compétences interpersonnelles pour travailler en équipe Comprendre la diversité, la structure et la dimension de l’informatique dans une organisation (ESN, DSI,...) Appliquer une démarche pour intégrer une équipe informatique au sein d’une organisation Mobiliser les compétences interpersonnelles pour travailler dans une équipe informatique Rendre compte de son activité professionnelle Organiser et partager une veille technologique et informationnelle Identifier les enjeux de l’économie de l’innovation numérique Guider la conduite du changement informatique au sein d’une organisation Accompagner le management de projet informatique