{"id":620,"date":"2023-05-11T10:38:04","date_gmt":"2023-05-11T09:38:04","guid":{"rendered":"https:\/\/www.smarinier.net\/?page_id=620"},"modified":"2023-05-17T15:12:57","modified_gmt":"2023-05-17T14:12:57","slug":"developpement-web","status":"publish","type":"page","link":"https:\/\/www.smarinier.net\/developpement-web\/","title":{"rendered":"D\u00e9veloppements Web"},"content":{"rendered":"<p style=\"text-align: justify;\"><em>Cette page pr\u00e9sente plus sp\u00e9cifiquement les d\u00e9veloppements web que j&rsquo;ai pu r\u00e9aliser. Je vous invite \u00e0 lire les r\u00e9f\u00e9rences des entreprises et de mes missions dans <a href=\"https:\/\/www.smarinier.net\/sebastien-marinier-cv\/\">mon CV<\/a>.<\/em><\/p>\n<h1>Web App<\/h1>\n<p style=\"text-align: justify;\">J&rsquo;ai supervis\u00e9 et particip\u00e9 \u00e0 la conception et \u00e0 la r\u00e9alisation du logiciel <strong>AMI EI<\/strong>\u00a0 en tant que salari\u00e9 dans l&rsquo;entreprise Flandrin It (ex Bertin It), entre 2004 et 2022. En tant que responsable R&amp;D, j&rsquo;ai con\u00e7u une grande partie de l&rsquo;architecture logicielle, dirig\u00e9 l&rsquo;\u00e9quipe de d\u00e9veloppement (jusqu&rsquo;\u00e0 8 personnes) et particip\u00e9 \u00e0 celui de nombreux modules. Le logiciel est utilis\u00e9 par de grandes entreprises du CAC 40 mais \u00e9galement par des organismes publics (d\u00e9fense, minist\u00e8res&#8230;). Il repr\u00e9sente environ 2 millions de lignes de code propri\u00e9taire. Les techniques employ\u00e9es par le logiciel concernent le web crawling, le scrapping d&rsquo;information, l&rsquo;indexation, les moteurs de recherches, l&rsquo;analyse, le traitement du langage, l&rsquo;analyse statistique et s\u00e9mantique, les graphiques, les graphes de relation&#8230; Il est principalement \u00e9crit en <strong>PHP<\/strong> (<strong>Symfony<\/strong>), C++, utilise du\u00a0CSS compil\u00e9 (<strong>Less<\/strong> puis <strong>Sass<\/strong>), JavaScript front (<strong>BackboneJS<\/strong> puis <strong>Vue.JS<\/strong>) mais \u00e9galement du JavaScript backend.<\/p>\n<p><a href=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache.png\"><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache-1024x674.png\" alt=\"\" width=\"750\" height=\"494\" class=\"wp-image-629 size-large aligncenter\" srcset=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache-1024x674.png 1024w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache-300x198.png 300w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache-768x506.png 768w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/topicshare_accueil_et_amiei_-_head_dev_-_1_tache.png 1371w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Mon travail sur la Web application <strong>AMI EI<\/strong>, m&rsquo;a particuli\u00e8rement impliqu\u00e9 dans la gestion de la <strong>s\u00e9curit\u00e9 Web<\/strong>, mais \u00e9galement les <strong>optimisations<\/strong> (vitesse de transfert de pages, r\u00e9activit\u00e9 du serveur) que l&rsquo;on peut retrouver \u00e9galement sur les sites web (WordPress) ci-apr\u00e8s.<\/p>\n<h1>WordPress<\/h1>\n<p>J&rsquo;utilise et d\u00e9veloppe avec <strong>WordPress<\/strong> depuis une quinzaine d&rsquo;ann\u00e9es.<\/p>\n<p style=\"text-align: justify;\">Pour l&rsquo;entreprise AMI Software, j&rsquo;ai aid\u00e9 \u00e0 la mise en oeuvre des premi\u00e8res versions du site de la soci\u00e9t\u00e9 en <strong>WordPress<\/strong> jusqu&rsquo;\u00e0 ce qu&rsquo;elle puisse \u00eatre sous-trait\u00e9 quand la taille de la soci\u00e9t\u00e9 est devenue suffisamment importante.<\/p>\n<p style=\"text-align: justify;\">J&rsquo;ai r\u00e9alis\u00e9 mon propre site internet (\u00e0 l&rsquo;origine avec Dotclear) et dont vous consultez en ce moment la troisi\u00e8me mouture.<\/p>\n<p style=\"text-align: justify;\">J&rsquo;ai mis en place plusieurs sites pour des amis ou associations sur mon temps libre.\u00a0 Je pr\u00e9sente ici quatre exemples:<\/p>\n<p style=\"text-align: justify;\">J&rsquo;ai construit le site \u00ab\u00a0<a href=\"https:\/\/www.lescarnetsdenat.com\/\"><strong>Les carnets de Nat<\/strong><\/a>\u00a0\u00bb qui a servi de vitrine durant plusieurs ann\u00e9es \u00e0 un blog culinaire\u00a0 ouvrant sur une activit\u00e9 commerciale d&rsquo;atelier de cuisine tr\u00e8s pris\u00e9. Pour cette activit\u00e9 pure, j&rsquo;ai sp\u00e9cifiquement con\u00e7u et d\u00e9velopp\u00e9 un module de gestion de plannings . Le site a connu une tr\u00e8s forte activit\u00e9 (1700 consultations\/jour).<a href=\"https:\/\/www.lescarnetsdenat.com\/\"><img decoding=\"async\" src=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1-726x1024.jpg\" alt=\"\" width=\"726\" height=\"1024\" class=\"aligncenter wp-image-645 size-large\" srcset=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1-726x1024.jpg 726w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1-213x300.jpg 213w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1-768x1083.jpg 768w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1-1090x1536.jpg 1090w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Les_carnets_de_Nat_-_Les_carnets_de_Nat-1.jpg 1152w\" sizes=\"(max-width: 726px) 100vw, 726px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Depuis de nombreuses ann\u00e9es, je m&rsquo;occupe b\u00e9n\u00e9volement du site du <a href=\"http:\/\/www.tennis-castries.fr\/\">Tennis-Padel-Club de Castries<\/a>. Afin que cela engendre le moins co\u00fbt possible \u00e0 cette association, le site utilise un ensemble de plugins gratuits (<strong>Elementor<\/strong>). J&rsquo;ai toutefois d\u00e9velopp\u00e9 des modules pour permettre, entre autre, un affichage en direct des tableaux de tournois du club.<\/p>\n<p><a href=\"http:\/\/www.tennis-castries.fr\/\"><img decoding=\"async\" src=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Accueil-559x1024.jpg\" alt=\"\" width=\"559\" height=\"1024\" class=\"wp-image-626 size-large aligncenter\" srcset=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Accueil-559x1024.jpg 559w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Accueil-164x300.jpg 164w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Accueil.jpg 560w\" sizes=\"(max-width: 559px) 100vw, 559px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">R\u00e9cemment, j&rsquo;ai mis en oeuvre le site de boutique artisanale <a href=\"https:\/\/www.gkoceramique.com\/\"><strong>Gko-C\u00e9ramique<\/strong><\/a>. Utilisant le plugins <strong>WooCommerce<\/strong> pour la vente des pi\u00e8ces r\u00e9alis\u00e9es en production, le site utilise \u00e9galement de nombreux plugins permettant de g\u00e9rer le paiement par carte bleue et les syst\u00e8mes d&rsquo;envois de colis (<strong>Mondial Relay<\/strong>, <strong>Colissimo, etc&#8230; <\/strong>). J&rsquo;ai enti\u00e8rement personnalis\u00e9 le th\u00e8me de la boutique (templates PHP\/HTML et CSS) afin qu&rsquo;il corresponde exactement aux besoins de l&rsquo;artisane. J&rsquo;ai r\u00e9alis\u00e9 un petit module pour permettre de compter automatiquement le poids d&#8217;emballage, ce dernier \u00e9tant particuli\u00e8rement important lors de l&rsquo;envoi des pi\u00e8ces en c\u00e9ramique.<\/p>\n<p><a href=\"https:\/\/www.gkoceramique.com\/\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Nathalie_Marinier_-_Artisane_ceramiste_-_Gko_Ceramique.jpg\" alt=\"\" width=\"915\" height=\"501\" class=\"aligncenter wp-image-627\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.gkoceramique.com\/\"><br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Pot_en_faience_brune__avec_couvercle_-_Gko_Ceramique-1024x743.jpg\" alt=\"\" width=\"750\" height=\"544\" class=\"aligncenter wp-image-647 size-large\" srcset=\"https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Pot_en_faience_brune__avec_couvercle_-_Gko_Ceramique-1024x743.jpg 1024w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Pot_en_faience_brune__avec_couvercle_-_Gko_Ceramique-300x218.jpg 300w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Pot_en_faience_brune__avec_couvercle_-_Gko_Ceramique-768x557.jpg 768w, https:\/\/www.smarinier.net\/%77%70%2d%63%6f%6e%74%65%6e%74\/uploads\/2023\/05\/Pot_en_faience_brune__avec_couvercle_-_Gko_Ceramique.jpg 1212w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/a><\/p>\n<p>Au cours de ces derni\u00e8res ann\u00e9es, j&rsquo;ai ainsi acquis de nombreuses comp\u00e9tences <strong>WordPress : l<\/strong>&lsquo;\u00e9cosyst\u00e8me de WordPress tout d&rsquo;abord (installation, migration&#8230;) mais \u00e9galement quels plugins utiliser, comment d\u00e9velopper avec WordPress,\u00a0 mettre en place des hooks, des personnalisations, des modules et bien s\u00fbr, comment d\u00e9bogguer.\u00a0 Je ma\u00eetrise \u00e9galement la protection des sites WordPress des intrusions (Pour exemple, un article expliquant comment j&rsquo;ai lutt\u00e9 contre des intrusions dues \u00e0 une ancienne faille : <a href=\"https:\/\/www.smarinier.net\/virus-piratage-wordpress-histoire-dune-infestation-et-de-leur-eradication\/\">virus WordPress, histoire d&rsquo;une infestation<\/a>).<\/p>\n<h1>Autres produits<\/h1>\n<p>Si ma sp\u00e9cialisation me pr\u00e9dispose \u00e0 l&rsquo;utilisation de WordPress, je me suis \u00e9galement tr\u00e8s impliqu\u00e9 dans d&rsquo;autres outils (SPIP, DotClear, CMS Made Simple, Druppal, <strong>NextCloud<\/strong>, <strong>PrestaShop<\/strong>, etc&#8230;). Je m&rsquo;adapte \u00e0 tous les outils, tant les probl\u00e9matiques et les moyens de les r\u00e9soudre se ressemblent.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cette page pr\u00e9sente plus sp\u00e9cifiquement les d\u00e9veloppements web que j&rsquo;ai pu r\u00e9aliser. Je vous invite \u00e0 lire les r\u00e9f\u00e9rences des entreprises et de mes missions dans mon CV. Web App J&rsquo;ai supervis\u00e9 et particip\u00e9 \u00e0 la conception et \u00e0 la r\u00e9alisation du logiciel AMI EI\u00a0 en tant que salari\u00e9 dans [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-620","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/pages\/620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/comments?post=620"}],"version-history":[{"count":12,"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/pages\/620\/revisions"}],"predecessor-version":[{"id":648,"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/pages\/620\/revisions\/648"}],"wp:attachment":[{"href":"https:\/\/www.smarinier.net\/%77%70%2d%6a%73%6f%6e\/wp\/v2\/media?parent=620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}