Développement d’un environnement logiciel embarqué pour un smartphone frugal
Type de contrat : CDD
Niveau de diplôme exigé : Bac + 5 ou équivalent
Fonction : Ingénieur scientifique contractuel
A propos du centre ou de la direction fonctionnelle
Le centre Inria de l'Université de Rennes est un des neuf centres d’Inria et compte plus d'une trentaine d’équipes de recherche. Le centre Inria est un acteur majeur et reconnu dans le domaine des sciences numériques. Il est au cœur d'un riche écosystème de R&D et d’innovation : PME fortement innovantes, grands groupes industriels, pôles de compétitivité, acteurs de la recherche et de l’enseignement supérieur, laboratoires d'excellence, institut de recherche technologique
Contexte et atouts du poste
Dans le cadre d’un partenariat. Ce poste d’ingénieur CDD de 24 mois s’inscrit dans le cadre d’une action exploratoire financée par l’Inria.
Contexte. Le projet SmolPhone est une recherche-action dans le domaine de l’informatique frugale. En pratique, il vise à concevoir une sorte de smartphone low tech doté d’une semaine d’autonomie. L’objectif n’est pas d’optimiser un smartphone classique, mais plutôt de reconsidérer les choix de design habituels en informatique mobile. Le projet vise à servir de terrain de recherches vers une informatique low tech et frugale.
Pour plus d’informations, voir https://inria.hal.science/hal-04156447 et https://inria.hal.science/hal-04589322
Objectif du poste. L’objectif à la fin du contrat est d’avoir un environ- nement logiciel embarqué intégrant les applications classiques d’un as- sistant personnel (téléphone, messagerie, agenda, mail, web, bloc note) pouvant s’exécuter sur un matériel embarqué aux capacités très restreintes. Pour ce faire, la personne recrutée devra assembler un environnement logi- ciel dédié, puis construire les applications cibles dans cet environnement.
Mission confiée
Missions :
La première mission consistera à établir un environnement de développement d’applications graphiques pouvant s’exécuter sur des micro-contrôleurs dotés de quelques centaines de kilo-octets de mémoire seulement. On utilisera le langage Rust en s’appuyant sur la bibliothèque graphique Slint, qui offrent un sur-ensemble de ce dont nous avons besoin. Un mécanisme de délégation de contrôle au co-processeur applicatif devra également être intégré, en s’appuyant sur un prototype existant.
La seconde mission sera de réaliser les applications attendues d’un smart- phone des années 2000 : téléphonie, SMS, agenda et carnet d’adresse partagés, bloc note, podcasts, emails, visualiseur markdown, lecteur d’epub, etc. Les applications développées ne visent pas l’originalité, mais elles montrent l’adéquation de l’environnement de développement choisi.
Si le temps le permet, la troisième mission visera à établir une infras- tructure distribuée autour du SmolPhone. Un pont Matrix permettra de convertir la messagerie instantanée en un protocole unique, pour lequel on implémentera un client adéquat coté micro-contrôleur. L’infrastructure développée devra permettre l’envoi de SMS de contrôle au SmolPhone pour réactiver les données mobiles à distance. La réalisation d’un proxy de rendu HTML5 constitue à priori une action de recherche ne rentrant pas dans le périmètre du poste d’ingénieur·e.
La personne recrutée devra également participer à la rédaction d’articles scientifiques présentant l’environnement réalisé, en collaboration.
Collaboration :
Le/la candidat.e travaillera sous la responsabilité de Martin Quinson (enseignant-chercheur dans l’équipe MAGELLAN, ex- pert en systèmes distribués et en informatique frugale) et Simon Rokicki (enseignant-chercheur dans l’équipe TARAN, expert en micro-architecture et compilation), en équipe avec un.e ingénieur.e concevant le matériel prévu pour les applications développées. Il/elle collaborera de plus avec Joseph Paturel et Mickaël Le Gentil (ingénieurs de recherche dans les équipes TARAN et GRANIT, experts en systèmes embarqués).
Responsabilités :
La personne recrutée a la charge de **** et prendra des initiatives pour ****.
Pilotage/Management :
La personne recrutée aura la responsabilité de ****.
Principales activités
Activités principales.
- Conception en lien avec les membres du projet et réalisation.
- Développement logiciel de l’environnement et des applications.
- Tester et modifier jusqu’à valider les développements réalisés.
- Rédiger une documentation pour les futurs contributeurs.
- Mise en place et administration d’une infrastructure distribuée de soutien s’exécutant sous Android, en adaptant des outils existants.
Activités complémentaires
- Rédiger le compte rendu hebdomadaire d’avancement. • Participer aux réunions de groupe hebdomadaire.
- Participer à la rédaction d’articles scientifiques.
Compétences
Le niveau attendu est celui d’un.e ingénieur.e nouvellement diplômé.e, sans expérience professionnelle particulière.
Compétences techniques et niveau requis.
- Ingénierie logicielle et conception de systèmes: bon niveau
- Développement d’applications embarquées: bon niveau
- Développement dans un langage de bas niveau comme C, C++ ou
- Rust: bon niveau. Aucun niveau préliminaire n’est exigé en Rust, mais le/la candidat.e devra avoir une certaine appétence pour apprendre ce langage.
- Participer à un environnement de recherche ouvert: expérience appréciée
Langues.
- Français ou anglais comme langue de travail à l’oral (au choix du/de la candidat.e)
- Anglais écrit pour lire la bibliographie et rédiger la documentation et les articles scientifiques.
Compétences relationnelles.
- Autonome et réactif
- Bonne communication avec les collègues pour collaborer, trouver de l’aide et exposer les avancées du projet
Avantages
- Prise en charge partielle des frais de transport en commun sur le trajet domicile-travail ou
FMD. - Restauration subventionnée
- Prise en charge partielle des frais de mutuelle
- Possibilité de télétravail (à hauteur de 90 jours annuels) et d'aménagement du temps de travail
Rémunération
Rémunération mensuelle brute à partir de 2695 euros selon diplôme et expérience
Informations générales
- Thème/Domaine :
Programmation distribuée et génie logiciel
Ingénierie logicielle (BAP E) - Ville : Rennes
- Centre Inria : Centre Inria de l'Université de Rennes
- Date de prise de fonction souhaitée : 2024-09-02
- Durée de contrat : 2 ans
- Date limite pour postuler : 2024-08-31
Attention: Les candidatures doivent être déposées en ligne sur le site Inria. Le traitement des candidatures adressées par d'autres canaux n'est pas garanti.
Consignes pour postuler
Merci de déposer en ligne CV, lettre de motivation et éventuelles recommandations
Sécurité défense :
Ce poste est susceptible d’être affecté dans une zone à régime restrictif (ZRR), telle que définie dans le décret n°2011-1425 relatif à la protection du potentiel scientifique et technique de la nation (PPST). L’autorisation d’accès à une zone est délivrée par le chef d’établissement, après avis ministériel favorable, tel que défini dans l’arrêté du 03 juillet 2012, relatif à la PPST. Un avis ministériel défavorable pour un poste affecté dans une ZRR aurait pour conséquence l’annulation du recrutement.
Politique de recrutement :
Dans le cadre de sa politique diversité, tous les postes Inria sont accessibles aux personnes en situation de handicap.
Contacts
- Équipe Inria : MAGELLAN (DGD-S)
-
Recruteur :
Quinson Martin / martin.quinson@irisa.fr
L'essentiel pour réussir
Ce poste d’ingénieur s’adresse, entre autres, à des ingénieur.es de formation spécialisé.es en ingénierie du logiciel ou en logiciel embarqué. Se sentir à l’aise dans un environnement de recherche académique, aimer apprendre, ex- plorer, intéragir et écouter sont des qualités essentielles pour réussir cette mission.
A propos d'Inria
Inria est l’institut national de recherche dédié aux sciences et technologies du numérique. Il emploie 2600 personnes. Ses 215 équipes-projets agiles, en général communes avec des partenaires académiques, impliquent plus de 3900 scientifiques pour relever les défis du numérique, souvent à l’interface d’autres disciplines. L’institut fait appel à de nombreux talents dans plus d’une quarantaine de métiers différents. 900 personnels d’appui à la recherche et à l’innovation contribuent à faire émerger et grandir des projets scientifiques ou entrepreneuriaux qui impactent le monde. Inria travaille avec de nombreuses entreprises et a accompagné la création de plus de 200 start-up. L'institut s'efforce ainsi de répondre aux enjeux de la transformation numérique de la science, de la société et de l'économie.