Toutes les industries appliquant et développant des projets de systèmes embarqués sont en recherche d’ingénieurs qualifiés. Les bureaux d’étude sont nombreux et multiples et des secteurs variés recrutent de plus en plus. Ils sont tous à la recherche d’ingénieurs compétents.
Ce métier peut être présenté sous différents noms :
- Ingénieur en conception de systèmes innovants
- Ingénieur électronique spécialisé
- Architecte plateforme embarquée
- Expert technologies embarquées
- Développeur en systèmes embarqués
Compétences techniques
- Avoir une parfaite maîtrise des différents langages de programmation informatique
- Disposer d’une expertise certaine dans le domaine de l’électronique
- Avoir un excellent niveau d’anglais
C’est un métier en constante mutation qui associe des travaux collaboratifs en équipe, mais également la création de valeurs, la conception, de la programmation, des tests et du suivi. Ce domaine promet des champs d’applications très vastes. Ces systèmes embarqués s’appellent aussi « internet des objets ». Ils rendent possibles pour l’ingénieur, des recherches dans des secteurs variés et lui donne ainsi des opportunités d’innovations majeures en matière de mobilités. C‘est un métier où les hypothèses de recherche sont immenses, en effet la prospective numérique et les systèmes embarqués n’en sont qu’à leur début. Les applications dans le futur sont multiples et applicables dans de nombreux domaines, que ce soit dans les entreprises, l’automobile, les télécommunications, mais aussi dans le quotidien, l’aéronautique, le militaire et le médical, etc. Les enjeux industriels et technologiques sont majeurs et l’Ingénieur en systèmes embarqués sera très demandé dans les années à venir.
L’ingénieur système embarqué, fin connaisseur des contraintes du monde de l’embarqué, développe des programmes particulièrement optimisés.
Un système embarqué est un ensemble matériel et logiciel mêlant quatre grandes caractéristiques :
- Autonome, il doit remplir sa mission pendant de longues périodes et sans intervention humaine (parce que cette dernière est impossible, trop lente, voire insuffisamment fiable).
- Souvent temps-réel, il doit délivrer des résultats exacts dans des délais imposés.
- Il est spécialisé dans une tâche précise.
- Ses ressources sont limitées ; autrement dit, on va chercher à optimiser son encombrement, sa consommation et ses mémoires afin de réduire le coût global.
La plupart du temps, le système embarqué est composé de capteurs pour le recueil des informations (capteurs de température, de vibration, accéléromètre, GPS…), système de traitement de l’information, de prise de décision et de pilotage des actionneurs (microcontrôleur, microprocesseurs, ASIC…), actionneurs pour la transcription matérielle des décisions prises au niveau logiciel.
Mission
Le travail d’un Ingénieur en systèmes embarqués est riche et très polyvalent. Il consiste à développer et préparer de nouvelles applications et fonctionnalités pour des systèmes autonomes embarqués à l’intérieur d’autres machines. Ce métier allie informatique et électronique. En général, à partir d’un cahier des charges que présente le client, l’ingénieur réalise le produit selon la spécification demandée. Il y a des phases de codages, puis la partie de l’intégration d’électronique.
Soft skills
Les principales qualités d’un ingénieur système embarqué sont :
- Une forte capacité d’analyse et de compréhension d’un système, par exemple pour caractériser techniquement les demandes.
- La rigueur, notamment pour respecter les exigences définies, ou lors des phases de test.
- Une grande capacité d’apprentissage, car de nouvelles technologies apparaissent régulièrement, il faut donc pouvoir les acquérir rapidement.
- Être doté d’un esprit créatif car les projets sont divers, mais la finalité reste la même : trouver une solution !
Le métier d’ingénieur système embarqué consiste d’abord à comprendre précisément ce que le demandeur souhaite. Pour y parvenir, une grande aisance technique et relationnelle est nécessaire. Dès cette phase, il y aura une forte interaction avec les autres métiers concernés tels que le matériel, la mécanique ou le logiciel applicatif.
Ensuite, l’ingénieur doit réussir à mettre en place une architecture logicielle et un planning en tenant compte des contraintes exprimées, par exemple celles ayant trait à la sécurité, au coût, à l’autonomie ou encore au temps de développement. Tous ces éléments sont regroupés dans une spécification qui va servir de base aux travaux qui vont suivre.
Tout l’environnement technique va alors se mettre en place, avec ses choix de technologie(s), de langage(s) de programmation et de plateforme(s), chacun(e) ayant ses avantages et ses inconvénients.
Pendant la phase de développement, il est indispensable de bien documenter son code, afin qu’il puisse être éventuellement repris par un autre ingénieur.
Enfin, avant la livraison, l’ingénieur va tester chaque pièce de son “puzzle logiciel” (tests unitaires), puis va vérifier qu’elles s’emboîtent parfaitement ensemble (tests d’intégration). L’ensemble ainsi constitué doit bien entendu correspondre à ce qui était attendu.
Attention, ce travail peut nécessiter de nombreuses heures de programmation et de tests pendant les étapes de préparation et de livraison d’une commande. Des périodes de stress lors des phases d’essai et de suivi d’un produit sont possibles.
Voir les offres d’emplois sur inovallée.