Ahmed - Architecte ASP
Ref : 041124M001-
93360 NEUILLY PLAISANCE
-
DBA, Développeur, Architecte (52 ans)
-
Freelance
03/2002 à aujourd’hui : Village Data /EdiGram (Editeur)
· Développement d‘un système d’information : (VB, VC++, COM,IIS/ASP, SQL Server) sous Windows 2000
o Ce projet est un intranet développé en majeure partie en visual basic.Il était déjà mis en exploitation lorsque je suis arrivé.Bien que fonctionnellement bien pensé,il souffrait d’un architecture technique inadapté pour un projet de ce type.Mon rôle était donc d’identifier les points faibles du système et de proposer une solution fiable qui satisfasse notre client.Le principale problème de l’application était son côté monolithique.J’ai donc reconçu l’application de façon à la faire fonctionner sur une architecture répartie.Pour cela j’ai développé une couche générique de distribution autour d’un service windows maître.Ce service fournit,une API commune de haut niveau encapsulant l’activation à distance (DCOM ),la mise en queue,la parallélisation des traitement et les interfaces d’enregistrement des composants client.
Le service peut être étendue très facilement et ne nécessite pas la recompilation des éléments déjà déployés.
A partir de là,la répartition de l’application sur différente machine a permis à l’application d’être robuste et « scalable ».Autour de ce service,j’ai conçu et développé un système de production de document (avec l’automatisation de Microsoft Excel,Word,Crystal Report etc …) en C++ sur surveur dédié pour injecter les données XML dans le document pour ensuite les transformer au format PDF,les imprimer,ou les envoyer par e-mail unitairement ou en masse.La génération de ces documents utilise des modèles prédéfinis par l’utilisateur et s’effectue à la volé losque l’utilisateur demande le document à partir de sa page web.Ce système s’appuie en outre sur une moniteur de port (système d’impression de bas niveau de windows) pour capturer le flux entre le driver et l’imprimante.
Il bénéficie aussi de l’utilisation de la plupart des design patterns.
Très rapidement, j’ai été affecté à l’encadrement technique de l’équipe de développement. Après la mise en place du système, j’ai travaillé sur l’optimisation et la stabilisation de l’application. (Paramétrage de IIS et de SQL server, optimisation du code Visual Basic et des requête SQL, réécriture des parties critiques en C++ etc.).
o Expérience retirées de ce projet :En dehors de l’aspect technique,ce projet m’a permis d’être au contact des utilisateurs.Cela m’a permis de comprendre,quelle est la valeur attendue par l’utilisateur.
et comment comprendre son besoin pour lui apporter satisfaction(J’ai commencé par travailler sur site pour ce projet).
Etant donné que l’application était déjà en production,j’ai appris aussi à m’organiser dans un tel environnement pour trouver la solution à au problème suivante :maintenir et faire évoluer le système sans arrêter la production et ainsi ne pas pénaliser le fonctionnement de l’entreprise.
· Projet de portail internet (e-commerce) :
Je suis actuellement responsable technique de ce projet en cours. Mon rôle consiste :
o à analyser et définir les besoins avec les différents intervenants du projet.
o évaluer les technologies et sélectionner la plus adéquate au contexte.
o évaluer les coûts du projet ( en terme de ressources et de temps)
o participer à la modélisation du modèle du domaine et superviser la bonne marche de cette étape écrire les spécifications techniques détaillées.
o éncadrer l’équipe de développement.
Pour ce projet,j’ai défini une architecture en plusieurs couches.
- Modèle du domaine (base de données postgresql)
- Un mapper objet/relationnel pour l’accès bas niveau au données
- Une couche de plus haut niveau fournissant l’abstraction de la logique métier
- Un modèle dénormalisé axé autour d’une base objet dotée d’un moteur de recheche et d’une base décisionnelle (multi dimensionnelle)
- La mécanique de l’interface dynamique et personnalisable (XML/XSLT)
- La couche de reporting déportée.
- Les technologies et méthodologies utilisées dans le cadre de ce projet sont : Python,XML-RPC,C++,UML/Design Patterns/Data modeling patterns, OR/Mapping,XML/XSLT,principes de l’XP.
Plateforme : linux
01/2001 à 02/2002 : DANEL ELECTRONICS – BLUEMEGA (Editeur)
De février 2000 à décembre 2000 j'ai travaillé en qualité de prestataire pour cette société. J'ai rejoint ensuite l'équipe interne. J’ai travaillé sur un logiciel pour l'audit, la sécurité, la maîtrise des coûts et les statistiques sur les travaux d'impression locaux et réseaux. J'ai essentiellement développé sous Visual C++ (STL/ATL COM, SQL,Kit de développement de drivers).J’étais souvent sollicité pour le déploiement de ce projet en clientèle et il m’est arrivé de passer quinze jour à Nice pour satisfaire un de nos client (Ce site comptait 1500 utilisateurs potentiel de l’application).
J’ai ensuite suivi une formation de chef de projet et assuré le pilotage d’un petit projet de trois mois (Printer accounting et Billing)
10/1999 - 12/2000 Kallisto informatique ( SSII)
o Mission sous informix/unix
o Evolution en interne d’un produit de gestion de ressources humaines
o Intervention sur le projet interne de gestion de configuration
o Formation à Java-
o Formation à MessageQueue de BEA SYSTEME
o Mission en C++ pendant 11 mois
1/1999 - 9/1999 INGENOR SYSTEM (Editeur)
En qualité de stagiaire, mon rôle a consisté à porter sous Delphi et à faire évoluer une application de supervision et de régulation de cave à vin écrite en C.
Après avoir intégré la société, j’ai participé au développement d'un logiciel de pilotage d'autoclave pour la polymérisation de pièces servant à la fabrication d'avions civils (Pilotage de périphériques par liaison série)
J’ai été chargé d’encadrer les stagiaires.Dans le cadre de ce projet j’ai effectué plusieurs déplacement sur site
A l’aérospatial de Nantes et de Toulouse.
Formation
------------
1992 : Baccalauréat Série C
1992-1994 : Deug scientifique(Mathématiques, Informatique et sciences de la matière)
1994-1996 : Licence de mathématiques pures
1996-1998 : Licence EEA(Electronique, Electrotechnique, Electronique)
Compétences
----------------
Langages(avec pratique professionnelle) : C/C++ (Visual C++): STL, API Win32, MFC, ATL, API COM/DCOM et programmation multithreadée.
Delphi ,Visual Basic 6 , VBA,ASP , Python, XML/XSLT, SQL ,Java
Langages(pratiqué mais sans expérience professionnelle) : Java,C#,VB.Net
Base de données : SQL Server, Postgresql, MySql ,SAP DB , Paradox , Access.
Méthodologie : Merise (PowerAMC), UML (Visio),Design Patterns,Data modeling patterns.
Système d’exploitation : Windows NT/2000,Linux,Solaris (peu utilisé)
Bureautique : Excel,Word , Powerpoint
Automatisation par VBA et C++
Autres: Services NT, Windows NT/2000 DDK (Device developpement kit),COM+,XML-RPC, Corba, Sockets (TCP et UDP), protocole SNMP, programmation de filtres DirectShow (Acquisition, traitement d’image et codage vidéo (MPEG-4 et H261/H263/H263+/H.264) ainsi que la transmission de flux vidéo (RTP/RTCP),TAPI,Ghostcript