IngĂ©nieur Logiciel trĂšs expĂ©rimentĂ© en dĂ©veloppement dâapplications (entreprises) utilisant Java (1.3-21), JEE (1.4, 5-10) (Facelets, JPA, Services Web (y compris REST), CDI, Bean ValidationâŠ), Spring (4-6), Spring Boot (1-3), aussi bien quâAngular (TS), JS, SQL, T-SQL, PL/SQL, NoSQL, DDL, XML/XSL/XPath/XSLT, (X|D)HTML(5) ; + C, C++ (WPF), Node.js, React, Android/Kotlin/Jetpack Compose, etc. Expertise dans planification, analyse, conception, en particulier le dĂ©veloppement, dans des examens de code, DDD, TDD (dĂ©veloppement pilotĂ© par les tests) & profilage (ainsi que dans dĂ©ploiement, maintenance) ; expertise en gestion de code, de dĂ©pendances, de construction, & dâartĂ©facts, ainsi que dans tests automatisĂ©s, couverture de code, analyse statique, CI & CD (intĂ©gration & livraison continue) ...
Projet : Optimisation, mise-à -niveau, amélioration de maintenabilité & résolution des erreurs dans la couche de persistance.
âą Optimisai requĂȘtes SQL, procĂ©dures stockĂ©es & fonctions via analyse de plans dâexĂ©cutions, parfois Ă lâaide dâAnalyseur de Performance BDD : indexation, combinaison de requĂȘtes, refactorisation minimisant nombre de requĂȘtes/jour, niveaux isolation, suggestions Ă lâoptimiseur ⊠E. g., de 360 Ă < 1 seconde / requĂȘte ou de 25% Ă 0,6% / jour ; + tuning/profilage.
⹠Améliorai performance de couche de persistance, y compris services ReST & travaux batch, de plus de 3,6 fois : 17,2 vs 62,4 heures/jour (en général).
⹠Versionnai le schéma de BDD, ajoutai travaux programmés & introduisis paramétrage de procédures stockées (par env.).
âą Ătablis nouveau environnement prĂ©prod. (+ auto-sauvegardes de BDD prod. & leurs auto-restaurations lĂ -dessus).
âą Mis Ă niveau SQL Server Ă la derniĂšre parution : plus performante.
âą Ătablis utilisation de tests automatisĂ©s SQL ; fis possible dĂ©veloppement sur seule machine indĂ©pendamment du rĂ©seau.
⹠Conteneurisai la BDD (grappe de haute disponibilité).
⹠Déterminai 2273 (sur 4123) procédures stockées, 100/230 fonctions & 400 (sur 869) tables non-utilisées & les supprimai.
âą ImplĂ©mentai tests de bout en bout en React & Angular; + testing via captures dâĂ©cran.
Environnement : SQL, procédures stockées, fonctions. Spring 6.2 (Boot 3.4). Flyway 10.18, CI/CD. Tests unitaires SQL. Kubernetes, Docker, Azure (KS); DH2i. DPA 12.1-2024.3. SQL Server 14-22, T-SQL. React 19. Angular 19. Services ReST (sécurisés : oauth). Travaux programmés & par lots. Scripts shell. SCM: git(lab). Méthodologies: TDD, Agile; JIRA.
PROJET : Modernisation de lâapplication de gestion de coupons ((e-)commerce).
⹠Mis à niveau les logiciels non soutenus (& vulnérables) comme Java 7, Spring 4, Tomcat 7 & PostgreSQL 9 (pilote
PostgreSQL 9.1-901.jdbc4), etc. aux logiciels soutenus (& avec mis-à -jours pour vulnérabilités) : Java 17 (& 21 sur option),
Spring 5.3.31, Tomcat 9.0.83 & PostgreSQL 16 (pilote PostgreSQL 42.6.0), etc.
⹠Mis à niveau les versions de dépendances, ajoutant des nouvelles dépendances requises & supprimant quelques
dépendances désormais redondantes.
⹠Rétablis utilisation de tests automatisés commenté dans le code depuis des années & fis possible développement sur la
mĂȘme machine indĂ©pendamment du rĂ©seau.
o Corrigeai nombreuses erreurs (problÚmes) dans tests automatisés.
⹠Modifiai les 5 modules & module parent pour compatibilité avec les APIs plus modernes et soutenus.
Un peu plus-dĂ©taillĂ© CV de 6 ou 7 pages en anglais est disponible sur demande.âą RĂ©solus problĂšmes de transactions persistance qui sont survenus suite Ă la mise-Ă -niveau de versions (y compris ceux liĂ©s Ă
JobRepository & les pas de Spring Batch (sur la base de XML & Java) (en utilisant HibernateTransactionManager dédié)).
⹠Hackai spring-boot-admin (abandonné avant Spring 5) pour marcher sur Spring 5.
⹠Ajoutai paramÚtres --add-opens liées à l'encapsulation forte & requis depuis Java 9 dans configs de bùtiment & exécution.
âą Convertis l'appli de type .war Ă Spring Boot.
⹠Conteneurisai l'application (avec réplicas) & sa BDD (grappe d'haute disponibilité).
Environnement : Java 17 & 21, Spring 5.3.31, services ReST (sécurisés avec jetons), JPA. SQL, JQL. TestNG. Spring Batch, Spring Boot. Kubernetes, Docker, minikube. Jacoco. Tomcat 9.0.83, PostgreSQL 16. Construction : maven. Scripts shell. SCM : git (gitlab). Méthodologies notables : TDD, Agile, Scrum (PI) ; JIRA. CI/CD : Jenkins. DépÎt : Archiva.
PROJETS : Quelques projets personnels (verityfan.com, anticia.org (y compris un film court-métrage), adazes.com, etc.).
âą Les idĂ©es, les analyses des besoins, les architectures, les conceptionsâŠ
⹠Développement de la pile complÚte :
⊠La conception pilotée par le domaine (DDD) avec usage de caractéristiques Java 8+ (comme expressions lambda).
⊠Persistance basĂ©e sur NoSQL ainsi que SQL/JPA avec utilisation dâhĂ©ritage, des associations & parcours de graphe.
⊠Services REST & transactions EJB/JTA (y compris avec JPA) assez avancées (y compris transactions imbriquées).
⊠Utilisation de Queue (JMS @MessageDriven) pour la suppression de la BDD de notification(s) lue(s) par lâutilisateur.
⊠SĂ©curitĂ© (dĂ©clarative (annotations, XML, .conf (Apache)) & programmatique) (y compris dans contexte dâe-commerce).
⊠Trait Captcha avec plusieurs variations (y compris dâeffets, de polices & de couleurs) (comme 1 mesure contre les bots).
⊠Utilisation de Validation Bean (déclarative & programmatique) à travers les couches.
⊠Utilisation de @CacheResult (JSR-107) pour optimisation quand rĂ©sultats sont les mĂȘmes pour les mĂȘmes paramĂštres.
⊠TĂ©lĂ©versement (avec PrimeFaces & jQuery) & redimensionnement d'images, y compris validation (taille & dimensions), & verrouillage de fichiers (avec utilisation de lâinstruction try-with-resources) ; trait sondage avec dĂ©lai ralentissant.
⊠Installation & configuration de façade Apache devant Payara (y compris certificat SSL (TLS) & configuration de binding java-logging pour SLF4J). HĂ©bergement de nombreux domaines sur le mĂȘme serveur (adresse IP).
⊠GĂ©olocalisation : utilisation de module ip2location.com pour montrer des pubs diffĂ©rentes selon la localisation de lâIP.
⊠Conception de site web adaptatif : HTML5 (https://developer.mozilla.org/en-US/docs/Web/API/History_API#Adding_and_modifying_history_entries), JS (héritage⊠(https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Inheritance)), CSS3 (+ images SVG (+ feColorMatrix (https://developer.mozilla.org/en-US/docs/Web/SVG/Element/feColorMatrix)), animations GIF).
⊠DĂ©veloppement des applis web monopage (SPA) Angular (TS, etc.) (avec ou sans intĂ©gration avec une appli JEE) âŠ
âȘ Utilisation de composants dâIU Angular Material (13.*)Â (e.g., sidenav, tab, toolbar, tree)Â & composants sur mesure.
⊠Cas de tests automatisés : tests unitaires (y compris via mocks), tests d'intégration, tests de bout à bout (Java & npm) ...
⊠Rapports de couverture de code, analyse statique de codeâŠ
Environnement : Java 8 & 11 ; JEE 7 (en peu 8) : Facelets (JSF 2.2), EJB 3.2, JTA 1.2, JAX-RS, JMS 2.0 ; Validation Bean 2.0 ; Spring 5.0.3 ; CDI 1.1 ; JCache ; JPA 2.1⊠JSON, Schéma JSON, XML. Angular (Material), TypeScript. Node.js (services Foxx). JS, AJAX, jQuery. NoSQL (mégadonnées), SQL. Arquillian 1.3.0, JUnit 5.1.1 & 4.12 (pour Suite (.xsl sur mesure)), quelque TestNG 6.13.1 ; Mockito 2.23.0 ; Spring Boot 2.7. PMD, Cobertura. Payara, ArangoDB. Géo-IP. Babel, webpack. Construction : ant, ivy (quelque maven). SCM : git. Méthodologies notables : DDD, TDD. DépÎt : Nexus.
⹠Contribuai plusieurs patchs à ip2location qui ont été fusionnés (https://github.com/ip2location/ip2location-java/commits?author=haqer1&since=2023-10-01&until=2023-11-01).
⹠Développai Log4js (importable ; tests automatisés) : npmjs.com/package/@adazes/log4js (JS (ES5/ES6), Node.js, rollup.js).
⹠Développai Registry Assistant : github.com/haqer1/registry-assistant (C, C++, .Net, WPF (XAML) ; obfuscation).
⹠Contribuai un test automatisé, etc. à Selenium pour Java : github.com/SeleniumHQ/selenium/pull/8492 (fusionné).
⹠Donnai exemple de goog:loggingPrefs en XML : github.com/arquillian/arquillian-extension-drone/commit/b45a (fusionné).
⹠Commençai un projet comme une idée pour optimisation de taille de CSS auto-généré : github.com/haqer1/optimize-css.
⹠Fis petites contributions à Node.js : github.com/nodejs/node/commits?author=haqer1 (fusionnées).
⹠Ouvris un bogue en Angular (avec mon code contournement) : github.com/angular/angular/issues/32102 (confirmé).
âą Soumis plusieurs (bogues &) patchs (requĂȘtes de tirage) pour ArangoDB qui ont Ă©tĂ© fusionnĂ©s : comme requĂȘtes de tirage 86, 68 (bogue 67), 70, & 63 pour ArangoDB spring-data, ainsi que RdT 197 pour arangodb-java-driver (+ bogue 178) : https://github.com/arangodb/spring-data/commit/2ebaf84293e7c4e5e00c6baf6ac17a4a15f2d7d6, ...
⹠Commençai un projet de fourchettte nommé avec plusieurs optimisations additionnelles : https://github.com/haqer1/arangodb-spring-data-rational
âą Soumis (un bogue &) une requĂȘte de tirage pour EpubCheck qui a Ă©tĂ© fusionnĂ©e (github.com/IDPF/epubcheck/pull/712).
âą Contribuai un patch pour Mozilla Translator (github.com/RickieES/moztrans/issues/1).
âą Mis rawgit.com/haqer1/miscellaneous-js/master/src/miscellaneous/css/BuggyMediaQueryWorkarounder.js sur GitHub.
âą Publiai un simple plugin jQuery sur npmjs.com : www.npmjs.com/package/jquery.form-assistant.
⹠Contribuai un patch pour améliorer JSF RadioRenderer dans le projet Mojarra (de Sun).
âą Soumis un bogue dâimplĂ©mentation i18n en Java (2002), qui puis rassembla 95 votes sur BDD de bogues SDN (bugs.java.com/bugdatabase/view_bug.do?bug_id=4688797), & fournis un patch pour cela (en 2006), qui fut fusionnĂ© & publiĂ© (web.archive.org/web/20090228192241/http://java.sun.com/javase/6/webnotes/names.html) avec Java 6.0.
âą Soumis un patch (savannah.gnu.org/bugs/?13239) pour GRUB, un bootloader de Linux.
âą Soumis des patchs pour XFire (un cadriciel de Services Web, qui est devenu une partie de CXF) : https://web.archive.org/web/20150508030623/, http:/jira.codehaus.org/browse/XFIRE-995
⹠Soumis une localisation pour la bibliothÚque GNU C (glibc), qui a été publié.
⹠Contribuai plusieurs agencements de clavier pour l'environnement Linux, qui ont été publié.
⹠Contribuai 2 « paquets de langue » pour Firefox (il y avait espoir pour une localisation officielle) (+1 pour Thunderbird) : https://hg.mozilla.org/l10n-central/crh/
âą Initiai & contribuai Ă plusieurs projets de localisation pour la plate-forme Linux.
⹠Contribuai plusieurs patchs à ip2location qui ont été fusionnés (https://github.com/ip2location/ip2location-java/commits?author=haqer1&since=2023-10-01&until=2023-11-01).
⹠Développai Log4js (importable ; tests automatisés) : npmjs.com/package/@adazes/log4js (JS (ES5/ES6), Node.js, rollup.js).
⹠Développai Registry Assistant : github.com/haqer1/registry-assistant (C, C++, .Net, WPF (XAML) ; obfuscation).
⹠Contribuai un test automatisé, etc. à Selenium pour Java : github.com/SeleniumHQ/selenium/pull/8492 (fusionné).
⹠Donnai exemple de goog:loggingPrefs en XML : github.com/arquillian/arquillian-extension-drone/commit/b45a (fusionné).
⹠Commençai un projet comme une idée pour optimisation de taille de CSS auto-généré : github.com/haqer1/optimize-css.
⹠Fis petites contributions à Node.js : github.com/nodejs/node/commits?author=haqer1 (fusionnées).
⹠Ouvris un bogue en Angular (avec mon code contournement) : github.com/angular/angular/issues/32102 (confirmé).
âą Soumis plusieurs (bogues &) patchs (requĂȘtes de tirage) pour ArangoDB qui ont Ă©tĂ© fusionnĂ©s : comme requĂȘtes de tirage 86, 68 (bogue 67), 70, & 63 pour ArangoDB spring-data, ainsi que RdT 197 pour arangodb-java-driver (+ bogue 178) : https://github.com/arangodb/spring-data/commit/2ebaf84293e7c4e5e00c6baf6ac17a4a15f2d7d6, ...
⹠Commençai un projet de fourchettte nommé avec plusieurs optimisations additionnelles : https://github.com/haqer1/arangodb-spring-data-rational
âą Soumis (un bogue &) une requĂȘte de tirage pour EpubCheck qui a Ă©tĂ© fusionnĂ©e (github.com/IDPF/epubcheck/pull/712).
âą Contribuai un patch pour Mozilla Translator (github.com/RickieES/moztrans/issues/1).
âą Mis rawgit.com/haqer1/miscellaneous-js/master/src/miscellaneous/css/BuggyMediaQueryWorkarounder.js sur GitHub.
âą Publiai un simple plugin jQuery sur npmjs.com : www.npmjs.com/package/jquery.form-assistant.
⹠Contribuai un patch pour améliorer JSF RadioRenderer dans le projet Mojarra (de Sun).
âą Soumis un bogue dâimplĂ©mentation i18n en Java (2002), qui puis rassembla 95 votes sur BDD de bogues SDN (bugs.java.com/bugdatabase/view_bug.do?bug_id=4688797), & fournis un patch pour cela (en 2006), qui fut fusionnĂ© & publiĂ© (web.archive.org/web/20090228192241/http://java.sun.com/javase/6/webnotes/names.html) avec Java 6.0.
âą Soumis un patch (savannah.gnu.org/bugs/?13239) pour GRUB, un bootloader de Linux.
âą Soumis des patchs pour XFire (un cadriciel de Services Web, qui est devenu une partie de CXF) : https://web.archive.org/web/20150508030623/, http:/jira.codehaus.org/browse/XFIRE-995
⹠Soumis une localisation pour la bibliothÚque GNU C (glibc), qui a été publié.
⹠Contribuai plusieurs agencements de clavier pour l'environnement Linux, qui ont été publié.
⹠Contribuai 2 « paquets de langue » pour Firefox (il y avait espoir pour une localisation officielle) (+1 pour Thunderbird) : https://hg.mozilla.org/l10n-central/crh/
âą Initiai & contribuai Ă plusieurs projets de localisation pour la plate-forme Linux.
Projets : Image Assistant, Blend In, & Request Assistant (modules Mozilla).
⹠Image Assistant (https://addons.mozilla.org/en-US/firefox/addon/image-assistant/) (code C, C++, JS, etc. de haute qualité qui marche sans mise-à -jours sur Firefox depuis des années) :
⊠Mise-à -jour pour soutenir (& courir sur) Opera (déc. 2023 (C, C++ 17 & 20 : <thread>, <chrono>, <source_location>)) : en attente de passage en revue par Opera.
⊠Majorations comme configurabilitĂ© de dossier de tĂ©lĂ©chargement, lâappli visionneur d'images, & compatibilitĂ© avec des standards WebExtensions (implĂ©mentĂ©, en particulier, en utilisant C & C++ 14 : <(forward_)list>, <map>, <stdexcept>, <regex>, <memory>, <string(_view)>, <experimental/filesystem>, <fstream> ...) âŠ
⊠Correctifs comme addition de support pour (nouveau) attribut HTML5 (img) srcset, & URLs protocole-indépendants.
⊠Autres amĂ©liorations notables comme addition de localisation française, indĂ©pendance d'intĂ©rieurs de Firefox (53+) âŠ
⹠Blend In (https://addons.mozilla.org/en-US/firefox/addon/blend-in/) :
⊠Majorations comme compatibilité avec des standards WebExtensions & une nouvelle page de ressource locale (HTML5) affichant des paramÚtres de spoofing du navigateur (une page tierce n'est plus requise).
⊠Correctifs comme lâinclusion de la sous-appli Lightning dans la valeur User-Agent (sur les installations non-Windows de Thunderbird avec la suppression de thunderfoxing) pour fusionner mieux avec la plupart des installations âŠ
⹠Request Assistant (https://addons.mozilla.org/en-US/firefox/addon/request-assistant/) :
⊠Sortie initiale : actuellement enregistre tous les URLs accĂ©dĂ©s par Firefox ou Thunderbird (dans la console de l'appli (& optionnellement dans le flux de sortie standard)), que la requĂȘte soit explicitement faite par l'utilisateur ou faite automatiquement par l'appli elle-mĂȘme.
Environnement : C (extern "C", __declspec(dllexport), NSPRâŠ), C++ OO (C++17 ; XPCOM) : Windows, Linux ; OOJS (y compris encapsulation & hĂ©ritage (classe)), clones structurĂ©s (HTML5)/JSON ; DOJO ; EDI : Eclipse (C/C++, JS & Web), Visual Studio 17 (y compris dĂ©bogage du composant natif en se connectant au processus Firefox (DE)), KDevelop ; gdb; dumpbin ; SCM : git, gitolite ; (g)vi(m). Construction : ant & ivy (publication avec signature GPG) ; Docker, Kubernetes (+ testing de diverses versions) ; VirtualBox (utilisĂ© pour le composant natif pour Linux 32-bits). RĂ©fĂ©rentiel : Nexus.
PROJETS : Un livrel linguistique & un livrel de poésie.
⹠Livrel linguistique (http://tilde-birlik.sourceforge.net/dosyeler/resat/kdp/v1.1.2.mobi) :
⊠Un livrel dans format .mobi avec mise en page fixe (y compris l'idée & la conception de l'image de couverture).
⹠Livrel de poésie (https://www.kobo.com/tr/tr/ebook/ulkulerim, https://itunes.apple.com/us/book/id1194879637) :
⊠Un livrel ré-écoulable EPUB3 (y compris l'idée & la conception de l'image de couverture) avec Table des MatiÚres, RepÚres, Page-liste ; + 1 animation CSS & 2 JS ; + 2 fontes embarqués (sous licences source-libre UFL & OFL).
⊠Via XSLT & XPath convertis document NCX de navigation d'EPUB2 (XML) Ă nav.xhtml dâEPUB3 (basĂ© sur HTML5).
⊠FonctionnalitĂ©s de conception adaptative utilisĂ©es (basĂ©e sur taille du viewport) pour une meilleure expĂ©rience sur diffĂ©rents appareils utilisant diverses applications : tailles (fontes, images), position dâimages, mise en page du texte âŠ
⊠Assurai qu'il n'y a pas des (HTML5, CSS3, etc.) erreurs ou des avertissements durant la (auto-)validation du livrel à l'aide de l'appli EpubCheck.
Environnement : EPUB 3 (& 2) ; XSLT & XPath ; HTML5 ; OOJS ; CSS3 ; SCM : git ; (g)vi(m) ; scripts shell. Graphiques : gimp (& un peu de compiz). Construction : ant & ivy (publication avec signature GPG), patch, sed.
PROJETS : Développement de nouveaux services pour Entreprise de Planification de Vol.
⹠Configurai le serveur SonarQube partagé pour l'analyse statique du code, y compris les plugins FindBugs, PMD, Cobertura, & Checkstyle, & les rÚgles d'entreprise personnalisées. Fournissais les informations sur le wiki sur la façon de reproduire les rÚgles de l'entreprise sur les installations locales de SonarQube.
⹠Configurai les modules de services déployés sur Tomcat dans un environnement en cluster sur le nuage pour utiliser JTA (XA) pour les transactions distribuées (DTP ; commit en 2 phases pour les services utilisant JDBC (JPA) & JMS dans un environnement distribué).
⹠Implémentai le niveau intermédiaire pour le calcul du plan de vol (dans le service de vol JEE utilisant REST), y compris les objets de modÚle générés à partir de Schéma JSON, ainsi que ceux codés à la main, avec l'héritage utilisé pour réduire la duplication de code entre les objets modÚles utilisés pour la couche de présentation (client riche C#), & ceux utilisés pour interagir avec la couche d'infrastructure (JEE). Utilisai JAXB pour JSON-à -Java (un)marshalling automatique, & API Validation Bean.
Environnement : JEE 7 : JAX-RS (Jersey), Validation Bean, JAXB ; Spring 4, Spring Boot ; Atomikos ; log4j. CoreOS, Docker, fleet, etcd ; Vagrant ; VirtualBox ; nginx ; AWS. Vue.js. JSON, SchĂ©ma JSON, XML. Logstash. SonarQube (FindBugs, PMD ; CoberturaâŠ). PostgreSQL. Construction : maven ; Bamboo ; quelque ant. SCM : p4. RĂ©fĂ©rentiel : Archiva. MĂ©thodologies notables : Agile (Scrum), TDD.
PROJETS : Multiples améliorations & corrections de bogues dans les applications de provisionnement.
âą Jouai un rĂŽle essentiel dans la mise en Ćuvre de code personnalisĂ© impliquant HttpClient personnalisĂ©, une implĂ©mentation de HttpRequestRetryHandler, etc. pour configurer les paramĂštres de connexion dâApache Camel tels que le dĂ©lai d'attente de connexion, le dĂ©lai d'attente de socket, & les tentatives maximales pour rĂ©soudre un bogue critique impliquant une application qui ne rĂ©pondait pas (parce que tous les fils disponibles dans le pool furent en attente) lorsque les dĂ©pendances en aval Ă©taient inaccessibles pour quelque raison que ce soit.
⹠Optimisai paramÚtres de pool de connexion c3p0 tels que maxIdleTime, & maxIdleTimeExcessConnections (ainsi que la taille initiale, minimale & maximale du pool), & sa définition de Spring Bean, & utilisant la plus fine journalisation vérifiai que les paramÚtres furent en vigueur.
⹠Implémentai les fichiers .ldif pour mettre à jour LDAP pour utiliser les FQDNs au lieu des IPs pour les données de configuration de WS (services web) (ldapsearch, ldapdelete, ldapadd).
⹠Ajoutai NDC & des métriques de durée pour les demandes entrantes (en utilisant un binding personnalisé) dans 1 application Apache Camel desservant les données en utilisant services REST (les mesures de durée ensuite étaient utilisées pour produire des rapports de performance par l'usage de Splunk).
Environnement : JEE 5 : JAX-WS & Axis, Apache Camel (REST) ; WebLogic 11g (10.3.6) ; cadriciel Spring ; log4j. Groovy. LDAP, Apache Directory Studio. JSON, XML. Jenkins. Splunk. Tibco ESB. Construction : ant ; quelque maven, & ivy. SCM : svn. Méthodologie notable : Agile (Scrum).
PROJETS : Conduisis ou participai Ă la mise en Ćuvre de multiples nouvelles fonctionnalitĂ©s, amĂ©liorations & corrections de bogues dans les applis de provisionnement en tant que dĂ©veloppeur full-stack (de la pile complĂšte.
âą Menai lâimplĂ©mentation de la fonctionnalitĂ© de gestion dâappareil (verrouillage d'itinĂ©rance ; d'abord pour iPhone) : dĂ©veloppai un service JAX-RS & ses clients AJAX, ainsi qu'un plugin jQuery pour la dĂ©tection cross-navigateur de changement de champ (saisie, flĂšches, coupe-ou-colle, Ă©vĂ©nements de menu).
âą ImplĂ©mentai l'appli standalone de migrateur de rĂ©pĂ©teurs avec les clients JAX-WS pour effectuer lâapprovisionnement ...
⹠Prototypai un systÚme pour une gestion optimale du code, de dépendances, de la construction & des artefacts intégrant Jenkins (intégration continue), Nexus (référentiel), Maven, & Ivy, qui permet une interdépendance pour les projets basés sur Maven & ceux basés sur Ivy, & supporte les signatures numériques.
⹠Implémentai un prototype d'une couche de domaine reconçue pour l'appli de provisionnement principale (en utilisant un développement axé sur le domaine avec JPA 2, org.springframework.test, JUnit, TestNG, gestion de dépendances basée sur Ivy, ainsi que des tests d'unité & d'intégration).
Environnement : JEE 6 : JAX-RS, JAX-WS & Axis, JPA (1-2), Struts (1-2), JEXL ; log4j ; JBoss 5.1. AJAX, JSON, jQuery, DOJO. Construction : ant (avec ivy), quelque maven. SCM : cvs, svn. Méthodologies notables : SDLC, Agile ; DDD, TDD.
PROJETS : Menai lâimplĂ©mentation d'un outil de soins de contenu prĂ©mium interne, impliquant des commandes, l'historique, des remboursements, etc. en tant que dĂ©veloppeur full-stack (de la pile complĂšte).
âą Ă l'aide de JSON & AJAX, mis en Ćuvre l'onglet de synthĂšse, avec les sections dâinformations du client, de l'activitĂ© rĂ©cente & d'historique des transactions.
âą Mis en Ćuvre une mise en page & des vues de Tiles ; utilisai plugins jQuery tablesorter & quicksearch, & mis en Ćuvre un groupeur de table en JS.
âą Mis en Ćuvre des clients de service (& utilisai Spring MVC) pour l'intĂ©gration avec Real Networks ; utilisai les fichiers de balise dans les vues.
Environnement : J2EE : Spring (IoC & MVC) ; log4j ; WAS 6.1. AJAX, JSON, jQuery, DOJO (quelque i18n). Construction : ant. SCM : cvs.
PROJETS : Menai lâimplĂ©mentation d'un systĂšme interne de gestion de commandes impliquant des sites, des Ă©changes, des appareils, des commandes, etc. en tant que meneur d'Ă©quipe & dĂ©veloppeur full-stack (de la pile complĂšte).
âą AmĂ©liorai le courant squelette d'application GWT de l'Ă©quipe de dĂ©veloppement agile, quâĂ©tait basĂ©e sur Spring JDBC pour la persistance, dâĂȘtre basĂ©e sur JPA (Hibernate), avec l'injection de Manager dâEntitĂ©s & les transactions basĂ©es sur Spring.
⹠Implémentai service de Commande, Commande DAO & IU basée sur GXT pour la recherche de commandes, la recherche des appareils & l'entrée & la mise à jour de commandes.
⹠Implémentai le bus d'événements basé sur GWT pour une communication faiblement couplée entre les composants.
Environnement : JEE : JPA & EJB 3 (Hibernate), Spring (JPA & transactions) ; GWT, GXT ; log4j ; Tomcat 6. AJAX. BDD (Oracle) : SQL, JQL, DDL. Construction : ant. SCM : svn. Méthodologie notable : Agile.
PROJETS : Participai Ă lâimplĂ©mentation de multiples nouvelles fonctionnalitĂ©s (telles que la fonctionnalitĂ© Site Rep Web, Managers Courriel, Downline & Client pour Business Suite, rapports ACH & Remboursement, Silpada on the Scene, Commutateur de Localisation), & diverses amĂ©liorations (e.g., alerte de dĂ©lai dâinactivitĂ©), & corrections de boguesâŠ
⹠Implémentai des formulaires utilisant Facelets, beans gérés JSF & rÚgles de navigation, ainsi que des convertisseurs & validateurs JSF variés.
âą ImplĂ©mentai DDL, des entitĂ©s, des beans Stateless Session, ORM (de procĂ©dures stockĂ©es Ă objets Java), + classes dâutilitĂ©, un objet JS pour supplanter rich:inplaceInputâŠ
âą AmĂ©liorai rĂ©utilisation du code pour les composants frĂ©quemment utilisĂ©s : templates Facelets (RichFaces) pour dialogues d'aide & messages JSFâŠ
Environnement : JEE : JSF 1.2, Facelets 1.1, RichFaces 3.3; JPA & EJB 3 (Hibernate) ; JUnit ; log4j ; JBoss 4.2 EAP. JavaScript, jQuery, AJAX. BDD (SQL Server) : SQL, DDL, procédures stockées (alias PL/SQL). Python.
PROJETS/TECHNOLOGIES : Utilisai des nombreuses technologies sur des multiples projets (résumés sur la représentation textuelle de grille ci-dessous) ...
Technologies : 1) JAXB 2) XPath 3) StAX 4) JPA[1] 5) JSF 6) Facelets 7) JSTL 8) Taglibs 9) Struts 10) Tiles 11) Spring 12) JavaMail 13) AJAX 14) jQuery 15) JSON 16) Perl
Projets :
ford.ca (1-3, 7-13)
Ford Truck US (1, 14)
AMC (5-7, 13-14)
gobeyond (7, 9, 13)
growing strong[2] (4, 7, 9-12, 14)
toolbox (16)
Welch Allyn (4, 8, 11)
[1] Hibernate, TopLink, OpenJPA.
[2] Aussi, implémentai balisage WebTrends.
Environnement : Java (JEE/J2EE) : JSF, Facelets, Struts, Tiles, Stripes, JSP, JSTL, taglibs ; DAOs, services ; Spring IoC & JDBC ; JPA (Hibernate, TopLink, OpenJPA) ; HSQLDB ; StAX, JAXB 2, XPath ; log4j. Tests unitaires : JUnit 4 ; DbUnit. (X|D)HTML; JavaScript, AJAX, jQuery, JSON. XML, Schéma XML, DTD. Perl. BDD (SQL Server, Oracle) : SQL, procédures stockées (alias PL/SQL). Construction, gestion de projet, & déploiement : ant, maven 2, svn, scripts shell. Serveurs : Tomcat 5.5, WebLogic 8.1.
PROJET NOUVEAU : IdM Binding XML (pour persister des informations sur les tickets dans le BDD). Refactorisation majeure : GĂ©rant de RequĂȘte CDM, & quelque de ses dĂ©pendances. MAINTENANCE : Rivermine.
⹠Implémentai un module basé sur JAXB (1 & 2) pour la persistance des données dans BDD en utilisant des objets Java liés à XML & (un)marshalling.
âą AmĂ©liorai application Web CDM-requĂȘte-manager basĂ©e sur JSF ; maintenais certaines applications basĂ©es sur JSP.
âą Refactorisai des objets de requĂȘte de flux de travail, & les classes dâutilitĂ© : e.g., raccourcis une classe d'utilitĂ© par â 50%.
⹠Partageai connaissance sur comment faire procédures stockées & les invoquer depuis Oracle TOAD & Java.
Environnement : J2EE : JAXB 1 & 2, JSP, JSF, Services Web (axis) ; log4j. BDD : SQL, PL/SQL (Oracle). Outils particuliers : BMC ESS, CDM Console, CDM Studio. Méthodologie notable : Programmation en binÎme.
PROJETS NOUVEAUX : Service Web Humana de Pricing de MĂ©dicament. MAINTENANCE : Couverture de MĂ©dicaments ; Membre (Remboursements, ĂligibilitĂ©, DĂ©ductible) ; PrĂ©-autorisation ; Calcul de l'Utilisation Ndc ; Activation Rapide.
⹠Implémentai un module générique de service de tarification, & une façade WS basée sur XFire (avec WS-Security (UsernameToken (authentification par jeton du nom d'utilisateur))) ;
⹠Utilisai le cadriciel Spring pour l'Injection de Dépendance (à la fois déclaratif & runtime).
âą ImplĂ©mentai & utilisai dans le nouveau Service Web : des entitĂ©s & DAOs basĂ©es sur Hibernate3 ; un module gĂ©nĂ©rique d'statut de requĂȘte basĂ© sur des types dâĂ©numĂ©ration dâApache Commons (Success, ClientErrorâŠ, ServerErrorâŠ) âŠ
Environnement : J2EE : Services Web (Axis, XFire ; JAXB 1/2 ; JAX-WS ; SOAP 1.1/1.2 ; WS-Security, WS-Addressing) ; Spring ; Hibernate 2/3 ; clients EJB ; clients adaptateur de ressources ; CICS mainframe ; log4j ; sûreté de thread, multifil ; Tapestry, JSP, Servlets ; particularités Java 5 sur 1.4. BDD : SQL (DB2). SoapUI. Gestion de projet : mvn 1/2. Méthodologie notable : TDD.
PROJETS Nouveaux : TDT, RDT (Radiology Desktop) Threading, IntĂ©gration de PowerScribe (tierce partie) avec RDT, IntĂ©gration de flux de donnĂ©es EMR, RĂ©implĂ©mentation du module d'impression Radiologie. AmĂ©liorations : Projet dâActualisation de RDT, Marquage-Page RDTâŠ
⹠Implémentai une bibliothÚque d'observateurs de composants & une bibliothÚque de pool de threads basée sur Java-1.4 pour traitement multifil sûr.
âą IntĂ©grai une application tierce partie en utilisant C, JNI[1][2][3] & ActiveX (y compris intĂ©gration de fenĂȘtre native en appli Java).
âą Ăcris 1 module gĂ©nĂ©rique pour l'intĂ©gration d'applis natives, y compris l'intĂ©gration de fenĂȘtres, avec RDT basĂ©e sur Swing.
[1] https://docs.oracle.com/en/java/javase/17/docs/specs/jni/index.html
[2] https://docs.oracle.com/en/java/javase/17/docs/specs/jni/types.html
[3] https://docs.oracle.com/en/java/javase/17/docs/specs/jni/functions.html
Environnement : J2EE : JSP, Servlets, JSTL, bibliothÚques de balises, DAOs. J2SE : Swing, AWT ; multifil, JNI⊠ANSI C & C++, Win32, MFC, ATL/COM/ActiveX, Automation⊠BDD : SQL, CCL (intergiciel de type SQL) ; un peu : PL/SQL, HL7.
- anglais
- turc
- russe
- français