Ingénieur Développement Systèmes Embarqués C Linux
Société: SAGEM Tunisie Lieu: Tunis, TunisieMétier: TV numérique et DVB
octobre 2010 - mars 2011
Développement d’une stratégie de signalisation privée pour deux produits décodeurs numériques SAT : Zappeur et PVR
Principales tâches :
Responsabilité sur le développement et la maintenance des deux projets PVR et Zappeur (élaboration du planning, gestion de configuration sur SVN et Bugzilla, gestion du projet sur SharePoint, participation dans les conf-call avec le client …)
Analyse des besoins du client et étude de faisabilité
Conception de la structure de données utilisée pour cette signalisation privée.
Conception du module responsable de la gestion de cette nouvelle fonctionnalité (acquisition, sauvegarde, IHM)
Développement de l’outil de génération/édition de la table privée (puisqu’elle n’est pas supportée par les outils dont le client dispose)
Développement du module d’acquisition et analyse de la table privée
Formatage et présentation des données à l’utilisateur (liste des chaînes, organisation des chaînes favorites proposées par le diffuseur, message de blocage de chaînes)
Test unitaires et corrections des problèmes découverts
Test d’intégration et stabilisation de la nouvelle fonctionnalité
Correction des problèmes détectés par l’équipe de la validation et par le client
Supporter le client pour déployer la nouvelle signalisation du plan de service : mission à Budapest chez le client (présentation fonctionnelle et résolution des problèmes terrain rencontrés)
Cette nouvelle fonctionnalité a été conçue et développée sur deux architectures logicielles différentes, l’une pour un produit Zapppeur et l’autre pour un produit PVR (Personal Video Recorder).
Environnement : C/C++, Linux Ubuntu, Windows XP, Eclipse, Understand C, GDB, ST OS21, Architecture ST40, C#.Net 2.0, Visual Studio 2005, SVN, Bugzilla, Set-Top Box, Sonde STMC1.
avril 2010 - septembre 2010
Conception et implémentation de la fonctionnalité de gestion des chaines TV et Radio basée sur la table NIT.
Principales tâches :
Conception générale et détaillée du module de filtrage des tables NIT et SDT en se basant sur la spécification ETSI EN 300 468 V1.9.1
Conception détaillée de l'IHM
Implémentation et tests unitaires des modules demandés
Test d'intégration et correction des anomalies détectées
Les modules essentiels sont :
Recherche automatique des services : recherche basée sur les informations NIT
Classification des chaines par réseau d'appartenance
Gestion des services trouvés : tri selon type du service (TV/Radio), LCN et puissance du signal
Gestion de l'IHM et la synchronisation entre les écrans
Principales tâches :
Etude de l'architecture existante
Analyse de la spécification concernant la fonctionnalité EPG (structure de la table EIT, mécanisme de signalisation et descripteurs utiles). La spécification utilisée est ETSI EN 300 468 V1.8.1
Analyse de la spécification du client : organisation de l'information sur l'écran (ergonomie et précision des données affichées)
Conception générale et détaillée
Implémentation en respectant les règles du codage (langage C)
Détection et correction des anomalies du codage en utilisant le système Klocwork
Tests unitaires et intégration du code sur le serveur SVN
Débogage et robustesse
Environnement: C/C++, Linux Ubuntu, Ethereal, Eclipse, Understand C, GDB, ST OS21, Architecture ST40, SVN, Bugzilla, Set-Top Box, Sonde STMC1.
Implémentation de la fonctionnalité TOP (Table Of Pages)
pour le télétexte d'un opérateur de TV numérique Allemand. « TOP
2009 - octobre 2009
« TOP teletext » est un système qui permet la navigation dans les pages télétexte d'une façon thématique en utilisant les boutons couleurs de la télécommande.
Principales tâches :
Lecture et analyse de la spécification du client
Analyse de la spécification ETS 300 706 « Enhanced Teletext Specification »
Conception générale du nouveau module responsable de la fonctionnalité « TOP teletext »
Conception détaillée (Fonctions, paramètres, messages, structure de données…)
Rédaction des documents de conception générale et détaillée.
Implémentation du module en langage C
Intégration du code sur le serveur SVN
Tests unitaires et tests d'intégration.
Correction des problèmes retournés par l'équipe de la validation.
Principales tâches :
- Correction des anomalies IHM
- Evolution du module du paramétrage Audio/Vidéo (Type audio, Niveau audio, Résolution vidéo, Colorimétrie,…)
- Evolution HDMI/HDCP
- Amélioration DVB-SI : Résolution du conflit LCN, prise en compte de visible_flag, tri selon qualité du signal,…
- Gestion des clés de cryptage Ks dans l’EEPROM pour le système CONAX CAS
- Correction des anomalies de la fonctionnalité MHEG
- Réalisation des tests unitaires et des tests de non-régression
- Intégration et gestion du code sur SVN
- Gestion des anomalies sur Bugzilla
- Gestion des livrables sur SharePoint : Release Notes, Fiches de tests, Documents de conception, Binaires,…
Société: TUNAV Lieu: Tunis, TunisieMétier: Localisation et suivi par GPS
août 2008 - aujourd'hui
Evolution du serveur de communication TCP/GPRS/SMS pour supporter un nouvel équipement
Principales tâches :
- Etude du protocole de communication spécifique à l’équipement.
- Etude du modèle de données et des modifications à apporter
- Mise à jour des documents de conception (diagrammes UML)
- Gestion de la base de données sur SQL Server 2005
- Conception et implémentation des classes de gestion du protocole spécifique à l’équipement
- Interrogation de la base de données en utilisant les services de la couche ADO.Net
- Réalisation des tests unitaires et des tests de non-régression
Environnement : C#.Net, ADO.Net, Microsoft Visual Studio 2005, SQL Server 2005, Windows XP
septembre 2007 - avril 2008
Conception et développement d’un composant de communication entre l’utilisateur (chauffeur) et l’équipement GPS (à bord du véhicule) via une interface série
Plateforme : PIC18F8722
Environnement : Microchip MPLAB 7.6, MCC18 Compiler
Langage : C Standard
RTOS : PICOS18 v2.10
août 2007 - aujourd'hui
Conception et implémentation d’un serveur de communication TCP/GPRS/SMS entre les équipements de suivi et la base de contrôle.
Le serveur de communication est un composant essentiel dans la solution de gestion de flotte puisqu’il permet la collecte des données envoyées par les équipements (qui utilisent des protocoles différents) et l’envoi (et l’ordonnancement) des commandes de contrôle/configuration à distance.
- Conception générale et détaillée en élaborant les diagrammes UML (Use cases, Classes, Séquences et Activités) sur Rational Rose
- Création de la base de données avec SQL Server 2005
- Mise en place d’une architecture en couche sous Visual Studio 2005
- Implémentation de la couche communication : les équipements peuvent envoyer les données soit par GPRS (TCP côté serveur) soit par SMS (pilote modem GSM côté serveur). Cette couche masque la technologie de communication pour les autres couches.
- Implémentation de la couche de codage/décodage des données
- Implémentation de la couche classification et stockage
- Réalisation des tests unitaires et des tests d’intégration
- Correction des anomalies détectées
- Préparation du projet Setup
- Gestion du projet sur SVN
Conception : UML sous Rational Rose
Langage : C#.NET 2.0
Base de données : SQL Server 2005
Environnement : Microsoft Visual Studio 2005, SVN
octobre 2006 - janvier 2007
Conception et implémentation d’un protocole de communication (fiable et optimisé) entre l’équipement de suivi et la base de contrôle sur le lien GSM DATA.
- Analyse des besoins
- Conception générale : architecture en couches
- Conception détaillée des modules, des fonctions, des messages et des structures de données
- Implémentation de la couche physique : Configuration du modem MC45 de Siemens, interface de communication RS-232
- Implémentation de la couche liaison de données : Inspirée du protocole PPP (Point to Point Protocol) en utilisant la RFC 1661. Modification de la machine d’états du PPP pour être supportée par l’unité mobile (contrainte complexité et mémoire). Un champ de contrôle est utilisé pour détecter les erreurs éventuelles (FCS).
- Implémentation de la couche transport : inspirée du protocole TCP en utilisant la RFC 793. Essentiellement l’implémentation du mécanisme de la fenêtre glissante (Sliding Window) qui permet de gagner considérablement en bande passante et donc minimiser le coût de l’échange de données entre l’équipement et la base de contrôle.
- Implémentation de la couche présentation : interface WinForms
Conception : UML sous Rational Rose
Langage : C#.NET 2.0
Environnement : Microsoft Visual Studio 2005
Consultant C/C++ Linux
Société : Eagles Technologies Client : PSA Sochaux Lieu: Sochaux, France
aujourd'hui
Mission : Coordination et suivi du développement/intégration sur les projets VPM Etude
Durée : 3 mois
Principales tâches :
Intégration des développements faits sur les projets VPM Etude
Gestion des anomalies avec le système JIRA
Analyse et correction des anomalies en C++ et Java
Développement et mise à jour des scripts shell Unix
Pilotage des Test d’Intégration
Suivi des Test Fonctionnels
Coordination entre l’équipe développement et concepteurs
Études et formations
Trois années d’étude
à Sup’Com, école supérieure des communications de Tunis.
2002
Deux années d’étude
à IPEIN, Institut Préparatoires aux Etudes d’Ingénieurs de Nabeul.
2000
Langues
Anglais - C2
Autres compétences
FORMATIONS PROFESSIONNELLES
Linux Embarqué:
Organisme: ACSYS
Architecture: ST40
OS: STLinux
Environnement: Linux Ubuntu
Acquis: cross-compiling, architecture du noyau linux, compilation du noyau, génération de l'image du noyau, le mécanisme du boot, système de fichier, débogage sur cible en utilisant STWorkbench, ...
Outils: STWorkbench
SVN Subversion:
Organisme: interne (Sagem)
Environnement: Linux Ubuntu
Forge
Organisme: interne (Sagem)
Bonnes pratiques pour le langage C:
Organisme: proxym-it
Environnement: Linux Ubuntu
Outils: EclipseLANGUES
Anglais Technique
Français Courant
Arabe Maternelle