This commit is contained in:
Thomas Forgione 2024-04-03 12:02:18 +02:00
commit a35c3f172b
4 changed files with 247 additions and 0 deletions

2
Makefile Normal file
View File

@ -0,0 +1,2 @@
all:
mkdir -p build && typst compile --font-path assets/fonts main.typ build/main.pdf

33
bib.bib Normal file
View File

@ -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}
}

BIN
build/main.pdf Normal file

Binary file not shown.

212
main.typ Normal file
View File

@ -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],
)