diff --git a/config.yaml b/config.yaml index f35ce87..6d0f2c3 100644 --- a/config.yaml +++ b/config.yaml @@ -1,7 +1,7 @@ contacts: name: Violette Paulin title: Software Engineer - email: "violette@bigblase.xyz" + email: "paum1202@usherbrooke.ca" website: "bigblase.xyz" nationality: French github: "https://github.com/thebigblase/" @@ -39,6 +39,17 @@ skills: - rocket.rs - Vue.js +languages: + - name: French + proficiency: 5 + comment: None + - name: English + proficiency: 4 + comment: None + - name: German + proficiency: 2 + comment: None + jobs: - position: R & D engineer company: @@ -53,6 +64,7 @@ jobs: to: "2023 Aug." tags: - Distributed System design + - Rust - Blockchain Programming - Web programming - backend & frontend @@ -84,28 +96,53 @@ projects: - main: name: Discsord Bot link: "https://github.com/storca/vhbot" - description: > - Discord bot designed with a classmate. The goal was to make life easier during quarantine for our teachers with functionnality such as making a list of persons attending class, a feature to ask question during class & indicating begin and end of class times. + description: + - Automate actions during class + - Useful for our teachers + - List people attending class + - Wishes birthday to our teachers + tags: + - Python + - Teamwork + - Git year: 2020 - - main: - name: Caramell - link: "https://github.com/thebigblase/caramell" - description: > - Plateform offering to cache data efficiently and sotrring logs in a blockchain. Developped under the supervision of M. Salamatian and M. Monnet during my time at LISTIC. - year: 2023 + #- main: + # name: Caramell + # link: "https://github.com/thebigblase/caramell" + # description: + # - Proof of concept for a security vulnerability (CVE-2019-15126) + # - Used as my final projects for MPSI / MP classes. + # tags: + # - Cybersecurity + # - Python + # - Self teaching + # year: 2023 school: - main: name: kr00k link: "https://github.com/thebigblase/kr00k" - description: > - PoC scripts to show the kr00k vulnerability (CVE-2019-15126). Part of a school projects + description: + - Proof of concept for a security vulnerability (CVE-2019-15126) + - Used as my final projects for MPSI / MP classes. + tags: + - Cybersecurity + - Python + - Self teaching year: 2021 - main: name: DHTea link: "https://github.com/phoqueEberlue/DHTea" - description: > - basic Distributed Hash Table written in rust. It was part of a distributed system class in IDU, Polytech Annecy. + description: + - Distributed hash table + - Written in rust from scratch + - Stores files / data + tags: + - Rust + - Systèmes distribués + - Autonomie + - Git + - Shell scripting year: 2023 hobbies: @@ -114,6 +151,6 @@ hobbies: - low level-ish dev - resurecting old tech other: - - cooking - - playing the guitar - music + - playing the guitar + - cooking diff --git a/config_fr.yaml b/config_fr.yaml index 0ccb1a4..c49a66e 100644 --- a/config_fr.yaml +++ b/config_fr.yaml @@ -1,7 +1,7 @@ contacts: name: Violette Paulin title: Developpeuse - email: "violette@bigblase.xyz" + email: "paum1202@usherbrooke.ca" website: "bigblase.xyz" nationality: French github: "https://github.com/thebigblase/" @@ -40,17 +40,28 @@ skills: - rocket.rs - Vue.js +languages: + - name: Francais + proficiency: 5 + comment: None + - name: Anglais + proficiency: 4 + comment: None + - name: Allemand + proficiency: 2 + comment: None + + jobs: - - position: "Stage : Ingénieur R & D" + - position: "Stage en R & D" company: - name: LISTIC Annecy + name: LISTIC ; Université Savoie Mont-blanc link: https://www.univ-smb.fr/listic/en/ description: + - Stage effectué dans un laboratoire d'informatique public - Design et implémentation d'un système de cache avec blockchain - - Stage effectué dans un laboratoire d'informatique - - Stage supervisé by Sébastien Monnet & Kavé Salamatian from: "Mai 2023" - to: "Aug 2023" + to: "Aout 2023" tags: - Design de système distribué - Programmation de blockchain @@ -59,25 +70,6 @@ jobs: - Autonomie education: - - university: - name: Lycée Victor Hugo (Besançon) - link: "https://lyceehugobesancon.org" - degree: "Classe préparatoire aux grandes écoles" - major: • Maths Physique - track: None - from: 2019 - to: 2021 - - - university: - name: Polytech Annecy Chambéry - link: "https://www.polytech.univ-smb.fr/" - degree: "Maitrise" - major: - Informatique - track: - Informatique Données Usage - from: "2021" - to: "Aujourd'hui" - university: name: Université de Sherbrooke link: "https://usherbrooke.ca" @@ -87,41 +79,84 @@ education: track: None from: "2023" to: "Aujourd'hui" + - university: + name: Polytech Annecy Chambéry + link: "https://www.polytech.univ-smb.fr/" + degree: "Maitrise" + major: + d'informatique + track: + Informatique Données Usage + from: "2021" + to: "Aujourd'hui" + - university: + name: Lycée Victor Hugo (Besançon) + link: "https://lyceehugobesancon.org" + degree: "Classe préparatoire aux grandes écoles" + major: + track: Maths Physique (MPSI / MP) + from: 2019 + to: 2021 + projects: personnal: - main: name: Bot Discsord link: "https://github.com/storca/vhbot" - description: > - Bot discord utilisé pendant le confinement en France. Il peut faire une liste d'appel, ajoute une fonction "lève la main" (similaire à Teams aujourd'hui) et imite la sonnerie à la fin de la classe. Il dispose aussi d'un module pour faire de l'arithmétique simple, et souhaite les anniversaires aux professeurs. Il a été écrit en Python, en équipe avec un camarade de classe. + description: + - Permet d'automatiser des actions + - Utile pour aider nos professeurs pendant le confinement + - Fait des actions comme faire l'appel + - souhaite l'anniversaire aux professeur.e.s year: 2020 - - main: - name: Caramell - link: "https://github.com/thebigblase/caramell" - description: > - Projet du stage de 2023. Il permet de stocker des journaux dans une blockchain et cache des données avec une grande efficacité. Il est écrit en Rust, et Node.js pour certaines interfaces utilisateurs. J'ai travaillé seule dessus, mes encadrants relisaient le travail à chaque grande étape. - year: 2023 + tags: + - Python + - En équipe + - Git + # - main: + # name: Caramell + # link: "https://github.com/thebigblase/caramell" + # description: + # - yes + # tags: + # - Rust + # - Web Dev + # - Blockchain + #year: 2023 school: - main: name: kr00k link: "https://github.com/thebigblase/kr00k" - description: > - Scripts de preuves de concept pour la faille Kr00k (CVE-2019-15126). Travail final pour mon TIPE de MPSI. + description: + - Preuve de concept pour une faille de sécurité (CVE-2019-15126) + - Remis comme projet final TIPE de MPSI / MP + tags: + - Sécurité informatique + - Python + - Autonomie year: 2021 - main: name: DHTea link: "https://github.com/phoqueEberlue/DHTea" - description: > - Table de hash distribuée écrite in Rust. Je l'ai écrit seule. Un équipier m'a aidée pour la fondation, et a écrit un script pour la simuler en python. + description: + - Table de Hash distribuée + - Stockage d'information / fichiers distribué + - Ecrit from scratch + tags: + - Rust + - Systèmes distribués + - Autonomie + - Git + - Shell scripting year: 2023 hobbies: tech: - kernel dev - - low level-ish dev - - réssuciter des vieux objets électronique + - Aller fouiller sous le capot de mes outils + - réssuciter des vieux objets électroniques other: - cuisine - guitare diff --git a/main.typ b/main.typ index 0870ae0..f4d27eb 100644 --- a/main.typ +++ b/main.typ @@ -37,7 +37,7 @@ personnal.contacts.address } ] - #line(length: 100%) + #line(length: 100%, stroke: blue + 0.5pt) ] = Summary @@ -70,6 +70,71 @@ ] ] } + = Languages + + #{ + for lang in config.languages [ + #par(leading: 0pt)[ + + #set text( + size: eval(settings.font.size.description), + font: settings.font.minor_highlight, + ) + #grid( + columns: (1fr, 2fr), + column-gutter: 3em, + [*#lang.name*], + { + let count = 0 + while count < 5 { + if (count < lang.proficiency) { + text(blue, size: 15pt)[#sym.circle.filled] + } + else { + text(blue, size: 15pt)[#sym.circle] + } + count = count + 1 + } + }, + if (lang.at("comment") != "None"){ + par[#sym.arrow.r.curve #lang.comment] + } + ) + + ] + ] + } + + #line(length: 100%, stroke: blue + 0.5pt) + + = Hobbies +#{ + par( + justify: true, + leading: eval(settings.paragraph.leading) + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.general + ) + + #config.hobbies.tech.join(" • ") + ] + + par( + justify: true, + leading: eval(settings.paragraph.leading) + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.general + ) + + #config.hobbies.other.join(" • ") + ] + + } + ]} #let mainSection = {[ @@ -169,37 +234,6 @@ ] } - - - = Notable Personnal Projects - #{ - for project in config.projects.personnal [ - #par( - justify: true, - leading: eval(settings.paragraph.leading) - )[ - #par[ - #set text( - size: eval(settings.font.size.heading), - font: settings.font.general - ) - #project.year -- - #if (project.at("from", default: "") != "" and project.at("to", default: "") != "") { - [ #project.from – #project.to] - } - #link(project.main.link)[#project.main.name] - ] - #par[ - #set text( - size: eval(settings.font.size.description), - font: settings.font.general - ) - #project.description - ] - ] - ] - } - = School related Projects #{ @@ -224,46 +258,77 @@ size: eval(settings.font.size.description), font: settings.font.general ) - #project.description + #{ + for point in project.description [ + #h(0.5cm) • #point \ + ] + } + ] + #par( + justify: true, + leading: eval(settings.paragraph.leading), + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.minor_highlight + ) + #{ + let tag_line = project.tags.join(" • ") + tag_line + } ] ] ] } - = Hobies + = Notable Personnal Projects #{ - grid( - columns: (1fr, 1fr), - gutter: 50pt, - for hob in config.hobbies.tech [ - #par( - justify: true, - leading: eval(settings.paragraph.leading) - )[ - + for project in config.projects.personnal [ + #par( + justify: true, + leading: eval(settings.paragraph.leading) + )[ + #par[ #set text( size: eval(settings.font.size.heading), font: settings.font.general ) - • #hob + #project.year -- + #if (project.at("from", default: "") != "" and project.at("to", default: "") != "") { + [ #project.from – #project.to] + } + #link(project.main.link)[#project.main.name] ] - ], -for hob in config.hobbies.other [ - #par( - justify: true, - leading: eval(settings.paragraph.leading) - )[ - + #par[ #set text( - size: eval(settings.font.size.heading), + size: eval(settings.font.size.description), font: settings.font.general ) - • #hob + #{ + for point in project.description [ + #h(0.5cm) • #point \ + ] + } ] - ]) - - + #par( + justify: true, + leading: eval(settings.paragraph.leading), + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.minor_highlight + ) + #{ + let tag_line = project.tags.join(" • ") + tag_line + } + ] + ] + ] } + + + ]} diff --git a/main_fr.typ b/main_fr.typ index 21ca16f..cb51082 100644 --- a/main_fr.typ +++ b/main_fr.typ @@ -22,15 +22,15 @@ ) - Email: #link("mailto:" + config.contacts.email)\ + Couriel : #link("mailto:" + config.contacts.email)\ #if (settings.public) { - [Phone: #link("tel:" + personnal.contacts.phone)\ ] + [Cellulaire : #link("tel:" + personnal.contacts.phone)\ ] } #if (config.contacts.at("linkedin", default:false)) { - [LinkedIn: #link(config.contacts.linkedin)[mikhail-liamets]\ ] + [LinkedIn : #link(config.contacts.linkedin)[mikhail-liamets]\ ] } - GitHub: #link(config.contacts.github)[thebigblase] \ - Website: #link(config.contacts.website)[bigblase.xyz] \ + GitHub : #link(config.contacts.github)[thebigblase] \ + Website : #link(config.contacts.website)[bigblase.xyz] \ #if (settings.public) { @@ -40,14 +40,17 @@ #line(length: 100%, stroke: blue + 0.5pt) ] - = Pour faire simple + = Simplement : - #par[ + #par(justify: true)[ #set text( - eval(settings.font.size.education_description), - font: settings.font.minor_highlight, + eval(settings.font.size.education_description), + font: settings.font.minor_highlight, + hyphenate: false ) + Je suis une développeuse ayant des capacités pertinantes en tant que + *DevOps*, et en conception de systèmes répartis. ] @@ -69,9 +72,44 @@ ] } + = Langues + + #{ + for lang in config.languages [ + #par(leading: 0pt)[ + + #set text( + size: eval(settings.font.size.description), + font: settings.font.minor_highlight, + ) + #grid( + columns: (1fr, 2fr), + column-gutter: 3em, + [*#lang.name*], + { + let count = 0 + while count < 5 { + if (count < lang.proficiency) { + text(blue, size: 15pt)[#sym.circle.filled] + } + else { + text(blue, size: 15pt)[#sym.circle] + } + count = count + 1 + } + }, + if (lang.at("comment") != "None"){ + par[#sym.arrow.r.curve #lang.comment] + } + ) + + ] + ] + } + #line(length: 100%, stroke: blue + 0.5pt) - = Hobbies + = Loisirs #{ par( justify: true, @@ -128,7 +166,7 @@ ] - = Etudes + = Études #{ for place in config.education [ @@ -145,7 +183,7 @@ eval(settings.font.size.education_description), font: settings.font.minor_highlight, ) - #place.degree #place.major \ + *#place.degree #place.major* \ #if (place.at("track") != "None"){ [#place.track] } @@ -165,7 +203,7 @@ #job.from – #job.to \ *#job.position* - #link(job.company.link)[\@ #job.company.name] + #link(job.company.link)[#job.company.name] ] #par( justify: false, @@ -197,6 +235,52 @@ ] } + = Projets Scolaires + + #{ + for project in config.projects.school [ + #par( + justify: true, + leading: eval(settings.paragraph.leading) + )[ + #par[ + #set text( + size: eval(settings.font.size.heading), + font: settings.font.general + ) + #project.year -- + #if (project.at("from", default: "") != "" and project.at("to", default: "") != "") { + [ #project.from – #project.to] + } + #link(project.main.link)[#project.main.name] + ] + #par[ + #set text( + size: eval(settings.font.size.description), + font: settings.font.general + ) + #{ + for point in project.description [ + #h(0.5cm) • #point \ + ] + } + ] + #par( + justify: true, + leading: eval(settings.paragraph.leading), + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.minor_highlight + ) + #{ + let tag_line = project.tags.join(" • ") + tag_line + } + ] + ] + ] + } = Projets personnels remarquables @@ -222,41 +306,30 @@ size: eval(settings.font.size.description), font: settings.font.general ) - #project.description + #{ + for point in project.description [ + #h(0.5cm) • #point \ + ] + } + ] + #par( + justify: true, + leading: eval(settings.paragraph.leading), + )[ + #set text( + size: eval(settings.font.size.tags), + font: settings.font.minor_highlight + ) + #{ + let tag_line = project.tags.join(" • ") + tag_line + } ] ] ] } - = School related Projects - #{ - for project in config.projects.school [ - #par( - justify: true, - leading: eval(settings.paragraph.leading) - )[ - #par[ - #set text( - size: eval(settings.font.size.heading), - font: settings.font.general - ) - #project.year -- - #if (project.at("from", default: "") != "" and project.at("to", default: "") != "") { - [ #project.from – #project.to] - } - #link(project.main.link)[#project.main.name] - ] - #par[ - #set text( - size: eval(settings.font.size.description), - font: settings.font.general - ) - #project.description - ] - ] - ] - } ]} #{