Ingénieur(e) développement logiciel
Rechercher - Concevoir
A partir du niveau BAC + 5DÉCOUVRE LE MÉTIER
Ingénieur(e) développement logiciel

Activités d'un(e) Ingénieur(e) développement logiciel
- Écoute et analyse du besoin fonctionnel
- Définition des spécifications fonctionnelles et techniques du logiciel et rédaction du cahier des charges technique
- Conception de l'architecture logicielle
- Programmation des différentes fonctionnalités du logiciel avec les technologies retenues
- Intégration du module, tests de fonctionnalité en conditions réelles et gestion de la maintenance corrective et évolutive du logiciel
- Livraison de la solution la rendant opérationnelle pour l'utilisateur
Compétences techniques d'un(e) Ingénieur(e) développement logiciel
- Recueillir, analyser et formaliser les besoins et contraintes : rédiger un cahier des charges, des spécifications techniques et fonctionnelles
- Concevoir une architecture répondant aux spécifications techniques et fonctionnelles
- Rédiger les documents formalisant l'architecture et réaliser les diagrammes d'architecture représentant la solution finale
- Programmer dans un langage informatique spécifique, en s'assurant de la lisibilité, de la maintenabilité et des performances du code
- Sélectionner, assembler et intégrer des composants informatiques (progiciels, bases de données, développements spécifiques)
- Assurer la liaison fonctionnelle avec les autres éléments logiciels et matériels du système
- Rédiger la documentation technique de la solution : exigences, spécifications, code source, conception de l'architecture, instructions de maintenance…
- Définir et mettre en place un protocole de tests (tests unitaires, d'intégration, d'acceptations automatiques…)
- Détecter les anomalies ou améliorations potentielles, mener les actions appropriées
Compétences transverses d'un(e) Ingénieur(e) développement logiciel
- Intégrer l'intelligence artificielle dans le développement des solutions techniques, notamment pour optimiser la maintenance prédictive des équipements
- Mettre en œuvre des processus d'intégration et de déploiement continus pour automatiser les développements
- Assurer la cohérence et la qualité des déploiements entre les environnements de développement, de test et de production
- Évaluer les performances d'une solution en récoltant les données et mesures à différentes étapes de son cycle de vie
- Adopter une démarche d'amélioration continue pour identifier les axes de perfectionnement et optimiser la performance d'une solution
- Mettre en œuvre une veille technologique permettant d'améliorer la prise de décisions techniques
- Rédiger la documentation à destination des opérationnels afin de faciliter l'utilisation du logiciel et leur adhésion à celui-ci
- Organiser et animer des formations pour faciliter la prise en main du logiciel
- Communiquer sur les évolutions de la solution
Compétences comportementales d'un(e) Ingénieur(e) développement logiciel
- Adapter sa méthodologie en fonction du projet et en prenant en compte divers paramètres (budget, cible, planning, etc.), et en intégrant ses contraintes, ses risques et ses enjeux
- Adapter son organisation à la diversité, à l'incertitude et à la complexité des situations
- Se montrer agile et proactif dans ses démarches (intrapreneuriat)
- Transmettre les informations utiles au projet et communiquer avec l'ensemble des collaborateurs concernés
- Superviser la collaboration entre les développeurs et les équipes opérationnelles
- Travailler seul ou en équipe grâce à des outils et des méthodes partagés, en réseau et à distance
- Superviser et coordonner les travaux de développement informatique
- Intégrer des méthodes et outils de développement produits innovants : Analyse des usages, brainstorming, analyse de la valeur, design thinking…
- Développer une méthode de travail structurée, pour mieux atteindre les objectifs du projet
ÉVOLUTIONS ANTICIPÉES
Ingénieur(e) développement logiciel
- Transition numérique
Digitalisation de la signalisation
<p>Les ingénieurs développement logiciels doivent de plus en plus développer et assurer la maintenance de logiciels permettant la digitalisation de la signalisation</p>
- Transition numérique
Cybersécurité ferroviaire
<p>Conception de systèmes robustes, résilients aux cyberattaques, tout en garantissant une interopérabilité et une conformité aux standards de sécurité</p>
- Transition numérique
Automatisation et mobilité autonome
<p>Conception d'algorithmes d'optimisation, de navigation et de gestion d'énergie pour les trains autonomes</p>
- Transition numérique
Intégration de l'IA et des modèles de données
<p>Implémentation des systèmes d'IA dans le développement des solutions techniques</p>
- Transition numérique
Maintenance prédictive
<p>Développement des algorithmes de collecte de données de maintenance prédictive</p>
ACCÈS AUX MÉTIERS
Ingénieur(e) développement logiciel
Niveau de formation conseillée
Ce métier est accessible avec un diplôme de niveau bac + 5 dans le domaine de la programmation informatique
MÉTIERS PROCHES
de Ingénieur(e) développement logiciel
A partir du niveau BAC + 5En parallèleIngénieur(e) informatique et électronique embarquées
L'ingénieur en informatique et électronique embarquées gère des projets techniques complexes pour créer des systèmes intelligents. Ces systèmes, intégrés dans…
Rechercher - Concevoir
A partir du niveau BAC + 5En parallèleIngénieur(e) Intelligence artificielle
L'ingénieur en Intelligence Artificielle dans les industries ferroviaires crée des programmes pour améliorer la fabrication, la maintenance et l'innovation…
Rechercher - Concevoir
L’INTELLIGENCE ARTIFICIELLE
Trouvez le metier qui vous correspond

C’est pratique ! Dites nous en quelques mots ce que vous cherchez, et notre moteur intelligent vous propose des métiers adaptés à vos envies.
Découvrez les métiers faits pour vous
