IF

Réf : IF-05122019

Ingénieur mobile certifié

Tarif

560€ / J HT

Lieu

Ile-de-France

Expérience

5 ans

Disponibilité

Immédiate

Principaux talents

Ingénieur mobile

SCRUM

SAFE

Compétences clés

Formations et Diplômes

2014 – 2016

Mastère Professionnelle en Service Web et Multimédia

(ISITCOM – Hamam Sousse, Tunisie Institut Supérieur de l’Informatique et des Technologies de Communication)

2011 – 2014

Licence Appliquée en Systèmes Informatiques

2 années préparatoires intégrées, une année licence appliquée

INSAT – Tunisie (Institut National des Sciences Appliquées et Technologies)

Certifications

PSM1: Professional Scrum Master

SAFe 4.6 : Scale Agile Framework Practinioner

PSPO1 : Professional Scrum Product Owner

Langues

Anglais
Bon niveau

Centres d’intérêt

01/2017 – 06/2017

Chroniqueur Radio à RM-FM

But et mission : Chroniqueur dans une émission radio nommée ‘Jeunewzz’ qui s’intéresse aux occupations et problèmes des jeunes.

2014 – 2016

Fondateur et président de DevCom IT Club.

2011 – 2014

  • Membre JCI INSAT (Junior Chamber International).
  • Membre INSAT Club.
  • Membre Netlinks Club.

Soft Skills

Vision globale

Force de proposition

Multicompétences

SYNTHÈSE DE PARCOURS

IF est Ingénieur mobile certifié. Ses expériences lui permettent d’accompagner vos projets avec une vision globale de vos besoins. Il intervient aussi bien sur les aspects fonctionnels que techniques.

Dans ses dernières missions, il a réalisé des projets de transformation digitale, de conception d’architecture, de refonte graphique d’applications ou encore de développement en s’appuyant sur la méthodologie SCRUM. Très bon communiquant, il facilite également la communication entre les équipes de développement et les équipes métier.

EXPERTISES

Compétences métier

Préconiser le travail en agile tout en respectant les cérémonies SCRUM.

Faciliter la communication entre l’équipe Dev et l’équipe métier.

Assurer son rôle de serviteur de la SCRUM team.

Analyse du contexte et des besoins clients.

Conception et Réalisation des applications dans les normes conventionnelles.

Développement et maintenance des programmes/applications mobiles.

Tester les solutions développées (Tests unitaires et UI)

Bonne gestion du déroulement du projet.

Bonne communication avec les membres de l’équipe.

Test de validation des livrables.

Rédaction de documents techniques et fonctionnels

Compétences techniques

Plateforme :  iOS, Android

SGBD : SQLite, Core Data, Realm, MySQL

Langages :  Swift, Objective-C, C. Java, Javascript, Php HTML

IDE : Xcode

Outils de gestion de projet :  JIRA, Redmine, IceScrum, Asana

Outils intégration continue : Github, gitLab, Jenkins, FastLane, SonarQube, Appaloosa, Fabric, Firebase

Tests (Unitaires et UI) : XCTestCase, Appium, Selenium …

Méthodologie :  Agile : SCRUM

OS : macOS, Windows, Ubuntu

LES DERNIÈRES MISSIONS

Contexte du projet : Disneyland Paris représente un ensemble de parcs d’attraction et hôtels ouverts au grand public à Marne-la-Vallée. Les visiteurs, choisissant de s’offrir une Full Disney Experience (Accès Hôtels + toutes les attractions/show à Disney), ont droit à un MagicPass.

Le MagicPass est une carte physique RFID/Ultralight-C, qui permet à son utilisateur de :

  • Entrer aux parcs Disneyland / Shows via les tourniquets et portiques.
  • Payer tous ses achats dans tous les shops disponibles dans les parcs Disneyland.
  • Consommer ses plans repas.
  • Payer ses frais d’hôtels.
  • Récupérer ses FastPass (passes coupe-file) depuis les bornes dédiées dans les parcs Disney.
  • Accéder aux hôtels Disney.

L’objectif principal du projet consiste à digitaliser le pass physique en un pass NFC exploitable via AppleWallet et GooglePay.

 

Réalisations :

  • Raffiner les features proposés par la direction et bien détailler le besoin avec le Product Owner.
  • Définir toutes les parties prenantes du projet ainsi que les dépendances nécessaires pour pouvoir initier le développement du projet.
  • Adapter la méthodologie SCRUM à notre projet tout en respectant certaines cérémonies valorisant l’inspection, la transparence et l’adaptation du besoin selon la roadmap disponible tout en prenant en compte les limitations techniques.

 

Digitalisation du MagicPass sur AppleWallet/GooglePay via AppleVAS (Value Added Service) et GoogleSmartTap :

  • Explorer le fonctionnement des passes simples et NFC sur AppleWallet/GooglePay.
  • Développement des passes simples avec différents templates sur iOS et Android.
  • Gérer les meetings avec Apple pour avoir des certificats/clés de développement des passes NFC sur AppleWallet/GooglePay.
  • Gérer les meetings avec les fournisseurs de lecteurs NFC installés sur les parcs Disney agissant sur plusieurs use cases du projet pour vérifier la compatibilité AppleVAS et GoogleSmarTap ainsi que le format de la data échangée.
  • Gérer les meetings avec les différents départements de Disney qui sont concernés par les use cases du projet comme : Département ticketing, paiement …
  • Proposer des solutions à la suite des problèmes d’incompatibilité des certains terminaux NFC avec AppleVAS et GoogleSmartTap tout en prenant en compte le changement de ces appareils dans le futur.
  • Sensibiliser les parties prenantes des bénéfices de sécurité apportés par la digitalisation contre la fraude et la contrefaçon.
  • Collaborer avec DisneyUS pour développer un API en SpringBoot pour livrer des passes NFC exploitables via AppleWallet et GoogleSmartTap.
  • Effectuer les tests End-To-End pour le use case « Passage par les tourniquets et portiques ».

 

Développement du Bridge iOS / React-Native :

  • DisneyLandParis est une application React-Native. On voulait commencer à intégrer certains modules natives en Obective-C / Swift pour profiter de la performance des technologies natives.
  • Ajouter un module natif permettant d’ajouter son pass à son AppleWallet via <React/RCTBridgeModule.h>

 

Environnement technique/métier :

 Plateforme : iOS, Android, Web
 Langage : Objective-C, Java
 Technologies Passkit, AppleWallet, AppleVAS, GooglePay, GoogleSmartTap, NFC passes, Core NFC, SpringBoot, ReactNative, RCTBridgeModule, GitHub …
 Outils de gestion de projet JIRA, Confluence.
 Méthodologie Agile : SCRUM

Important : la mission a pris fin suite à une rupture de budget imprévue.

Contexte du projet : Notico est une application mobile (iOS et Android) native à base de géolocalisation qui est composée en 3 parties majeures :

  • Univers Professionnel: C’est la partie B2B de l’application qui permet aux clients de bien localiser ses employés tout en leur affectant des évènements ou des missions sur leurs champs de travail qu’ils peuvent accepter ou décliner. Chaque utilisateur a la possibilité de configurer ses paramètres de visibilité pour assurer le respect de ses informations privées.
  • Univers Alertes publiques : C’est une des deux parties B2C de l’application qui permet à l’utilisateur de consulter la liste des alertes publiques (classées par sévérité : rouge, jeune, orange, vert) selon sa position. Ce dernier peut configurer la liste de ses alertes publiques tout en s’abonnant à des lieux qu’il choisit pour être toujours alerté indépendamment de sa position ou en filtrant via les catégories des alertes publiques.
  • Univers Contacts : C’est une des deux parties B2C de l’application qui permet à l’utilisateur d’ajouter plusieurs contacts via son répertoire téléphonique pour veiller sur eux et recevoir des alertes selon leurs mouvements et vice versa. Pour assurer le respect de sa vie privée, chaque utilisateur peut régler ses paramètres de visibilité vis-à-vis ses contacts.

 

Réalisations :

  • Participer à la gestion du projet en participant aux cérémonies SCRUM.
  • Mener des ateliers de conception technique et UI pour faire participer la SCRUM team ainsi que les parties prenantes (stakeholders) dans la réalisation du projet.
  • Accompagner l’équipe métier pour bien définir les besoins et raffiner le Product Backlog.
  • Refonte graphique de certains modules de l’application.
  • Assurer la présentation des démos de fin sprint (Sprint Review).
  • Assurer le bon déroulement des cérémonies SCRUM même en cas d’absence de certains membres de l’équipe SCRUM.
  • Conception de l’architecture du projet.
  • Développement du module de géolocalisation qui permet de remonter la position de l’utilisateur quel que soit l’état de l’application via le framework Core Location.
  • Développement du module Maps en utilisant MapKit et Core Location de Apple pour localiser ses contacts en temps réel.
  • Gérer la livraison continue, la qualité du livrable/code, le tracking des versions, les tests unitaires et UI, correction des bugs de prod via les outils d’intégration continue (Github, gitLab, Jenkins, FastLane, SonarQube, Appaloosa, Firebase)
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase

 

Environnement technique/métier :

 Plateforme : iOS
 Langage : Objective-C
 Technologies Core Location, MapKit, APNS, Piwik (Analytics), Github, gitLab, Jenkins, FastLane, SonarQube, Appaloosa, Firebase, XCTestCase, Cocoapods …
 Outils de gestion de projet IceScrum, Redmine.
 Méthodologie Agile : SCRUM

Contexte du projet : Box2Home est une solution qui donne la possibilité aux clients de livrer leurs biens achetés en grandes surfaces en réservant des chauffeurs en ligne.

Le projet est composé de deux applications mobiles :

Box2Home Client :  Cette application est disponible sur Appstore au grand public et leur offre la possibilité de :

  • Choisir le trajet de livraison
  • Visualiser les chauffeurs disponibles (avec prix et estimation de la durée du trajet)
  • Se renseigner sur l’état du trajet en temps réel (départ/arrivée du chauffeur, achèvement de la livraison, annulation de la livraison…)
  • Paiement de la livraison en ligne

 

Box2Home Chauffeur : Cette application est dédiée aux chauffeurs et leur permet de :

  • Recevoir les livraisons des clients en temps réel
  • Notifier les clients de l’état de la livraison en cours
  • Communiquer avec le client

 

Réalisations :

  • Participer à la gestion du projet en participant aux cérémonies SCRUM.
  • Mener des ateliers de conception technique et UI pour faire participer la SCRUM team ainsi que les parties prenantes (stakeholders) dans la réalisation du projet.
  • Accompagner l’équipe métier pour bien définir les besoins et raffiner le Product Backlog.
  • Conception de l’architecture du projet.
  • Développement du module Maps en utilisant Google Maps/Google Places Api et Core Location de Apple (traçage de chemin de livraison, affichage des chauffeurs disponibles en temps réel, calcul durée de la livraison, tracking des chauffeurs en temps réel …).
  • Gestion de la communication des applications chauffeur/client avec le serveur en temps réel via WebSocket (node.js, Socket.io) et notifier l’utilisateur de l’état de la livraison via tout le trajet.
  • Développement d’un module caméra pour photographier les biens à transférer.
  • Gestion du module de paiement via Stripe
  • Se concentrer sur l’UX de l’application pour assurer la facilité d’utilisation.
  • Intégrer Google Analytics pour améliorer l’expérience utilisateur.
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase
  • Utiliser Fabric pour assurer la livraison de releases pour notre client

 

Environnement technique/métier :

 Plateforme : iOS
 Langage : Swift 4
 Technologies Google Maps Api, Google Places Api, Core Location, WebSocket(Socket.io), Google Analytics, Stripe, Fabric, git, XCTestCase, Cocoapods….
 Outils de gestion de projet JIRA
 Méthodologie Agile : SCRUM

Contexte Projet : Merck Millipore est une application iPad pour commerciaux leur servant à vendre leurs produits chimiques et médicaux.

Réalisations

  • Conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Gérer le module de synchronisation de l’application pour télécharger les nouveaux fichiers enregistrés dans le serveur (Background Downloading).
  • Implémentation du module PDF (consultation, ajouter des notes, modification, enregistrement …)
  • Implémentation d’un module d’afficheur d’image (consultation, modification …)
  • Implémentation d’un module de lecteur de vidéos (consultation, ajout favoris …)
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase
  • Mise en place d’un mécanisme d’intégration continue (Jenkins, Fabric, SonarQube, Fastlane, git …)

 

Environnement technique/métier :

 Plateforme: iOS
 Langage : Objective-C
 Technologies Background Execution, AVFoundation, PDF Reader, Image Viewer, Jenkins, Fabric, SonarQube, Fastlane, git, XCTestCase, Cocoapods
 Outils de gestion de projet Easy Redmine
 Méthodologie   Agile : SCRUM

Contexte Projet : Banque Habitat est une solution M-Banking sur iOS permettant à ses utilisateurs de consulter leurs comptes, transactions et leur offre des conseils concernant leurs opérations bancaires.

Réalisations

  • Conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Consultation des transactions et des informations des comptes
  • Offrir un service de communication avec la banque.
  • Consultation des différents locaux des banques via Google Maps.
  • Offrir des conseils concernant les transactions bancaires, prêts …
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase

 

Environnement technique/métier :

 Plateforme iOS
 Langage Objective-C
 Technologies Google Maps, Networking, SVN, XCTestCase, Cocoapods
 Outils de gestion de projet Redmine
 Méthodologie Agile : SCRUM

Projet 3 : Continental Enjoy Drive

Contexte Projet : Enjoy Drive une solution pour objets connectés (IOT) qui permet à une application iOS de communiquer avec les radios des véhicules via Bluetooth, écouter les stations radios disponibles et enregistrer sa musique préférée.

Réalisations

  • Conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Implémenter un processus de communication entre iphone et la radio Bluetooth via le framework External Accessory
  • Communiquer avec la radio FSDS
  • Sécuriser la communication via les algorithmes de communication.
  • Écouter les radios disponibles (avec section favoris)
  • Enregistrement de sa musique préféré via l’application et l’écouter depuis la radio.
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase

 

Environnement technique/métier :

 Plateforme iOS
 Langage Objective-C, C
 Technologies External Accessory, Bluetooth, mfi program, radio, FSDS, SVN, XCTestCase, Cocoapods
 Outils de gestion de projet Redmine
 Méthodologie Agile : SCRUM

 

Projet 2 : Continental Drive Lab :

Contexte Projet : Drive Lab est une solution IOT (objets connectés) qui établit une communication entre iPhone et un véhicule via un dongle Bluetooth dans le but d’assister les centres météorologiques à prédire la météo (en partenariat avec Météo France).

Réalisations

  • Conception de l’architecture du projet.
  • Gestion du projet via la méthodologie SCRUM.
  • Implémenter un processus de communication entre iphone et dongle Bluetooth via PassThrough SDK (un projet à part, regarder ci-dessous)
  • Extraire les informations de l’OBD (vitesse, rpm, ABS …) du véhicule transmises via Bluetooth à l’aide du Framework External Accessory de Apple et les envoyer aux serveurs Continental.
  • Garder trace des flottes utilisant l’application via Core Location.
  • Offrir à l’utilisateur un écran de statistiques lui décrivant le taux d’informations communiqué et un système d’alerte des dangers de la route causés par la météo en communiquant la partie native (Objective-C) avec la partie web (JavaScript) via le framework JavaScript Core.
  • Améliorer l’expérience utilisateur en lançant l’application d’une façon automatique au moment de la connexion Bluetooth
  • Envoie des informations au serveurs Continental en background et même après fermeture de l’application.
  • Implémenter des Tests unitaires et Tests UI avec XCTestCase

 

Environnement technique/métier :

 Plateforme iOS
 Langage Objective-C, C
 Technologies External Accessory, Bluetooth, mfi program, OBD2, CAN bus, Core Location, GPS, JavaScript Core, SVN, XCTestCase, Cocoapods
 Outils de gestion de projet Redmine
 Méthodologie Agile : SCRUM

                                                                                                                            

Projet 1 : Continental Passthrough SDK : 

Contexte Projet : Continental Passthrough est un SDK iOS pour faciliter la communication entre un véhicule et un appareil iOS à travers un dongle Bluetooth.

Réalisations

  • Conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Utiliser le framework External Accessory pour communiquer un iPhone et un dongle Bluetooth connecté à un véhicule.
  • Utiliser la technologie OBD2 pour extraire des informations d’un véhicule (vitesse, rpm, ABS, essuie-glace …)
  • Détecter les informations passant par le CAN bus (Controller Area Network).
  • Utiliser un similateur CANoe pour effectuer des tests.
  • Adapter l’application à tout genre de véhicule via le VIN du véhicule (saisir le vin dans l’application pour télécharger la configuration du vehicule.
  • Sécuriser la communication entre le dongle Bluetooth et l’iphone via les algorithmes d’encryption AES et ECB
  • Assurer la communication Bluetooth/iPhone via les différentes étapes d’un processus de communication fourni par le client
  • Lancement automatique de l’application après détection de l’appareil Bluetooth
  • Garder la communication en mode background et même si l’application est fermée.
  • Implémenter des Tests unitaires avec XCTestCase

 

Environnement technique/métier :

 Plateforme iOS
 Langage Objective-C, C
 Technologies External Accessory, Bluetooth, mfi program, OBD2, CAN bus, CANoe, AES Encryption, ECB Encryption, Background Execution, SVN, XCTestCase, Cocoapods
 Outils de gestion de projet Redmine
 Méthodologie Agile : SCRUM

Contexte Projet : OACA (Office de l’Aviation Civile et des Aéroports) est une application mobile qui servira comme guide pour les voyageurs au sein des aéroports tunisiens.

Réalisations

  • Conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Consultation des informations concernant les différents aéroports sous l’autorité de l’OACA.
  • Affichage du meilleur itinéraire amenant à l’aéroport le plus proche via Google Maps SDK.
  • Consultation des services offertes par les aéroports (les cafés, freeshops, banques …)
  • Réception des notifications parvenant des iBeacons (estimotes) BLE implantés dans les aéroports pour promouvoir plusieurs services disponibles ou marques.
  • Mise en place d’un backoffice web pour alimenter l’application des dernières informations disponibles concernant les aéroports.

 

Environnement technique

 Plateforme iOS, Web
 Framework Laravel
 Langage Objective-C, Php, HTML 5, CSS 3, Javascript …
 Technologies BLE (Bluetooth Low Energy), iBeacons (Estimote), Google Maps, Core Location, OACA Flights Api, Blade, Selenium …
 Outils de gestion de projet IceScrum
 Méthodologie Agile : SCRUM

Objectif : Gérer la communication entre le département métier et l’équipe de développement technique et diriger les projets digitaux qui ont pour objectif l’amélioration du workflow au sein de la société.

Projets gérés :

  • Quartz Club : Solution mobile qui permet de fidéliser les détaillants des huiles de Total Tunisie.
  • Hotspot Wifi : Portail captif qui permet à Total d’enregistrer les informations des utilisateurs qui se connectent aux points WIFI disponibles aux stations Total.
  • Total Car Care : Application mobile qui permet de garder toutes les informations concernant son véhicule (état, dates d’entretien, informations …)
  • Total RH360 : Application Web qui dispose de formulaires à remplir par les employés de Total afin de fournir plus d’informations de RH pour leur faciliter le travail.
  • Secured Access Network Controller : Portail captif se basant sur la solution open-source ALCASAR permettant d’enregistrer les informations des utilisateurs se connectant aux points WIFI disponibles aux stations Total

 

BILAN :

Assurer la bonne communication entre les différents membres de l’équipe.

Assurer la livraison des produits tout en satisfaisant les besoins de l’équipe métier et en suivant les dernières tendances technologiques.

Gérer son équipe et assurer le respect des délais de la livraison des produits.

Contexte du projet : M-Amendes est une solution mobile implémentée au sein du centre informatique du ministère des finances, pour consultation et paiement des infractions routières.

Réalisations :

  • Participer à la conception de l’architecture du projet.
  • Participer à la gestion du projet via la méthodologie SCRUM.
  • Se familiariser avec l’environnement gérant les infractions routières au sein du centre informatique du ministère des finances.
  • Implémentation de l’application mobile M-Amendes pour consultation des infractions routières.
  • Paiement des infractions routières via Tunisie-Monétique
  • Mise en place d’un back office en Php pour gérer ses utilisateurs mobiles et améliorer l’expérience utilisateur

 

Environnement technique

 Plateforme Android
 Langage Java, Php
 Technologies Android, M-Paiement, Php …
 Méthodologie Agile : SCRUM
  • LEARNING EXPERIENCE :

Contexte Projet : plateforme LMS (Learning Management System) basé sur le LMS 360 Learning. La plateforme est dédiée aux consultants internes pour leur offrir une diversité de formations techniques (Big data, DevOps …) ou métiers (Agile, l’art du pitch …).

Réalisations

  • Définir les besoins de la plateforme.
  • Faire le choix du LMS pour qu’il répond aux besoins des consultants ainsi que ses administrateurs
  • Définir les catégories des formations à offrir pour les consultants ainsi que le contenu de la plateforme quelque soient les spécialités des consultants.
  • 50Intech :

Contexte Projet : 50Intech est une plateforme qui préconise l’égalité entre les sexes dans le domaine du Tech tout en identifiant les femmes leaders dans le domaine du Tech et en partageant les meilleures pratiques pour qu’une femme puisse lancer son propre projet. Cela permettra d’ouvrir de nouvelles portes pour que diminuer le gap entre les sexes dans le domaine du Tech ainsi qu’encourager les femmes à inaugurer leurs propres start-ups à l’aide des incubators et accélérateurs.

Réalisations

  • Définir les besoins de la plateforme.
  • Assurer son rôle de Scrum Master : Préconiser les pratiques Agile tout en garantissant le respect des cérémonies SCRUM.
  • Participer à la gestion du projet en participant aux cérémonies SCRUM.
  • Mener des ateliers de conception technique et UI pour faire participer la SCRUM team ainsi que les parties prenantes (stakeholders) dans la réalisation du projet.
  • Accompagner l’équipe métier pour bien définir les besoins et raffiner le Product Backlog.

09/2016 – 12/2016 : ISIE/IFES – Chef de projet

Contexte du projet : Gestion et création des vidéos de formations pour ISIE (Instance Supérieure Indépendante pour les élections) / IFES (International Foundation For Electoral Systems) (Organismes pour organisation des élections).

Réalisations :

  • Définir les scénarios des vidéos à réaliser.
  • Définir les besoins du client.
  • Créer des animations innovantes pour faciliter le travail des enseignants de la formation.

 

Environnement technique

 Outils de travail Adobe Flash, Adobe Premiere, Adobe After Effect, Adobe Illustrator …

 

06/2016 – 08/2016 : Symbol Cars – Chef de projet

Contexte du projet : Symbol Cars est une solution web et mobile qui permet aux vendeurs d’exposer leurs véhicules et évaluer leurs prix.

Réalisations :

  • Conception de l’architecture du projet.
  • Gérer le projet via la méthodologie SCRUM.
  • Définir les besoins métiers à l’aide du client.
  • Faciliter la communication entre le développeur web et mobile.

 

Environnement technique

 Plateforme Android, Web
 Framework Symfony, bootstrap
 Langage Java, php, HTML, Javascript, xml …
 Technologies Android, Symfony

 

09/2015 – 11/2015 : Application Web pour calcul des sanctions appliquées sur les opérateurs téléphoniquesDéveloppeur J2EE

Contexte du projet : Une application web qui permet de calculer les sanctions appliquées sur les opérateurs téléphoniques pour améliorer leur qualité de services.

Réalisations :

  • Se familiariser avec la logique de sanctionner les opérateurs téléphoniques.
  • Utiliser le framework JSF pour développer l’application web.

 

Environnement technique

 Plateforme Web
 Framework JSF
 Langage Java, HTML, Javascript, XHTML …
 Technologies JSF

LES DERNIÈRES RECOMMANDATIONS

Soyez le premier à partager votre expérience !