fr
fr
Resat
Not open to job opportunities
Other
Noisiel
Freelance
Hybrid remote
Technologies
About
Resat
Développeur fullstack: Java/Spring, JS/Angular/React, (T-, PL/ & No-)SQL, Node, C/C++, Android/Kotlin/Jetpack Compose ...
OtherNoisiel
developer avatar
Description

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) ...

Professional experiences
16 years of experience as Other (or similar)
Ingénieur Logiciel Freelance
EUROFIBER - Croissy-BeaubourgSep 2024 - Feb 2025 · 5 months

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.

Ingénieur logiciel freelance
STIME - ChùtillonOct 2023 - Aug 2024 · 10 months

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.

Ingénieur Logiciel
Tentative de Jeune Pousse - ParisDec 2017 - Oct 2023 · 5 years 10 months

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.

Contributeur Java & Open-Source
DIVERS PROJETS - ParisMay 2002 - Oct 2023 · 21 years 5 months

‱ 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.

Contributeur Java & Open-Source
EXTRA - ParisDec 2012 - Sep 2023 · 10 years 9 months
‱ 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.
Ingénieur Logiciel
PROJET PERSO - DenverMar 2015 - Sep 2023 · 8 years 6 months

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.

DĂ©veloppeur des Applis Livrel & Écrivain des Livrels
PROJET PERSONNEL - DenverMar 2015 - Nov 2017 · 2 years 8 months

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.

Ingénieur Logiciel Sénior
JEPPESEN (Boeing (https://finance.yahoo.com/quote/BA)) - DenverNov 2014 - Feb 2015 · 3 months

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.

Ingénieur Logiciel Sénior
CENTURY LINK (https://www.barchart.com/stocks/quotes/LUMN) - DenverJun 2014 - Sep 2014 · 3 months

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).

Ingénieur Logiciel Sénior
SPRINT (https://finance.yahoo.com/quote/TMUS) - Overland ParkJul 2011 - Apr 2013 · 1 year 9 months

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.

Ingénieur Logiciel Sénior
SPRINT (https://stockinvest.us/stock-price/S) - Overland ParkMay 2010 - Oct 2010 · 5 months

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.

I. L. S./Développeur Principal
CENTURY LINK (https://www.barchart.com/stocks/quotes/LUMN) - Overland ParkJan 2010 - Mar 2010 · 2 months

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.

Ingénieur Logiciel Sénior
SILPADA - Overland ParkFeb 2008 - Dec 2009 · 1 year 10 months

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.

Ingénieur Logiciel
VML - Kansas City, United StatesDec 2007 - Oct 2008 · 10 months

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.

Ingénieur Logiciel
EMBARQ (https://www.barchart.com/stocks/quotes/LUMN) - Overland ParkJun 2007 - Nov 2007 · 5 months

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.

Ingénieur Logiciel
ARGUS HEALTH SYSTEMS - Kansas City, United StatesDec 2006 - Jun 2007 · 6 months

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.

Ingénieur Logiciel
CERNER CORPORATION - Kansas City, United StatesJun 2003 - Nov 2006 · 3 years 5 months

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.

Schools
5 years of higher education
Purdue University, West Lafayette
License en informatique2003
Technologies
Skills
Interested by...Projet Reactor.
Languages
  • anglais
  • turc
  • russe
  • français
Tests
No information has been entered for this section.