feat: add r-smart project and its skills

This commit is contained in:
xdrm 2024-03-21 18:22:04 +01:00
parent 72c30e9a40
commit fc83a0049e
Signed by: xdrm-brackets
GPG Key ID: A942057C1730391F
8 changed files with 228 additions and 1 deletions

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="13.715mm" height="14.082mm" version="1.1" viewBox="0 0 13.715 14.082" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="a" x1="28.54" x2="11.41" y1="69.49" y2="99.17" gradientTransform="matrix(.14152 0 0 .14152 118.11 154.62)" gradientUnits="userSpaceOnUse">
<stop stop-color="#0052cc" offset="0"/>
<stop stop-color="#2684ff" offset=".92"/>
</linearGradient>
</defs>
<g transform="matrix(.81724 0 0 .81724 -93.495 -127.08)" stroke-width=".14152">
<path class="cls-1" d="m120.89 163.75a0.26606 0.26606 0 0 0-0.45287 0.0495l-2.2969 4.5938a0.27455 0.27455 0 0 0 0.24483 0.39767h3.1984a0.26465 0.26465 0 0 0 0.24625-0.15567c0.68921-1.4152 0.27172-3.5904-0.93971-4.8853z" fill="url(#a)"/>
<path class="cls-2" d="m122.58 159.57a6.0586 6.0586 0 0 0-0.35381 5.9821l1.5497 3.0753a0.27455 0.27455 0 0 0 0.24483 0.15285h3.1984a0.28304 0.28304 0 0 0 0.23634-0.39485l-4.4084-8.8154a0.25899 0.25899 0 0 0-0.46702 0z" fill="#2684ff"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1014 B

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="13.715mm" height="14.082mm" version="1.1" viewBox="0 0 13.715 14.082" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(.85198 0 0 -.85198 -40.527 45.883)">
<path d="m56.199 42.616c-0.10023-0.10023-0.26329-0.10023-0.36349 0-0.10016 0.1002-0.10016 0.26317 0 0.3634 0.1002 0.1002 0.26326 0.1002 0.36349 0 0.10017-0.10023 0.10017-0.2632 0-0.3634zm0.01612 2.8978c0.10016 0.1002 0.26322 0.1002 0.36342 0 0.10023-0.10023 0.10023-0.26326 0-0.3634-0.1002-0.10022-0.26326-0.10022-0.36342 0-0.1002 0.10014-0.1002 0.26317 0 0.3634zm2.7998 0.76425c-0.08527 0.85172-0.77907 1.5593-1.6433 1.6696-0.41541 0.64577-1.1332 1.0414-1.9064 1.0414-0.60523 0-1.1742-0.23568-1.6022-0.66366-0.42794-0.42797-0.66359-0.9969-0.66359-1.6021 0-0.02605-0.0017-0.06874-0.0035-0.11723-2.19e-4 -0.0053-3.99e-4 -0.01064-6.41e-4 -0.01593-0.55502 0.01684-1.0977-0.19444-1.4965-0.5933-0.791-0.79094-0.791-2.078 0-2.869 0.79097-0.791 2.078-0.791 2.869 0 0.01266 0.01269 0.02373 0.02629 0.0333 0.04066 0.01437 0.0096 0.02801 0.02064 0.04069 0.03333l1.5279 1.5279c0.22947-0.08613 0.49842-0.0376 0.68276 0.1467 0.25122 0.25125 0.25128 0.66005 0 0.91126-0.25124 0.25128-0.66008 0.25128-0.91129 0-0.1843-0.18431-0.23287-0.45323-0.14673-0.68279l-1.5279-1.5279c-0.01266-0.0126-0.02376-0.0263-0.0333-0.04067-0.01437-0.0095-0.02801-0.02055-0.04066-0.03324-0.58413-0.58409-1.5345-0.58409-2.1186-9.4e-5 -0.5841 0.58416-0.5841 1.5346 2.3e-5 2.1186 0.34976 0.34976 0.84928 0.50417 1.3363 0.41308 0.08335-0.01559 0.16924 0.0094 0.23094 0.06766 0.06167 0.05825 0.09183 0.14227 0.08106 0.22645-0.0043 0.03883 0.0012 0.18648 0.0038 0.25742 0.0021 0.05568 0.0039 0.10378 0.0039 0.13701 0 0.46347 0.18046 0.89918 0.50821 1.2269 0.32768 0.32771 0.76345 0.50824 1.2269 0.50824 0.62883 0 1.2099-0.3419 1.5166-0.89218 0.04458-0.08014 0.12734-0.13145 0.2189-0.13588 0.70056-0.03391 1.2924-0.64246 1.2925-1.3291-3.2e-5 -0.11298 0.07142-0.21229 0.17569-0.24956 0.56287-0.22384 0.92607-0.7589 0.92615-1.3654 0-0.38771-0.15154-0.74722-0.42675-1.0125-0.2749-0.26494-0.64497-0.41085-1.0421-0.41085h-1.5226c-0.03106 0.06894-0.0742 0.13377-0.13077 0.19033-0.25122 0.25125-0.66001 0.25125-0.91126 0-0.25124-0.25127-0.25124-0.66008 0-0.91132 0.25125-0.25118 0.66004-0.25118 0.91126 0 0.05657 0.05657 0.09971 0.12139 0.13077 0.19034h1.5226c0.53511 0 1.036 0.19865 1.4103 0.55945 0.37987 0.36615 0.5891 0.86133 0.5891 1.3945 0 0.77027-0.43059 1.4561-1.1107 1.7918m-1.5462 2.2197c0.54013-0.04146 1.0492-0.27595 1.4335-0.66026 0.38428-0.38424 0.61879-0.89337 0.66028-1.4336 0.0051-0.06571 0.03366-0.12399 0.07687-0.16719 0.05284-0.05287 0.12759-0.08317 0.20798-0.07702 0.14614 0.01122 0.25549 0.13875 0.24422 0.28487-0.05111 0.66641-0.34034 1.2944-0.81414 1.7682-0.47377 0.47377-1.1017 0.76294-1.7681 0.81412-0.14612 0.01125-0.27366-0.09812-0.28487-0.24422-0.01119-0.14606 0.09812-0.27362 0.24424-0.2849m0.21614-2.8699c0.14652 0 0.26531 0.11879 0.26531 0.26531 0 0.26503-0.1032 0.51423-0.29063 0.70166-0.18744 0.18737-0.4366 0.29063-0.70163 0.29063-0.14655 0-0.26534-0.11879-0.26534-0.26534 2.4e-5 -0.14652 0.11878-0.2653 0.26537-0.26534 0.12325 0 0.23917-0.04801 0.32637-0.13521 0.08721-0.0872 0.13521-0.20308 0.13521-0.32634 0-0.07332 0.02969-0.13967 0.07769-0.18768 0.04801-0.04801 0.11439-0.0777 0.18765-0.0777" fill="#f9f9f9"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="13.715mm" height="14.082mm" version="1.1" viewBox="0 0 13.715 14.082" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(.033326 0 0 .033326 2.6962 4.2782)">
<g fill="#f9f9f9">
<polyline class="st0" points="0 110.9 0 35.7 18.8 35.7 18.8 95.1 48.2 95.1 48.2 110.9 0 110.9"/>
<path class="st0" d="m143.8 49.6v20.3h17.2c6.7 0 10.1-3.4 10.1-10.1 0-6.8-3.3-10.1-10.1-10.1h-17.2zm-18.8 61.3v-75.2h37.6c18.2 0 27.3 8.2 27.3 24.7 0 4.9-1.4 9.1-4.2 12.7s-6.6 6.2-11.3 7.6l17.2 30.2h-21l-14.8-27.1h-12v27.1h-18.8"/>
<path class="st0" d="m232.4 87.5v-3.9l-11.1 3.2c-5.3 1.5-7.9 3.9-7.9 7.3 0 4.2 2.6 6.3 7.7 6.3 3.4 0 6.1-1.1 8.2-3.3 2-2.3 3.1-5.5 3.1-9.6m15.8-18v29.7c0 5.3 0.5 9.2 1.5 11.7h-15.2c-0.6-1.8-0.9-3.7-1-5.8h-0.2c-1.3 2.1-3.8 3.9-7.3 5.3-3.2 1.3-6.4 2-9.6 2-5.6 0-10-1.4-13.4-4.3-3.6-3-5.4-7.2-5.4-12.4 0-6.4 2.6-11.3 7.7-14.6 4.4-2.8 11.4-4.9 21.1-6.2l6-0.8v-4.7c0-4-2.6-6-7.8-6-2.7 0-4.7 0.6-6 1.7s-2.2 3.1-2.6 5.8h-16c0.3-11.8 8.1-17.6 23.2-17.6 8.2 0 14.3 1.1 18.3 3.4 4.5 2.5 6.7 6.8 6.7 12.8"/>
<path class="st0" d="m84 65.8c-4.5 0-7.9 1.6-10.2 4.9-2.1 3-3.2 7-3.2 12.1s1.1 9.1 3.2 12.1c2.3 3.3 5.7 4.9 10.2 4.9 9 0 13.4-5.9 13.4-17.7 0-4.8-1.1-8.7-3.2-11.6-2.3-3.1-5.7-4.7-10.2-4.7m0-12.6c9 0 16.2 2.6 21.7 7.8s8.2 12.5 8.2 21.8-2.7 16.6-8.2 21.8-12.7 7.8-21.7 7.8-16.2-2.6-21.7-7.8-8.2-12.5-8.2-21.8 2.7-16.6 8.2-21.8c5.6-5.2 12.8-7.8 21.7-7.8"/>
</g>
<g fill="#009fe3">
<path class="st0" d="m83.5 42c8.2 0 15.9 2.4 22.3 6.6l3.2-4.6c-7.4-4.8-16.1-7.6-25.5-7.6-9 0-17.4 2.6-24.6 7l3.2 4.6c6.3-3.9 13.6-6 21.4-6"/>
<path class="st0" d="m48.9 29 4.3 6.1c8.8-5.6 19.2-8.8 30.3-8.8 11.6 0 22.3 3.5 31.3 9.4l4.3-6.1c-10.2-6.8-22.5-10.8-35.6-10.8-12.7 0-24.6 3.8-34.6 10.2"/>
<path class="st0" d="m83.5 10.3c15 0 28.9 4.5 40.6 12.3l5.4-7.7c-13.1-8.9-29-14-46-14-16.5 0-32 4.9-44.9 13.3l5.4 7.7c11.4-7.3 24.9-11.6 39.5-11.6"/>
<path class="st0" d="m84.6 123.8c-8.2 0-15.9-2.4-22.3-6.6l-3.2 4.6c7.4 4.8 16.1 7.6 25.6 7.6 9 0 17.4-2.6 24.6-7l-3.2-4.6c-6.4 3.9-13.7 6-21.5 6"/>
<path class="st0" d="m119.2 136.8-4.3-6.1c-8.8 5.6-19.2 8.8-30.3 8.8-11.6 0-22.3-3.5-31.3-9.4l-4.3 6.1c10.2 6.8 22.4 10.8 35.6 10.8 12.7 0 24.6-3.8 34.6-10.2"/>
<path class="st0" d="m84.6 155.5c-15 0-28.9-4.5-40.6-12.3l-5.4 7.7c13.1 8.8 29 14 46 14 16.5 0 32-4.9 44.9-13.3l-5.4-7.7c-11.4 7.3-25 11.6-39.5 11.6"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="13.715mm" height="14.082mm" version="1.1" viewBox="0 0 13.715 14.082" xmlns="http://www.w3.org/2000/svg">
<defs>
<clipPath id="c">
<rect x="79.457" width="155.7" height="155.7" rx="77.852" fill="#fff"/>
</clipPath>
<linearGradient id="b" x1="147.45" x2="134.89" y1="57.646" y2="57.459" gradientUnits="userSpaceOnUse">
<stop stop-color="#F5FF80" stop-opacity="0" offset="0"/>
<stop stop-color="#F5FF80" offset="1"/>
</linearGradient>
<linearGradient id="a" x1="123.31" x2="107.66" y1="98.025" y2="98.025" gradientUnits="userSpaceOnUse">
<stop stop-color="#F5FF80" stop-opacity="0" offset="0"/>
<stop stop-color="#F5FF80" offset=".96"/>
</linearGradient>
</defs>
<g transform="matrix(.050694 0 0 .050694 -1.1176 3.0968)" clip-path="url(#c)">
<path d="m147.26 70.076-8e-3 -12.83c0-0.7636-0.303-1.4962-0.843-2.0366l-11.107-11.128-7.749 8.5489 18.109 18.108c0.59 0.5901 1.599 0.1713 1.599-0.663z" fill="url(#b)"/>
<path d="m122.73 101.01-21.827-21.78-7.8007 8.4737 28.875 28.846c0.59 0.589 1.598 0.172 1.598-0.663v-12.839c0-0.765-0.304-1.498-0.845-2.038z" fill="url(#a)"/>
<path d="m151.8 0.47409c-39.176 2.7063-70.485 35.133-71.96 74.374-1.4399 38.314 24.907 70.732 60.479 78.684l-47.424-47.431c-0.6796-0.68-1.0608-1.602-1.0586-2.564l0.0354-15.323c0.0011-0.6399 0.7757-0.9603 1.2277-0.5073l7.8004-8.4736c-0.489-0.4896-0.489-1.2841 0-1.7726l7.504-7.4857c0.489-0.4884 1.282-0.4873 1.77 0l25.35 25.35c1.078 1.0774 1.682 2.5383 1.682 4.0611v26.449c0 3.811 1.514 7.465 4.208 10.159l19.329 19.329c4.91-0.21 9.696-0.882 14.324-1.967l-24.486-24.494c-1.211-1.211-1.892-2.854-1.892-4.567v-25.56c0-4.1904-1.664-8.2095-4.628-11.172l-25.729-25.729c-0.49-0.4896-0.49-1.2841 1e-3 -1.7737l7.451-7.4283c0.49-0.4884 1.282-0.4873 1.771 0.0012l7.748-8.5489c-0.144-0.1657-0.282-0.347-0.419-0.5348-2.212-2.9859-3.557-7.9101-1.989-13.463 0.94-3.555 2.89-6.2359 6.486-9.4936 0.316-0.2862 0.814-0.3006 1.136-0.0221l9.314 8.0692 1.834 1.5924c0.705 0.6111 1.547 1.0443 2.454 1.2598l29.038 6.9022c0.339 0.0796 0.651 0.2531 0.896 0.4918l29.827 29.755c0.521 0.4984 0.817 1.1935 0.817 1.9162v6.3265c0 0.9725-0.245 1.9305-0.714 2.7825l-14.76 26.893c-0.643 1.178-2.083 1.67-3.312 1.135l-6.804-2.965h-24.866c-1.598 0-2.892 1.295-2.892 2.892v11.087c0 1.526 0.603 2.991 1.678 4.074l25.755 25.952c27.123-12.076 46.038-39.278 46.038-70.898 0-44.657-37.722-80.495-83.025-77.366z" fill="#f5ff80"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -83,6 +83,16 @@
"skill.rnd": "R&D",
"skill.teamlead": "Team Lead",
"skill.needsanalysis": "Needs analysis",
"skill.grpc": "gRPC",
"skill.microservices": "Micro services",
"skill.kubernetes": "Kubernetes",
"skill.scrum": "SCRUM",
"skill.lora": "LoRa",
"skill.architecture": "Architecture",
"skill.chirpstack": "ChirpStack",
"skill.refactor": "Refactoring",
"skill.timescale": "Timescale",
"skill.atlassian": "Atlassian",
"time.dur-format": "took {duration}",
"time.cur-format": "since {duration}",

View File

@ -83,6 +83,16 @@
"skill.rnd": "R&D",
"skill.teamlead": "Chef d'équipe",
"skill.needsanalysis": "Analyse besoin client",
"skill.grpc": "gRPC",
"skill.microservices": "Micro services",
"skill.kubernetes": "Kubernetes",
"skill.scrum": "SCRUM",
"skill.lora": "LoRa",
"skill.architecture": "Architecture",
"skill.chirpstack": "ChirpStack",
"skill.refactor": "Refactor",
"skill.timescale": "Timescale",
"skill.atlassian": "Atlassian",
"time.dur-format": "a duré {duration}",

View File

@ -22,6 +22,19 @@ export interface Project {
}
export const Projects: Project[] = [
{
name: 'R-Smart',
client: 'NGEConnect',
skills: [s.Go, s.Web, s.Rest, s.Linux, s.Git, s.RnD, s.Grpc, s.Microservices, s.Kubernetes, s.Scrum, s.Docker, s.LoRa, s.Mongo, s.Architecture, s.Chirpstack, s.Refactor, s.Timescale, s.Atlassian],
started_at: new Date(2023, 4, 1),
stopped_at: new Date(2023, 11, 31),
info: {
[Locales.EN]: 'Micro-services application enabling the collection of information and the control of various LoRa devices. It allows for the supervision of Smart Cities and other connected environments.<br><br>Design, study, and development of GO micro-services enabling incoming and outgoing communication with LoRa devices (R-Card). Integration into the existing system.<br><br>In detail:<ul><li>A lot of refactoring and architecture work</li><li>Refactoring of the permission system</li><li>Migration of JS micro-services to TS</li><li>Involvement in CI/CD and DevOps issues; k8s context</li><li>Introduction of GRPC in micro-services</li><li>Migration of micro-services to GRPC, reusability and deployment issues</li><li>Design and implementation of the overall system for controlling devices</li><li>Creation of the minikube development environment</li><li>Creation of the GO library for error handling</li><li>Creation of the GO library for implementing business transactions with different databases; CI setup</li><li>Creation of the E2E test suite</li><li>Creation of 4 new micro-services</li></ul>I was able to complete the initial mission before the planned 4 months. The solution was made available to the relevant clients. The mission was extended to continue working on the initiated issues: DevOps, refactoring, control system, etc., as well as deployment to production. During this period, we were able to replace the old unstable system with the new one, which did not encounter any issues in the last 3 months of my mission.<br><br>Participation:<ul><li>14 repositories</li><li>976 commits</li><li>222,000 additions</li><li>165,680 deletions</li></ul>',
[Locales.FR]: 'Application micro-services permettant la collecte d\'informations et le pilotage de divers équipements LoRa sur le terrain. Permet entre autres l\'hypervision de Smart Cities et autres environnements connectés.<br><br>Conception, étude et développement de micro-services GO permettant la communication entrante et sortante avec des équipements LoRA sur le terrain (R-Card). Intégration dans l\'existant.<br><br>En détail :<ul> <li>beaucoup de refactor et d\'architecture</li><li>refactor du système de droits</li><li>migration de micro-services JS en TS</li><li>implication dans les problématiques CI/CD et DevOps ; contexte k8s</li><li>apport du GRPC dans les micro-services</li><li>migration de micro-services en grpc, problématiques de réutilisabilité et déploiement</li><li>conception et implémentation du système global de pilotage des équipements</li><li>création de l\'environnement de dev minikube</li><li>création de la librairie GO pour la gestion des erreurs</li><li>création de la librairie GO pour la mise en place des transactions métier vis à vis des différentes bases de données ; mise en place de la CI</li><li>création de la suite de tests E2E</li><li>création de 4 nouveaux micro-services</li></ul><br><br>J\'ai pu terminer la mission initiale avant les 4 mois prévus. La solution a pu être mise à disposition des clients concernés. Prolongation pour continuer sur les problématiques que j\'avais engagées : DevOps, refactor, système de pilotage, etc ; ainsi que la mise en prod. On a pu dans cette période remplacer l\'ancien système bancal par le nouveau avec lequel on n\'a pas vu de problème pendant les 3 derniers mois de ma mission.<br><br>Participation :<ul><li>14 repos</li><li>976 commits</li><li>222000 additions</li><li>165680 deletions</li></ul>',
},
source: null, doc: null,
commits: 976,
},
{
name: 'Modular box',
client: 'Marlink',
@ -53,7 +66,7 @@ export const Projects: Project[] = [
client: 'Collins Aerospace',
skills: [s.Qt, s.RnD, s.Cpp, s.Concurrency, s.Git, s.NeedsAnalysis, s.Css, s.Bash, s.Linux, s.Inkscape, s.UIUX, s.TeamLead],
started_at: new Date(2020, 6, 16),
stopped_at: null,
stopped_at: new Date(2023, 3, 16),
info: {
[Locales.EN]: 'Multi-platform (linux, windows and iOS) flight assistance application for pilots. Research and development branch of an international aeronautical company (US).<br><br>I am the project architect and have been in charge of the technical direction since its creation. I lead a rotating team of 2 to 3 people, ensure the follow-up and the analysis of the customer needs up to task extraction through a simplified Agile organization.<br><br>The project is developed in C++ with the <b>Qt</b> framework. It features:<ul><li>an asynchronous event-driven message bus</li><li>a simplified <a href="https://sass-lang.com/documentation/syntax#scss">SCSS</a> engine</li><li>a dynamic settings system</li><li>a generic iOS windowing system</li><li>a unit test and integration framework</li><li>a generic interface for aircraft on-board computers</li></ul><br>The first iteration of the project has now been accepted for the industrialization process. I now work on the next R&D phases.',
[Locales.FR]: 'Application multi-plateforme (linux, windows et iOS) d\'assistance de vol pour les pilotes de ligne. Branche recherche et développement d\'une entreprise aéronautique internationale (US).<br><br>Je suis architecte du projet et assure la direction technique depuis sa création. Je pilote une équipe tournante de 2 à 3 personnes, assure le suivi et l\'analyse des besoins client jusqu\'à l\'extraction de tâches à travers une organisation Agile simplifiée.<br><br>Le projet est développé en C++ avec le framework <b>Qt</b>. Il comporte notamment :<ul><li>un bus de messages évènementiel asynchrone</li><li>un moteur <a href="https://sass-lang.com/documentation/syntax#scss">SCSS</a> simplifié</li><li>un système de paramètres dynamique</li><li>un système de fenêtrage générique iOS</li><li>un système de tests unitaires et tests d\'intégration</li><li>une interface générique pour différents calculateurs avioniques</li></ul><br>La première itération du projet est passée en industrialisation après tests par les pilotes. Je travaille depuis sur les prochaines phases R&D.',

View File

@ -49,6 +49,16 @@ export enum tID {
RnD,
TeamLead,
NeedsAnalysis,
Grpc,
Microservices,
Kubernetes,
Scrum,
LoRa,
Architecture,
Chirpstack,
Refactor,
Timescale,
Atlassian,
}
export enum tTag {
@ -132,6 +142,16 @@ export function skillLabel(s: tID): string {
case tID.RnD: return 'skill.rnd';
case tID.TeamLead: return 'skill.teamlead';
case tID.NeedsAnalysis: return 'skill.needsanalysis';
case tID.Grpc: return 'skill.grpc';
case tID.Microservices: return 'skill.microservices';
case tID.Kubernetes: return 'skill.kubernetes';
case tID.Scrum: return 'skill.scrum';
case tID.LoRa: return 'skill.lora';
case tID.Architecture: return 'skill.architecture';
case tID.Chirpstack: return 'skill.chirpstack';
case tID.Refactor: return 'skill.refactor';
case tID.Timescale: return 'skill.timescale';
case tID.Atlassian: return 'skill.atlassian';
}
}
@ -671,4 +691,119 @@ export const Skills: tSkills = {
[Locales.FR]: 'Analyse du besoin client afin de fournir une solution et un agenda technique.',
},
},
[tID.Grpc]: {
link: 'https://grpc.io/',
icon: 'skills/grpc.svg',
tags: [tTag.Network, tTag.System, tTag.Web],
interest: Level.L5,
mastery: Level.L4,
info: {
[Locales.EN]: 'gRPC is a high-performance, open-source universal RPC framework. I use it often for microservice architectures. It is a great alternative to REST for internal communications.',
[Locales.FR]: 'gRPC est un framework RPC universel open-source et performant. Je l\'utilise souvent pour des architectures microservices. C\'est une bonne alternative à REST pour les communications internes.',
}
},
[tID.Microservices]: {
link: 'https://en.wikipedia.org/wiki/Microservices',
icon: null,
tags: [tTag.System, tTag.Web, tTag.Organization],
interest: Level.L4,
mastery: Level.L3,
info: {
[Locales.EN]: 'Microservices is an architectural style that structures an application as a collection of services. I use it often for web projects. It allows to have a more maintainable and scalable architecture.',
[Locales.FR]: 'Microservices est un style architectural qui structure une application comme une collection de services. Je l\'utilise souvent pour les projets web. Cela permet d\'avoir une architecture plus maintenable et scalable.',
}
},
[tID.Kubernetes]: {
link: 'https://kubernetes.io/',
icon: 'skills/kubernetes.svg',
tags: [tTag.System, tTag.Web, tTag.Network, tTag.Organization],
interest: Level.L4,
mastery: Level.L3,
info: {
[Locales.EN]: 'Kubernetes is an open-source container-orchestration system for automating application deployment, scaling, and management. I use it often in microservices environments. It allows to have a more maintainable and scalable architecture.',
[Locales.FR]: 'Kubernetes est un système d\'orchestration de conteneurs open-source pour automatiser le déploiement, le dimensionnement et la gestion des applications. Je l\'utilise souvent dans les environnements de microservices. Cela permet d\'avoir une architecture plus maintenable et scalable.',
}
},
[tID.Scrum]: {
link: 'https://en.wikipedia.org/wiki/Scrum_(software_development)',
icon: 'skills/scrum.svg',
tags: [tTag.Organization, tTag.Human],
interest: Level.L2,
mastery: Level.L2,
info: {
[Locales.EN]: 'Scrum is a framework for agile project management. It allows to have a more maintainable and scalable architecture.',
[Locales.FR]: 'Scrum est un cadre de gestion de projet agile. Cela permet d\'avoir une architecture plus maintenable et scalable.',
}
},
[tID.LoRa]: {
link: 'https://lora-alliance.org/',
icon: 'skills/lora.svg',
tags: [tTag.Network, tTag.IoT],
interest: Level.L5,
mastery: Level.L2,
info: {
[Locales.EN]: 'LoRa is a long-range, low-power wireless protocol that is the de facto technology for Internet of Things (IoT) networks worldwide. It provides low-consumption communications for long distances.',
[Locales.FR]: 'LoRa est un protocole sans fil longue portée et basse consommation qui est la technologie de facto pour les réseaux Internet des objets (IoT) dans le monde entier. Il fournit des communications à faible consommation pour de longues distances.',
}
},
[tID.Architecture]: {
link: 'https://en.wikipedia.org/wiki/Software_architecture',
icon: 'skills/architecture.svg',
tags: [tTag.System, tTag.Organization],
interest: Level.L5,
mastery: Level.L4,
info: {
[Locales.EN]: 'Software architecture is the structure of a software system. It is a set of structures needed to reason about the software system, which comprises software elements, relations among them, and properties of both.',
[Locales.FR]: 'L\'architecture logicielle est la structure d\'un système logiciel. C\'est un ensemble de structures nécessaires pour raisonner sur le système logiciel, qui comprend des éléments logiciels, des relations entre eux et les propriétés des deux.',
}
},
[tID.Chirpstack]: {
link: 'https://www.chirpstack.io/',
icon: 'skills/chirpstack.svg',
tags: [tTag.Network, tTag.IoT],
interest: Level.L5,
mastery: Level.L3,
info: {
[Locales.EN]: 'ChirpStack is an open-source LoRaWAN Network Server stack, the most used in the world. It provides a complete LoRaWAN solution.',
[Locales.FR]: 'ChirpStack est une pile de serveurs de réseau LoRaWAN open-source, la plus utilisée au monde. Il fournit une solution LoRaWAN complète.',
}
},
[tID.Refactor]: {
link: 'https://en.wikipedia.org/wiki/Code_refactoring',
icon: 'skills/refactor.svg',
tags: [tTag.System, tTag.Organization],
interest: Level.L5,
mastery: Level.L5,
info: {
[Locales.EN]: 'Code refactoring is the process of restructuring existing computer code without changing its external behavior. Refactoring improves nonfunctional attributes of the software.',
[Locales.FR]: 'Le refactoring de code est le processus de restructuration du code informatique existant sans changer son comportement externe. Le refactoring améliore les attributs non fonctionnels du logiciel.',
}
},
[tID.Timescale]: {
link: 'https://www.timescale.com/',
icon: 'skills/timescale.svg',
tags: [tTag.System, tTag.Storage],
interest: Level.L4,
mastery: Level.L3,
info: {
[Locales.EN]: 'TimescaleDB is a time-series database built on top of PostgreSQL. It provides a complete time-series solution.',
[Locales.FR]: 'TimescaleDB est une base de données de séries temporelles construite sur PostgreSQL. Il fournit une solution de séries temporelles complète.',
}
},
[tID.Atlassian]: {
link: 'https://www.atlassian.com/',
icon: 'skills/atlassian.svg',
tags: [tTag.Organization],
interest: Level.L4,
mastery: Level.L4,
info: {
[Locales.EN]: 'Atlassian is a software company that develops products for software developers, project managers, and content management. I have used Jira and Confluence for project management.',
[Locales.FR]: 'Atlassian est une entreprise de logiciels qui développe des produits pour les développeurs de logiciels, les chefs de projet et la gestion de contenu. J\'ai utilisé Jira et Confluence pour la gestion de projet.',
}
},
};