Contexte
Une partie de l’activité de conception et développement logiciel de la société ANEO est réalisée au forfait. Dans ce cadre, j’ai pris en charge un premier projet de relativement faible dimension (estimation de charge de 2 personnes pendant 3 mois), pour un gros client dans le secteur automobile (en engagement de résultats). Les technologies utilisées sont le C# essentiellement (WPF), interfacé avec quelques librairies C++.
Cette première prestation ayant été une réussite complète, autant en termes de qualité que de délai, ANEO m’a ensuite confié 3 autres forfaits réalisés pour ce même client final.
2 mois
Développement au forfait d’un outil de comparaison
Chiffrage sur la base d’exigences fonctionnelles et techniques
Engagement de résultat
Fourniture d’un cahier de recette, d’une documentation de conception et de tests unitaires
Engagement de délai respecté avec un niveau de qualité supérieur à l’attendu (performances plus de 100 fois supérieures aux exigences du contrat)
3 mois
Développement au forfait d’une visionneuse de messageries de diagnostique
Evolution du forfait précédent
Chiffrage sur la base du cahier des charges du client final
Engagement de résultat
Ateliers d’ergonomie avec le client final (présentation de maquettes)
Grande autonomie (travail à distance, un point d’avancement par semaine au maximum)
Engagements de délai et de qualité respectés et avec les félicitations du client final
Prestation assortie d’une garantie de 3 mois
Solutions et technologies : Microsoft Visual Studio 2012, C#, Framework .Net 4.0, WPF, Team Foundation Server
Développement au forfait d’une librairie C / C++ / C# de décodage de fichiers de messagerie diagnostique et intégration dans une application existante 5 mois
Les performances de la librairie développée précédemment ont permis à mon client de conclure un nouveau contrat
Réalisation d’une librairie proposant 3 interfaces : une interface C#, une interface COM et une interface C (besoin client final)
Ateliers techniques avec le client final pour la mise au point des interfaces (fourniture d’une documentation d’API réalisée avec Doxygen)
Intégration de la librairie C# à une application existante (gérée sous SVN, équipe existante de 3 développeurs)
Félicitations du client final obtenues sur les performances de la librairie
Prestation garantie 3 mois sur acceptation client final
6 mois
Evolutions sur application existante de communication avec des calculateurs : intégration d’un nouveau protocole et refonte graphique
Evolutions menées sur une application existante complexe développée en C# / C++ (100 000 lignes de code)
Travail collaboratif avec l’équipe existante
Intégration des modifications dans la gestion de configuration client intégrée à la prestation (Merge SVN)
Ateliers d’ergonomie avec le client final
Migration vers Visual Studio 2012, Framework .Net 4.5 et WPF (depuis VS 2010, .Net 4.0 et WinForms)
Simplification et réorganisation du code (environ 15 000 lignes de code en moins par rapport à la version de référence pour un fonctionnel beaucoup plus riche)
Solutions et technologies : Microsoft Visual Studio 2012, C#, Framework .Net 4.0, WPF, Team Foundation Server
Contexte
L’activité principale sur ce site est le développement de systèmes billettiques sécurisés à destination des transports en commun (métro ou train). Je suis intervenu dans 2 services différents, sur 2 types de sous-systèmes : Dans un premier temps, sur les machines de vente de titres de transport (automatique et au guichet), puis sur le BackOffice du système qui collecte les données et réalise la commande et supervision des équipements.
1,5 an
Responsable développement BackOffice Danemark
Encadrement technique d’une équipe de développement « de grande taille » (20 personnes)
Développement sur une application distribuée (Web Services, Corba, Web) mettant en oeuvre de multiples technologies / langages (.Net Framework 2.0 & 4.0, Microsoft SQL Server 2008, C++, C#, ASP.Net)
Sécurisation des Web Services (WS-Security, WCF) et optimisation de leur performance (SAML tokens)
Interventions fréquentes dans le code et validation des choix d’architecture
2 ans
Responsable de lot (hard + soft) Machines de vente Dubaï UAFC
Développement de Web Services client en C++ (gSoap), puis en C# sous Visual Studio 2008 (WSE 3) pour la mise en place de WSS (certificats Windows)
Interventions fréquentes dans le code (optimisations, refactoring) et validation de tous les choix d’architecture
Mission à Dubaï en tant qu’expert technique (diagnostique et résolution de problèmes sur les machines en exploitation)
Ce projet est aujourd’hui la base des futures affaires (Le Caire, Auckland)
Gestion de la planification et des coûts sous PrimaVera
2 ans
Architecte logiciel Machines de vente
Conception complète d’un produit gérant plusieurs sous-systèmes (80 % de code commun), pour plusieurs clients (Caracas, Saint-Domingue, Afrique du Sud, Danemark, Dubaï)
Interventions fréquentes dans le code (optimisations, refactoring) et validation de tous les choix d’architecture
Le produit est hautement configurable (développement de moteurs MMI et de reçus, en XML)
Le produit est ouvert (surcharge)
Gestion du versioning et de la compatibilité ascendante des composants communs (Clearcase)
2 ans
Responsable technique plateau au forfait (pour AUSY)
Encadrement technique d’une équipe élargie (9 personnes organisées en 3 sous-projets)
Prise en charge complète des drivers de périphériques (C++) : Gestion multithread des commandes / notifications de divers périphériques (RS232 / USB) : Périphériques de paiement (TPE, CHS, BNA), CSC Cards Reader/Writer (+ PKI SAM), Distributeurs de cartes / tickets (sans contact et magnétiques), etc…
Prise en charge complète des MMIs des machines de vente (Borland C++ builder, ActiveX)
Interventions fréquentes dans le code (optimisations, refactoring) et validation de tous les choix d’architecture
Projet pilote pour la mise en place de Rhapsody (UML 2.0)
1,5 an
Chef de projet technique d’équipes au forfait (pour AUSY)
Encadrement technique d’une équipe de développement (de 2 à 4 personnes)
Analyse, adaptation et restructuration d’un projet C++ utilisant diverses technologies logicielles Windows (COM, CORBA, MSXML, FTP, UDP, NTP, MS ADO)
Amélioration de la réutilisabilité et de l’extensibilité des composants existants (conception revue après analyse des défauts) : Composant gérant la sécurité (cryptographie hardware et software), Composants d’abstraction des périphériques, etc…
Conception (UML) de nouveaux composants hautement réutilisables (avec notamment un composant gérant des systèmes complexes à états-transitions)
Contexte
VUIP a racheté le studio Coktel qui est leader sur le marché du logiciel multimédia éducatif pour les enfants (Adibou, Adi, etc…). Dans cette société, je suis membre d’une équipe dite « Système » qui développe des outils de développement à destination des équipes projet. Le coeur de ces outils est constitué par un langage propriétaire objet dont le résultat de compilation est interprété par une machine virtuelle multiplateforme (Windows & MacOS)
Responsable technique développement du son 6 mois
Conception (UML, Objecteering) et développement d’une A.P.I. C++ multiplateforme de gestion bas niveau du son (DirectSound)
Programmation PC et consoles (GameCube, Playstation 2)
Conception et développement d’outils d’intégration (RenderWare Studio, ActiveX) et de production (MFC)
3 ans
Développement d’extensions pour la machine virtuelle (pour G2i, puis embauche)
Conception (UML, avec Visio) et développement de nouvelles A.P.I. multiplateforme (Windows XP / MacOS 9) en C++ : reconnaissance vocale : IBM ViaVoice SDK (COM), synthèse vocale : Elan TTS SDK (COM), vidéo : QuickTime 6 SDK, WebBrowser Controls (ActiveX), Director XDK (COM)
Conception et mise en place de procédures de traçabilité et de versioning (compatibilité ascendante)
Suivi, maintenance et formation auprès des utilisateurs de l’application (1 à 3 projets, 3 à 30 programmeurs), veille technologique
6 mois
Portage MacOS et évolutions d’une « machine virtuelle multimédia » (pour G2i)
Structuration d’un gros projet C++ multiplateforme (UML, Visual C++, CodeWarrior)
Développement système multiplateforme (Windows / MacOS) bas niveau dans tous les domaines du multimédia (graphique, sonore, vidéo, TCP/IP, File system, fonctionnement événementiel…)
Conception et mise en place de « procédures de portabilité » (isolation, organisation et nomenclature des parties non portables du code)