Licence CC BY

Interview : Rencontre avec Natalya

Apprenons-en un peu plus sur Natalya, ingénieur en système embarqué

Natalya

Bonjour Natalya et bienvenue à mon micro ! C'est pour moi un petit plaisir que de te cuisiner car tu travailles dans un domaine que l'on connait assez vaguement et pourtant si intéressant, celui des systèmes embarqués.

Pour les lecteurs moins au fait de ce secteur, pourrais-tu dégrossir un peu la notion de "systèmes embarqués" ?

Je vais commencer par citer Wikipedia:

Un système embarqué (ou système enfoui) est défini comme un système électronique et informatique autonome, souvent temps réel, spécialisé dans une tâche bien précise. Le terme désigne aussi bien le matériel informatique que le logiciel utilisé.

On regroupe plein de choses sous ce nom : les pilotes automatiques d'avions, les téléphones portables, les drones, les portes de garage automatiques… Bref, tout ce qui a un processeur sans être un PC (ou un serveur), et certains systèmes sans processeurs mais avec une forme d'intelligence (on n'a pas besoin de processeur pour faire une alarme anti-intrusion).

Et maintenant je vais nuancer la définition :

  • c'est un système électronique et informatique, rien à redire ;
  • autonome, mais qui, de plus en plus, communique avec d'autres systèmes ;
  • souvent temps réel : on appelle temps réel des systèmes dont on peut prédire et borner le temps de réaction. Ce n'est pas le cas d'un PC, mais c'est nécessaire pour l'auto-pilote d'un avion. On s'épargne par contre cette contrainte quand on fait un téléphone portable ;
  • spécialisé dans une tâche bien précise : l'auto-pilote de l'avion, l'ouverture de garage, c'est très spécifique, par contre, pour les téléphones portable, aujourd'hui, ils font téléphone, GPS, internet, etc. J'ai du mal à dire qu'ils sont spécialisés.

Alors que va-t-on appeler un système embarqué ? Dans le monde du développement logiciel, on parle aujourd'hui de système embarqué dès que le soft développé dépend du hardware sur lequel on va le faire fonctionner. C'est très vague, mais le point important, c'est qu'on travaille avec le matériel.

Et alors concrètement, au quotidien tu fais quoi ?

Concrètement ? Plein de choses. Je travaille sur des produits assez divers : des drones, des ordinateurs de voiture, des casques audio…

Un drone

À mon poste actuel, je ne travaille pas sur les produits complets, je me concentre sur deux choses : les mémoires et les programmes de boot. Je travaille surtout sur des processeurs développés par mon entreprise, en ce moment sur un processeur basé sur un cœur ARM Cortex-A9, comme celui de l'iPhone 4S, auquel on a ajouté un GPU OpenGL ES 2.0 et des blocs de traitement vidéo développés en interne. On utilise le processeur nu (baremetal en anglais), ce qui signifie qu'il faut faire tout le travail que le BIOS fait sur un PC : démarrer la RAM, trouver le système d'exploitation dans la flash, le charger, etc. D'où la nécessité de comprendre les différentes technologies de mémoire qu'on utilise (notamment Flash NAND et DDR3).

Des chips de DDR

Dans mon travail, je développe donc les fonctionnalités nécessaires pour les différents projets (par exemple, j'ai eu un projet qui avait besoin de booter en réseau au lieu de trouver son OS dans la flash), je développe le support de nouvelles mémoires, et surtout, j'écris des tests pour savoir si elles rempliront bien leur rôle sur nos produits. Nos produits peuvent fonctionner de -40°C à +85°C de température ambiante. À ces températures, les transistors ne se comportent pas du tout pareil qu'à 20°C. Pour pouvoir faire ça, je passe énormément de temps à lire de la documentation.

Une fois le produit parti en production, le travail n'est pas fini. Il arrive parfois que des produits tombent en panne. Dans l'automobile, les taux de défaut sont de l'ordre de 30 pièces défectueuses pour 1 million (PPM), quand tout est normal (quand vous entendez dire qu'un modèle de voiture a plein de problèmes, c'est que les 30 PPMs n'ont pas été respectées). Mais imaginez que vous avez produit 100000 pièces, si une seule tombe en panne, ça fait déjà 10 PPM. Mais est-ce que les autres pièces vont aussi tomber en panne ? Pour le savoir, on analyse les pièces qui reviennent en panne. Retrouver l'origine du défaut à partir de ce qu'il reste de la pièce (je rappelle qu'elle ne marche plus) fait partie de mon boulot.

Ah, et comme je ne peux pas tout faire tout seul, j'ai recruté, je gère donc une équipe (de deux personnes, en me comptant ;) ). Mais je vais peut-être changer et faire du contrôle moteur (pour stabiliser des pièces, une caméra, par exemple, et éventuellement gagner en rendement, et donc en autonomie, vu qu’on est sur batterie). C’est vaste les systèmes embarqués.

Il y a quelques mois, on a pu découvrir le métier d’ingénieur en électronique avec zeqL. Ton activité est-elle complémentaire de la sienne ou complètement différente ?

Tu poses la question à cause de mes explications sur la gestion des retours ? Eh bien tu as raison, lui et moi, à ce niveau là, nous faisons quasiment le même travail. Simplement, quand la pièce est en panne à cause d'un composant électronique hors service, on lui confie la carte ; quand l'électronique a l'air fonctionnelle, c'est à moi qu'on la confie, à la recherche d'un défaut logiciel.

Cependant, dans beaucoup de cas, la cause n'est pas si évidente à déterminer. Il est possible de dégrader le matériel avec un mauvais logiciel, et il est possible de corrompre le logiciel avec un matériel fonctionnant mal à haute ou basse température, ou dans un environnement particulier, où qu'il se passe des choses quand on coupe l'alimentation électrique d'une certaine façon. En fait, si la plupart des tâches que j'ai à faire me sont demandées par des équipes logicielles, je collabore surtout avec les équipes matérielles. Aujourd’hui, on ne fait plus de matériel sans logiciel, mais il y a des millions de lignes de codes qu’on ne peut comprendre qu’en comprenant le matériel.

Lors de tes études, des choix/activités ont-ils été déterminants ?

Commençons d'abord par décrire mes études. J'ai suivi la voie la plus simple : bac S, puis directement école d'ingénieur (l'ESEO à Angers, pour les curieux) en prépa intégrée. À BAC+4, j'ai choisi de me spécialiser dans les systèmes embarqués et l'automatique (la science qui permet de faire du vol stationnaire avec un drone sans toucher les commandes), et, à BAC+5, en parallèle de ma dernière année d'étude, j'ai fait un master 2 de Recherche. Mon stage de fin d'étude s'est fait dans un labo de Recherche, et, à la fin du stage, j'ai abandonné l'idée d'une thèse pour aller travailler en entreprise.

Donc quels choix ont été déterminants ? Pour moi, il y a surtout un choix qui a été déterminant : celui d'aller dans le club robot de mon école. À la base, j'étais venu dans mon école pour faire de l'informatique pure, les autres cours du cursus ingénieur, c'était juste de la culture générale (mes parents avaient lourdement insisté pour que je ne fasse pas que de l'informatique, et aujourd'hui, je les en remercie). Le club robot, ça a été pour moi l'occasion :

  • de travailler en équipe ;
  • de me heurter à tous les petits problèmes qu'on ne voit pas en cours ;
  • de me rendre compte que l'électronique c'est cool, que c'est plus que la théorie qu'on voit en cours, et que les cours sont théoriques parce que le reste peut être acquis autrement. Oui, il faut le dire, les cours d'électronique et d'automatique, c'était nécessaire, mais c'était chiant.

Chomp, un robot de l'ESEO, auquel j'ai participé

Si je n'avais pas été au club robot, je n'aurais pas choisi de faire une option avec de l'électronique, et je ne serais pas au même poste aujourd'hui.

À ce titre, on peut donc citer mon passage en master Recherche comme déterminant. Grâce à ça, je sais que la Recherche publique ne m'intéresse pas.

C'est un conseil que je donne à mes lecteurs : essayez le plus de choses possible le plus tôt possible, ça vous permettra de trouver plus rapidement ce qui vous plait dans la vie, et de vous investir dedans sans vous demander si l'herbe est plus verte ailleurs.

Et ton activité professionnelle te permet-elle de continuer à participer à des activités en extra comme des clubs de robotique ?

Oh oui, on travaille assez peu en France, le contrat à temps plein, de base, est à 35H par semaine, généralement 38h30 + RTT en tant que cadres (même s’ils en font souvent 40. J’en fais plutôt 45, mais c’est pas une généralité). Ça laisse le temps de faire des activités à côté.

Les deux ans après ma sortie de l’école, j’ai fait de la robotique dans l’équipe Atlantronic, composée principalement d’ingénieurs de Centrale Nantes, que j’ai rencontrés à l’occasion de mon master. Maintenant, je participe à l’organisation de l’événement (enfin, pas trop cette année, j’ai eu d’autres activités perso : du jeu de rôle sur table, du jeu de rôle grandeur nature, etc.).

Allez, une image de GN pour faire bonne mesure

D’ailleurs, je profite de l’interview pour faire un peu de com’ : la ville de la Ferté Bernard ne pouvant organiser le festival ARTEC cette année, Planète Science, l’association qui organise la coupe de France de Robotique, doit reprendre à sa charge pas mal de frais habituellement pris en charge par la ville. N’étant pas parvenu à trouver d’autres partenaires pour financer entièrement la Coupe, ils font appel au financement participatif, donc si vous voulez soutenir un événement qui développe les compétences de milliers d’étudiants ingénieurs participant chaque année, et qui vulgarise les sciences auprès du grand public (et qui est un rassemblement super sympa entre passionnés, mais je suis pas sûr d’attirer les financements avec cet argument ;-) ), et bien entendu si vous en avez les moyens, n’hésitez pas !

Un petit mot pour la fin ?

Mon mot de la fin s’adressera à tous les passionnés, et particulièrement aux lycéens et futurs étudiants. Vous avez une passion, c’est une chance, ça enrichit votre vie. Néanmoins, quand vous avez l’opportunité d’étudier, ne vous enfermez pas dans votre seule passion. Il est possible que vous puissiez vivre votre passion plus pleinement en l’appliquant au-delà de son cadre stricte. Cherchez une formation centrée sur votre passion, mais plus large que celle-ci. Vous êtes passionné, votre formation vous donnera les bases pour aller plus loin, ce que vous ne manquerez pas de faire, en tant que passionné, mais ce que vous découvrirez dans des domaines connexes risque de vous rester à jamais inaccessible si vous ne profitez pas de vos études pour apprendre les bases.



22 commentaires

Interview très enrichissante (le seul soucis c'est que ça "spoil" les JZdS, m'enfin ça va, on s'en remettra. En l'occurrence ça m'a fait un rappel puisqu'on en avait parlé il y a de ça des années maintenant.

Le mot de la fin est plein de sagesse, je l'appuie à 100%.

Merci beaucoup à vous deux, une nouvelle fois.

+4 -1

Intéressante interview. La partie sur la gestion des retours et l'analyse post mortem des pièces à l'air plutôt "amusante". Quand une pièce est complètement morte, tu t'y prends comment pour retrouver la root cause du problème ?

Xalfen

Ca dépend des fois. Le plus souvent, on charge un programme externe, via USB ou SD card par exemple (les processeurs qu'on utilisent savent booter dessus), et on récupère tout le contenu de la flash. Partant de là, on peut rechercher des corruptions dans les fichiers ou le système de fichier lui même.

  • Généralement, on finit par trouver, parce que si la pièce ne marche plus et que le matériel est fonctionnel, c'est qu'il y a un défaut dans la mémoire non-volatile.
  • Parfois, néanmoins, les données sont correctes, mais le soft les gère mal. On peut reproduire le défaut en exécutant au débuggeur le soft avec les données présentes en flash.

Ensuite, une fois le défaut identifié, il faut retrouver l'origine du défaut. On tente de garder quelques logs dans les pièces, mais ça prend de la place, et ajouter de la mémoire pour mémoriser les 10 ans de vie d'une pièce (voir plus), c'est un surcoût qu'on a du mal à vendre au client. Généralement, on se sert plutôt de traces dans les bases de données et dans le système de fichier (fichiers supprimés mais encore présents en flash, …) pour identifier ce qui s'est passé.

C'est un processus très long, ce qui explique que des personnes soient employées à plein temps pour s'occuper des retours, et, si c'est fait systématiquement dans le cas d'un retour par un client intégrateur, c'est beaucoup plus rare en électronique "consumer" (vente d'un produit fini à l'utilisateur final), comme les smartphones. Déjà, les taux de retour sont 1000 fois plus élevés (3% contre 30 PPM), et les retours sont moins pertinents: il y a beaucoup de retours parce que le produit ne marche pas comme le client le souhaite, parce que le client n'a pas lu la notice, … Les politiques qualités habituelles consistent à prendre un retour sur 100 (on passe de 3% à 300PPM) et à faire le tri rapidement entre ce qui résulte d'une mauvaise utilisation et ce qui peut être un vrai défaut de conception.

Vous pourrez dire qu'un produit qui ne fonctionne pas comme les clients l'attendent est un mauvais produit. C'est vrai, mais ce n'est pas le but de ce genre d'analyse. De la même façon, un téléphone qui reboot toutes les 24H, c'est un défaut, mais s'il est connu et qu'on a choisi de produire avec ce défaut, ça ne sert à rien de faire ce genre d'analyse sur les pièces qui reviennent avec ce type de plaintes.

Et oui, il arrive que des produits partent en production avec des défauts connus. Les entreprises cherchent à faire des produits que les gens sont prêts à acheter, pas forcément des produits parfaits. Chaque entreprise a sa propre politique, les jeux Nintendo sont généralement précis au pixel près, mais sont généralement moins poussés techniquement que le nouveau call of duty, qui lui, à sa sortie, est aussi buggé que Windows Millenium edition.

BTW, il m'arrive de troller un peu, si j'ai critiqué votre marque préférée, dites vous que c'est juste de la mauvaise foi, on s'épargnera quelques pages de débats stériles.

Et oui, il arrive que des produits partent en production avec des défauts connus. Les entreprises cherchent à faire des produits que les gens sont prêts à acheter, pas forcément des produits parfaits.

Ah les bons processeurs TI avec des docs de 3000 pages qui "oublient" de lister les fonctionnalités importantes et qui ont des Erratas à part de plusieurs dizaines de pages. Et quand tu tombes sur un cas qui est dans un errata que tu as oublié de consulter, ça t'apporte de la joie. :)

+2 -0

Et oui, il arrive que des produits partent en production avec des défauts connus. Les entreprises cherchent à faire des produits que les gens sont prêts à acheter, pas forcément des produits parfaits.

Ah les bons processeurs TI avec des docs de 3000 pages qui "oublient" de lister les fonctionnalités importantes et qui ont des Erratas à part de plusieurs dizaines de pages. Et quand tu tombes sur un cas qui est dans un errata que tu as oublié de consulter, ça t'apporte de la joie. :)

Renault

Cela fonctionne pour tous les fondeurs :)

Microchip est connu pour sortir des MCU à l'arrache et ils vont jusqu'à la désactivation de fonctions qui ne fonctionnent pas. ;)

C'est sympa ce genre d'article, ça permet déjà de découvrir qui se cache derrière un pseudo et surtout de voir qu'à partir d'une activité extra-scolaire (ou dans l'école mais pas dans le cursus), on peut se découvrir une passion et un métier.

(Il manque une parenthèse fermante je suppose ici : "(quand vous entendez dire qu'un modèle de voiture a plein de problèmes, c'est que les 30 PPMs n'ont pas été respectées)")

+0 -0

Qui te dit que c'est une femme ?

Renault

heu....le fait que je l'ai vue en vrai aux JZDS? Xalfen, il me semble que tu étais présent, d'ailleurs ^^

Natalya est une fille, et (rien a foutre jbalance) Grace à elle les JSDZ sur le siteduzero à l'époque étaient un peu devenu les feux de l'amour, genre encore pire que sur ma biographie actuelle sur zeste :p

L'auteur(e) s'est trahi(e) ?

Javier

J'avoue c'est chelou xD Natalya, tu as changé de sexe ou.....?

+1 -1

Ingénieur est un titre, et je ne vois pas plus de problème à dire "Alice est ingénieur à Paris" que "Anne est maire de Paris".

Maintenant, s'il est vrai que GeO et moi avons pris beaucoup de plaisir à jouer dans les feux de l'amour sur le SdZ, il ne me semble pas avoir accordé la moindre phrase au féminin sur ZdS. En fait, j'avais même initialement abandonné ce pseudonyme, jusqu'au premier JZdS (en dehors de l'AG constitutive), où tout le monde m'a reproché mon changement de pseudo.

Au demeurant, je ne pense pas que ma dernière paire de chromosome ait une grande incidence sur le travail à effectuer. Si vraiment ça vous gêne, je peux reformuler l'article de façon à faire disparaître tout accord au sujet.

Par contre, je vais voir pour corriger l'erreur remontée par krostar: des systèmes entiers se sont effondrés pour une parenthèse manquante.

Maintenant, s'il est vrai que GeO et moi avons pris beaucoup de plaisir à jouer dans les feux de l'amour sur le SdZ, il ne me semble pas avoir accordé la moindre phrase au féminin sur ZdS. En fait, j'avais même initialement abandonné ce pseudonyme, jusqu'au premier JZdS (en dehors de l'AG constitutive), où tout le monde m'a reproché mon changement de pseudo.

Le mythe est tombé… On en aura bien ri cela dit.

En ce qui concerne ton interview… Y a de quoi se sentir seul quand tu dis qu'il ne faut pas s'enfermer dans sa passion trop tôt, et je ne peux qu'appuyer tes propos. :)

Tu dois maitriser plusieurs choses sur les systèmes d’information et la programmation. En tant que webmaster, est-ce que tu trouves que j’aurai la chance d’arriver à programmer un pilotage automatique moi aussi?

Edit Coyote : suppression du lien.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte