Init
This commit is contained in:
commit
a35c3f172b
|
@ -0,0 +1,2 @@
|
||||||
|
all:
|
||||||
|
mkdir -p build && typst compile --font-path assets/fonts main.typ build/main.pdf
|
|
@ -0,0 +1,33 @@
|
||||||
|
@inproceedings{dash3d,
|
||||||
|
title={DASH for 3D networked virtual environment},
|
||||||
|
author={Forgione, Thomas and Carlier, Axel and Morin, G{\'e}raldine and Ooi, Wei Tsang and Charvillat, Vincent and Yadav, Praveen Kumar},
|
||||||
|
booktitle={Proceedings of the 26th ACM international conference on Multimedia},
|
||||||
|
pages={1910--1918},
|
||||||
|
year={2018}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@inproceedings{dash3dclient,
|
||||||
|
title={An implementation of a dash client for browsing networked virtual environment},
|
||||||
|
author={Forgione, Thomas and Carlier, Axel and Morin, G{\'e}raldine and Ooi, Wei Tsang and Charvillat, Vincent and Yadav, Praveen Kumar},
|
||||||
|
booktitle={Proceedings of the 26th ACM international conference on Multimedia},
|
||||||
|
pages={1263--1264},
|
||||||
|
year={2018}
|
||||||
|
}
|
||||||
|
|
||||||
|
@inproceedings{bookmarkimpact,
|
||||||
|
title={Impact of 3D bookmarks on navigation and streaming in a networked virtual environment},
|
||||||
|
author={Forgione, Thomas and Carlier, Axel and Morin, G{\'e}raldine and Ooi, Wei Tsang and Charvillat, Vincent},
|
||||||
|
booktitle={Proceedings of the 7th International Conference on Multimedia Systems},
|
||||||
|
pages={1--10},
|
||||||
|
year={2016}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@inproceedings{dash3dmobile,
|
||||||
|
title={Using 3d bookmarks for desktop and mobile dash-3d clients},
|
||||||
|
author={Forgione, Thomas and Carlier, Axel and Morin, G{\'e}raldine and Ooi, Wei Tsang and Charvillat, Vincent},
|
||||||
|
booktitle={Proceedings of the 27th ACM International Conference on Multimedia},
|
||||||
|
pages={2221--2222},
|
||||||
|
year={2019}
|
||||||
|
}
|
Binary file not shown.
|
@ -0,0 +1,212 @@
|
||||||
|
#set page(
|
||||||
|
paper: "a4",
|
||||||
|
footer: grid(
|
||||||
|
columns: (1fr, 1fr),
|
||||||
|
align: (left, right),
|
||||||
|
[_Thomas FORGIONE, #link("mailto:thomas@forgione.fr")[thomas\@forgione.fr]_],
|
||||||
|
[_page #context[#here().page()] / 2_]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
#show heading.where(level: 1): name => {
|
||||||
|
rect(
|
||||||
|
fill: gray.darken(30%),
|
||||||
|
width: 100%,
|
||||||
|
align(center, {
|
||||||
|
set text(fill: white)
|
||||||
|
upper(name)
|
||||||
|
})
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
#show bibliography: none
|
||||||
|
#bibliography("bib.bib")
|
||||||
|
|
||||||
|
|
||||||
|
#let birthdate = datetime(
|
||||||
|
year: 1992,
|
||||||
|
month: 10,
|
||||||
|
day: 12,
|
||||||
|
)
|
||||||
|
|
||||||
|
#let today = datetime.today()
|
||||||
|
#let age = today - birthdate
|
||||||
|
#let age_years = calc.floor(age.days() / 365.25)
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
columns: (1fr, 1fr),
|
||||||
|
[
|
||||||
|
*Thomas FORGIONE* \
|
||||||
|
*9 boulevard de la gare* \
|
||||||
|
*31500 Toulouse* \
|
||||||
|
06 71 22 05 84 \
|
||||||
|
#link("mailto:thomas@forgione.fr")[thomas\@forgione.fr]
|
||||||
|
],
|
||||||
|
align(right,
|
||||||
|
[
|
||||||
|
Né le 12 octobre 1992 (#age_years ans) \
|
||||||
|
Nationalité française
|
||||||
|
]
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
|
#v(0.6cm)
|
||||||
|
|
||||||
|
#align(center,
|
||||||
|
rect(
|
||||||
|
stroke: black,
|
||||||
|
width: 100%,
|
||||||
|
inset: 1em,
|
||||||
|
{
|
||||||
|
set text(size: 1.5em)
|
||||||
|
[
|
||||||
|
*Ingénieur en informatique et mathématiques appliquées* \
|
||||||
|
*Docteur en informatique et télécommunication*
|
||||||
|
]
|
||||||
|
}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
#v(0.6cm)
|
||||||
|
|
||||||
|
= Formation
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
gutter: 1em,
|
||||||
|
columns: (auto, 1fr),
|
||||||
|
[2019],
|
||||||
|
[
|
||||||
|
*Doctorat de l'Institut National Polytechnique de Toulouse*\
|
||||||
|
Transmission adaptative de modèles 3D massifs \
|
||||||
|
École doctorale MITT, Informatique et Télécommunication
|
||||||
|
],
|
||||||
|
|
||||||
|
[2015],
|
||||||
|
[
|
||||||
|
*Diplôme d'ingénieur ENSEEIHT*, Toulouse \
|
||||||
|
Informatique et mathématiques appliquées, spécialité multimédia
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
= Expérience professionnelle
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
gutter: 1em,
|
||||||
|
columns: (auto, 1fr),
|
||||||
|
|
||||||
|
[2022 -- ],
|
||||||
|
[
|
||||||
|
*CTO Polymny Studio, Toulouse*
|
||||||
|
- *Développement de #link("https://ergol-rs.github.io")[Ergol], ORM asynchrone en Rust pour Postgresql*
|
||||||
|
- *Adaptation Polymny Studio pour Kubernetes*
|
||||||
|
- Séparation entre partie web et partie applicative de Polymny Studio
|
||||||
|
- Création des images Docker associées
|
||||||
|
- Communication via RabbitMQ
|
||||||
|
- Support pour stockage block storage NFS ou via bucket S3
|
||||||
|
- Authentification locale ou via OpenID possible
|
||||||
|
- *Déploiement Polymny Studio double instance*
|
||||||
|
- instance gratuite hébergée chez Tetaneutral, FAI associatif
|
||||||
|
- instance payante hébergée sur cluster Kubernetes chez OVH
|
||||||
|
- *Développement de PAF : Polymny -- Aspie-Friendly*
|
||||||
|
- Lecteur vidéo pédagogique customisable
|
||||||
|
- Choix de l'orateur, avatar virtuel, émotion de l'avatar, scène de fond
|
||||||
|
],
|
||||||
|
|
||||||
|
[2019 -- 2022],
|
||||||
|
[
|
||||||
|
*Post-doc R&D Institut National Polytechnique de Toulouse*
|
||||||
|
- Lancement de Polymny Studio, outil de création de vidéos pédagogiques sur le web
|
||||||
|
- Back-end en Rust, front-end en Elm, production vidéo via FFmpeg
|
||||||
|
- Déploiement d'une instance Polymny Studio chez Tetaneutral, FAI associatif
|
||||||
|
- Co-création et présidence de l'Association Polymny Studio
|
||||||
|
],
|
||||||
|
|
||||||
|
[2016 -- 2019],
|
||||||
|
[
|
||||||
|
*Doctorat Institut National Polytechnique de Toulouse*
|
||||||
|
- Mise en place d'une architecture de streaming 3D via serveur statique)
|
||||||
|
- Préparation du contenu 3D ($k$-d tree, encodage multi-résolution des textures))
|
||||||
|
- Détermination par le client du contenu à télécharger via des métriques d'utilité
|
||||||
|
- Développement d'une interface mobile de navigation : joystick virtuel et gyroscope )
|
||||||
|
- Optimisation de la transmission lors des clics sur marque-pages
|
||||||
|
],
|
||||||
|
|
||||||
|
[2015 -- 2016],
|
||||||
|
[
|
||||||
|
*Ingénieur R&D, Institut National Polytechnique de Toulouse*
|
||||||
|
- Mise en place d'une étude utilisateur permettant de mettre en évidence la facilitation de la navigation dans une
|
||||||
|
scène par l'introduction de marque-pages
|
||||||
|
- Mesure de l'impact des marque-pages sur la transmission (qualité de service)
|
||||||
|
- Mise en place de politiques de chargement exploitant les marque-pages
|
||||||
|
- Mesure de la performance de ces politiques
|
||||||
|
- Travaux publiés à la conférence scientifique (papier long) ACM MMSys 2016
|
||||||
|
],
|
||||||
|
|
||||||
|
[2015],
|
||||||
|
[
|
||||||
|
*Projet de fin d'études ENSEEIHT, Toulouse*
|
||||||
|
- Développement d'une interface de navigation dans une scène 3D
|
||||||
|
- Architecture de streaming 3D client / serveur
|
||||||
|
- Détermination côté serveur des faces visibles basées sur la position de la caméra
|
||||||
|
- Envoi de la partie visible de la scène en priorité
|
||||||
|
- Marque-pages 3D facilitant la navigation dans la scène
|
||||||
|
]
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
= Compétences informatiques
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
gutter: (1em),
|
||||||
|
columns: (auto, 1fr),
|
||||||
|
|
||||||
|
[*Dev*],
|
||||||
|
[Rust, Elm, JavaScript, C++, Python, Shell],
|
||||||
|
|
||||||
|
[*Ops*],
|
||||||
|
[Docker, Docker Compose, Kubernetes, Nginx, RabbitMQ, S3],
|
||||||
|
|
||||||
|
[*OS*],
|
||||||
|
[Debian, Ubuntu, ArchLinux, Rasberry Pi OS],
|
||||||
|
|
||||||
|
[*Self-hosted*],
|
||||||
|
[Rasberry Pi 5, Registry Docker privé, Gitea, NextCloud, Replay Twitch (VOD)],
|
||||||
|
)
|
||||||
|
|
||||||
|
= Publications
|
||||||
|
#cite(form: "full", <dash3dmobile>)
|
||||||
|
|
||||||
|
#cite(form: "full", <dash3dclient>)
|
||||||
|
|
||||||
|
#cite(form: "full", <dash3d>)
|
||||||
|
|
||||||
|
#cite(form: "full", <bookmarkimpact>)
|
||||||
|
|
||||||
|
= Langues
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
columns: (auto, 1fr),
|
||||||
|
gutter: 1em,
|
||||||
|
|
||||||
|
[*Français*],
|
||||||
|
[Langue maternelle],
|
||||||
|
|
||||||
|
[*Anglais*],
|
||||||
|
[Niveau C1],
|
||||||
|
)
|
||||||
|
|
||||||
|
= Divers
|
||||||
|
|
||||||
|
#grid(
|
||||||
|
columns: (auto, 1fr),
|
||||||
|
gutter: 1em,
|
||||||
|
|
||||||
|
[*Sport*],
|
||||||
|
[Jiu-jitsu brésilien, depuis 2020, ceinture bleue],
|
||||||
|
|
||||||
|
[*Moto*],
|
||||||
|
[permis A2 depuis 2016, permis A depuis 2018],
|
||||||
|
|
||||||
|
[*Musique*],
|
||||||
|
[Guitare depuis 2010, basse depuis 2018],
|
||||||
|
)
|
Loading…
Reference in New Issue