- Concevoir de nouvelles applications au sein d'une équipe pluridisciplinaire ;
- Participer à la définition des phases de spécifications fonctionnelles du logiciel ;
- Rédiger le dossier de programmation ;
- A partir d'une architecture logicielle, développer et mettre au point des modules et logiciels ou adapter et paramétrer les progiciels retenus ;
- Tester l'application et traiter les dysfonctionnements éventuels ;
- Vérifier la conformité des capacités de l'ouvrage avec la demande formulée par le client ;
- Effectuer les derniers ajustements ;
- Intégrer en totalité le produit chez le client ;
- Participer à sa maintenance.
La mission de l'ingénieur développement logiciel peut se prolonger après la mise en service des applications. Cette étape porte le nom de tierce maintenance corrective et / ou évolutive applicative (TMA).
Les activités éventuelles
- Assurer une veille technologique.
- Rédiger des notices d'installation pour l'utilisateur et des guides d'utilisation.
- Former les utilisateurs.
Les variantes selon l'employeur
Le contenu et les conditions du déroulement de la mission varient selon que l'ingénieur développement logiciel exerce son activité en informatique de gestion ou en informatique industrielle, dans une entreprise utilisatrice, dans une société de services et d'ingénierie informatique (SSII) ou un éditeur de logiciels.
L'objectif de l'informatique de gestion consiste à automatiser et à rationaliser l'ensemble des activités d'une entreprise : gestion des stocks, comptabilité, gestion des ressources humaines, gestion commerciale... Dans ce contexte, l'ingénieur développement logiciel étudie, analyse des processus de gestion de l'entreprise et son environnement technique. Dans l'informatique industrielle, l'activité est plus orientée par le cycle de production. Il s'agit par exemple de programmer des cartes électroniques, pour tel appareil ou tel réseau. Les postes sont spécialisés par domaine d'intervention (traitement de l'information, temps réel, traitement du signal...)
Contrairement à ce qui se passe dans une entreprise utilisatrice, l'ingénieur développement logiciel en SSII travaille successivement chez plusieurs clients ou sur plusieurs projets. S'il intervient chez les clients, il doit être à leur écoute et comprendre leur problématique. De sa capacité à s'imposer non seulement techniquement mais également au niveau relationnel dépend la satisfaction du client et donc la pérennité de sa mission. En régie (mise à disposition auprès d'entreprises utilisatrices), il exerce alors un rôle très opérationnel de développement sur des tâches précises et encadrées. Sa mission peut prendre fin rapidement selon les besoins du client.
Au forfait (sous-traitance de tout ou partie d'un projet à un prestataire de service), il est mandaté pour la réalisation d'une mission spécifique qui prend fin à la livraison du projet. Dans ce cas, l'ingénieur développement logiciel est davantage soumis aux aléas conjoncturels du marché : il peut passer rapidement d'une mission à une autre, doit pouvoir s'adapter sans difficulté à un nouvel environnement technologique. Il peut aussi traverser des périodes d'intercontrat, c'est-à-dire sans mission.
Les sociétés de services informatiques peuvent être spécialisées par domaine technique ou par secteur d'activité.
Chez un éditeur de logiciels, les missions sont sur le plus long terme, le développement d'un nouveau logiciel ou d'une nouvelle version prenant plusieurs mois et l'ingénieur développement logiciel est rarement en contact avec le client.