From 7323297388864e953f33b057ea1ae80e4cf2a0fb Mon Sep 17 00:00:00 2001 From: Paul Lesur Date: Wed, 19 Oct 2022 10:38:48 +0200 Subject: [PATCH] refacto --- .latexmkrc | 1 + Makefile | 17 +- Paul_Lesur_CV.tex | 202 +----------------- Paul_Lesur_publication_list.tex | 55 ----- Paul_Lesur_publications.tex | 68 ++++++ Paul_Lesur_résumé.tex | 8 + bibliography.bib | 10 + build/.gitignore | 0 content/résumé.tex | 152 +++++++++++++ deploy.sh | 13 +- preamble.tex | 8 + LICENSE => template/LICENSE | 0 .../Lato-Hairline.ttf | Bin Lato-Light.ttf => template/Lato-Light.ttf | Bin README.md => template/README.md | 0 .../friggeri-cv-a4.cls | 0 .../texgyreheros-bold.otf | Bin .../texgyreheros-bolditalic.otf | Bin .../texgyreheros-italic.otf | Bin .../texgyreheros-regular.otf | Bin 20 files changed, 267 insertions(+), 267 deletions(-) create mode 100644 .latexmkrc delete mode 100644 Paul_Lesur_publication_list.tex create mode 100644 Paul_Lesur_publications.tex create mode 100644 Paul_Lesur_résumé.tex create mode 100644 build/.gitignore create mode 100644 content/résumé.tex create mode 100644 preamble.tex rename LICENSE => template/LICENSE (100%) rename Lato-Hairline.ttf => template/Lato-Hairline.ttf (100%) rename Lato-Light.ttf => template/Lato-Light.ttf (100%) rename README.md => template/README.md (100%) rename friggeri-cv-a4.cls => template/friggeri-cv-a4.cls (100%) rename texgyreheros-bold.otf => template/texgyreheros-bold.otf (100%) rename texgyreheros-bolditalic.otf => template/texgyreheros-bolditalic.otf (100%) rename texgyreheros-italic.otf => template/texgyreheros-italic.otf (100%) rename texgyreheros-regular.otf => template/texgyreheros-regular.otf (100%) diff --git a/.latexmkrc b/.latexmkrc new file mode 100644 index 0000000..4444a15 --- /dev/null +++ b/.latexmkrc @@ -0,0 +1 @@ +$out_dir = 'build'; diff --git a/Makefile b/Makefile index c230966..677b3e7 100644 --- a/Makefile +++ b/Makefile @@ -1,18 +1,17 @@ .DEFAULT_GOAL := default -default: cv +all: cv résumé pubs + +#default: cv résumé ## Build CV cv: Paul_Lesur_CV.pdf - -dev_cv: - latexmk -pvc -f -xelatex Paul_Lesur_CV.tex - -dev_pubs: - latexmk -pvc -f -xelatex Paul_Lesur_publication_list.tex + +## Build résumé +resume: Paul_Lesur_résumé.pdf ## Build publication list -pubs: Paul_Lesur_publication_list.pdf +pubs: Paul_Lesur_publications.pdf %.pdf: %.tex xelatex $* @@ -21,7 +20,7 @@ pubs: Paul_Lesur_publication_list.pdf ## Cleanup build files clean: - rm -rf *.log *.out *.aux *.blg *.bbl *.bcf *.run.xml *.fls *.fdb_latexmk *.pdf + rm -rf build/* ## Show this help screen help: diff --git a/Paul_Lesur_CV.tex b/Paul_Lesur_CV.tex index 7f89777..2df178e 100644 --- a/Paul_Lesur_CV.tex +++ b/Paul_Lesur_CV.tex @@ -1,206 +1,12 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Friggeri Resume/CV for A4 paper format -% XeLaTeX Template -% Version 1.1 -% -% A4 version author: -% Marvin Frommhold (depressiverobot.com) -% https://github.com/depressiveRobot/friggeri-cv-a4 -% -% Original author: -% Adrien Friggeri (adrien@friggeri.net) -% https://github.com/afriggeri/CV -% -% License: -% CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/) -% -% Important notes: -% This template needs to be compiled with XeLaTeX and the bibliography, if used, -% needs to be compiled with biber rather than bibtex. -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% Options -% 'print': remove colors from this template for printing -% 'nocolors' to disable colors in section headers - - -\documentclass[hidelinks]{friggeri-cv-a4} -%\input{glyphtounicode} - -\usepackage[backend=biber]{biblatex} -\addbibresource{bibliography.bib} % Specify the bibliography file to include publications - -\definecolor{darkgreen}{HTML}{036E03} -\definecolor{lightgreen}{HTML}{50D050} -\colorlet{fillheader}{white} -\colorlet{header}{darkgreen} -\colorlet{headercolor}{darkgreen} +%! Tex program = xelatex +\documentclass[hidelinks]{./template/friggeri-cv-a4} +\input{preamble.tex} \begin{document} -\header{\hspace{3.0cm}Paul\hspace{0.20cm}}{Lesur} -{Software engineer} - -% Fake text to add separator -\fcolorbox{white}{gray}{\parbox{\dimexpr\textwidth-2\fboxsep-2\fboxrule}{% - ~ -}} - -% In the aside, each new line forces a line break -\begin{aside} - \section{address} - %20 rue De la paix - Kaiserslautern - Germany - ~ - \section{phone number} - +33 (0)6 33 80 57 13 - ~ - \section{email} - \href{mailto:paul.lesur59@gmail.com}{paul.lesur59@gmail.com} - ~ - %\section{links} - %~ - \section{skills} - \textbf{C++} - \textbf{Computer vision} - \textbf{Visual odometry} - \textbf{SLAM} - \textbf{Python} - ROS - Julia - Rust - %Linux - %~ - %\section{other skills} - %Embedded systems - ~ - \section{languages} - \begin{tabular}{lr} - French & native - English & C2 - German & B1 - Spanish & B1 -\end{tabular} - %j.j.French\tnative - %j.j.English\tC2 - %j.j.German\tB1 (still learning) - %j.j.Spanish\tB1 - ~ - \section{other} - \href{http://lesurpaul.fr}{lesurpaul.fr} - \href{https://github.com/lesurp}{github.com/lesurp} - %Full driver license -\end{aside} - -\section{Experience} -\begin{entrylist} - \entry - {2022-02 (current)} - {PhD student in control} - {Kaiserslautern, Germany} - {\emph{TU Kaiserslautern} \\ - Research on planning and control for multi-agent systems, applied to - autonomous driving (MIP using {\bf Gurobi}, MPC / NLP using {\bf casADi})\\} - - \entry - {2020-10 2021-12} - {C++ Software Engineer} - {Croix, France} - {\emph{Exotec} \\ - Development of the software controlling in real-time up to \textbf{200 - mobile robots} for an automated storage solution (\textbf{path-planning}, - \textbf{error handling}). Lead engineer on the largest - system deployed to date. - \\} - \entry - {2018-01 2020-10} - {Computer Vision Research Engineer} - {Kaiserslautern, Germany} - {\emph{DFKI} \\ - Research on visual SLAM (ORBSLAM2, VINS), tracking, image segmentation, object - recognition, using: {\bf CNNs}, {\bf EKFs}, - {\bf OpenCV}, {\bf - Eigen}, {\bf g2o}, {\bf ROS}, {\bf pytorch}. - \\} - \entry - {2017-09 2017-12} - {Software Engineering Consultant} - {Toulouse, France} - {\emph{Alten Sud-Ouest} \\ - C++ consultant, worked with Orange on their embedded C++/Qt software. - \\} - \entry - {2016-05 2016-07} - {C++ Software Engineer} - {Villeneuve D'Ascq, France} - {\emph{INRIA} \\ - Pose estimation of an indoor blimp (using\ \textbf{OptiTrack} and onboard \textbf{IMU/camera}), - with remote control, in C++ ({\bf OpenCV}), {\bf Python}, and {\bf Matlab/Simulink}. - \\} -\end{entrylist} - -\section{Education} -\begin{entrylist} - \entry - {2016-17} - {Academic Exchange, Computer Science} - {Huntingdon, PA, USA} - {\emph{Juniata College} \\ - Software engineering and IT security, project management - \\} - \entry - {2012-17} - {Master in Computer and Electronics Engineering (M.E)} - {Lille, France} - {\emph{ISEN Lille} \\ - Mathematics, physics, engineering, image/signal processing, - computing, electronics (mainly digital, with - development on microcontrollers) - \\} -% \entry -% {2017} -% {Baccalauréat S} -% {Lille, France} -% {\emph{Lycée Sainte Claire}\\ -% With highest honour (mention très bien). -% \\} -\end{entrylist} - -%\section{Other activities} -%\begin{entrylist} -% \entry -% {2015-16} -% {Project Pluggi} -% {Lille, France} -% {\emph{ISEN Lille} \\\ -% Development of a robot in a team. Work on embedded Raspberry Pi -% (C/Python/Bash), CAN communication bus, and on the application of -% control (Android). -% \\} -% \entry -% {2014-15} -% {Vice president of the Crysteo ISEN Robotics Club} -% {Lille, France} -% {\emph{ISEN Lille} \\ -% Management of club members' project, providing technical advice and supervision, -% providing hardware and other resources. Represented the club at exhibitions -% and events. Participated at the Morpheus Cup 2015 (Luxembourg), and acquired -% sponsorship by Sopra Steria through the "Concours international Meilleur -% Objet Connecté-MOC" (2014). -% \\} -%\end{entrylist} +\input{./content/résumé.tex} \section{Publications / articles} \printbibsectionnoheader{inproceedings}{Peer-reviewed conferences/proceedings} \printbibsectionnoheader{article}{article in peer-reviewed journal} % Print all articles from the bibliography - -%\printbibsection{book}{books} % Print all books from the bibliography - -%\printbibsectionnoheader{article}{Articles} \end{document} - -%\printbibsection{misc}{other} % Print all miscellaneous entries from the bibliography - -%\printbibsection{report}{research reports} % Print all research reports from the bibliography diff --git a/Paul_Lesur_publication_list.tex b/Paul_Lesur_publication_list.tex deleted file mode 100644 index a61d281..0000000 --- a/Paul_Lesur_publication_list.tex +++ /dev/null @@ -1,55 +0,0 @@ -\documentclass{article} - -%\usepackage[backend=biber]{biblatex} -\usepackage[backend=biber, sorting=nymdt]{biblatex} %backend=biber is 'better' -\addbibresource{bibliography.bib} % Specify the bibliography file to include publications - - -\DeclareSortingTemplate{nymdt}{ - \sort{ - \field{presort} - } - \sort[direction=descending]{ - \field{sortyear} - \field{year} - \literal{9999} - } - \sort[direction=descending]{ - \field[padside=left,padwidth=2,padchar=0]{month} - \literal{99} - } - \sort[direction=descending]{ - \field[padside=left,padwidth=2,padchar=0]{day} - \literal{99} - } - \sort{ - \field{sorttitle} - } - \sort[direction=descending]{ - \field[padside=left,padwidth=4,padchar=0]{volume} - \literal{9999} - } -} - -\defbibfilter{papers}{ - type=article or - type=inproceedings -} - -\begin{document} -%\printbibsectionnoheader{inproceedings}{} -%\printbibsectionnoheader{article}{} % Print all articles from the bibliography -\DeclareFieldFormat{labelnumberwidth}{\mkbibbold{#1\adddot}~} -\setlength{\biblabelsep}{0pt} -\section*{Paul Lesur} -\subsection*{Publications} -%\bibliographystyle{unsrt} - \begin{refsection} - \nocite{*} - %\printbibliography[type = inproceedings le, heading = none, title = {Peer-reviewed conferences/proceedings}] - %\printbibliography[type = inproceedings, heading = none, title = {Peer-reviewed conferences/proceedings}] - \printbibliography[filter = papers, heading = none] - %\printbibliography[type = {article}, heading = none, title = {article in peer-reviewed journal}] - \end{refsection} -\printbibliography -\end{document} diff --git a/Paul_Lesur_publications.tex b/Paul_Lesur_publications.tex new file mode 100644 index 0000000..ca36036 --- /dev/null +++ b/Paul_Lesur_publications.tex @@ -0,0 +1,68 @@ +%! Tex program = xelatex + +%\documentclass{article} +% +%%\usepackage[backend=biber]{biblatex} +%\usepackage[backend=biber, sorting=nymdt]{biblatex} %backend=biber is 'better' +%\addbibresource{bibliography.bib} % Specify the bibliography file to include publications +% +% +%\DeclareSortingTemplate{nymdt}{ +% \sort{ +% \field{presort} +% } +% \sort[direction=descending]{ +% \field{sortyear} +% \field{year} +% \literal{9999} +% } +% \sort[direction=descending]{ +% \field[padside=left,padwidth=2,padchar=0]{month} +% \literal{99} +% } +% \sort[direction=descending]{ +% \field[padside=left,padwidth=2,padchar=0]{day} +% \literal{99} +% } +% \sort{ +% \field{sorttitle} +% } +% \sort[direction=descending]{ +% \field[padside=left,padwidth=4,padchar=0]{volume} +% \literal{9999} +% } +%} +% +%\defbibfilter{papers}{ +% type=article or +% type=inproceedings +%} +% +%\begin{document} +%%\printbibsectionnoheader{inproceedings}{} +%%\printbibsectionnoheader{article}{} % Print all articles from the bibliography +%\DeclareFieldFormat{labelnumberwidth}{\mkbibbold{#1\adddot}~} +%\setlength{\biblabelsep}{0pt} +%\section*{Paul Lesur} +%\subsection*{Publications} +%%\bibliographystyle{unsrt} +% \begin{refsection} +% \nocite{*} +% %\printbibliography[type = inproceedings le, heading = none, title = {Peer-reviewed conferences/proceedings}] +% %\printbibliography[type = inproceedings, heading = none, title = {Peer-reviewed conferences/proceedings}] +% \printbibliography[filter = papers, heading = none] +% %\printbibliography[type = {article}, heading = none, title = {article in peer-reviewed journal}] +% \end{refsection} +%\printbibliography +%\end{document} + + +\documentclass[hidelinks]{./template/friggeri-cv-a4} +\input{preamble.tex} + +\begin{document} +%\section{Publications / articles} + +\printbibsectionnoheader{inproceedings}{Peer-reviewed conferences/proceedings} +\printbibsectionnoheader{article}{article in peer-reviewed journal} % Print all articles from the bibliography +\end{document} diff --git a/Paul_Lesur_résumé.tex b/Paul_Lesur_résumé.tex new file mode 100644 index 0000000..422c03f --- /dev/null +++ b/Paul_Lesur_résumé.tex @@ -0,0 +1,8 @@ +%! Tex program = xelatex +\documentclass[hidelinks]{friggeri-cv-a4} +\input{preamble.tex} + +\begin{document} +\input{./content/résumé.tex} +\end{document} + diff --git a/bibliography.bib b/bibliography.bib index 2224d4f..2128132 100644 --- a/bibliography.bib +++ b/bibliography.bib @@ -1,3 +1,13 @@ +@inproceedings{a_sgmapf, + author = {Paul Lesur, Naim Bajcinca}, + title = {Online Multi-Agent Path Planning in Runaway Scenarios}, + booktitle = {Submitted}, + year = {2022}, + month={9}, + %organization = {IAPR}, + %publisher = {IAPR} +} + @inproceedings{pub10271, author = {Rambach, Jason Raphael and Lesur, Paul and Pagani, Alain and Stricker, Didier}, title = {SlamCraft: Dense Planar RGB Monocular SLAM}, diff --git a/build/.gitignore b/build/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/content/résumé.tex b/content/résumé.tex new file mode 100644 index 0000000..b45489d --- /dev/null +++ b/content/résumé.tex @@ -0,0 +1,152 @@ +\header{\hspace{3.0cm}Paul\hspace{0.20cm}}{Lesur} +{Software engineer} + +% Fake text to add separator +\fcolorbox{white}{gray}{\parbox{\dimexpr\textwidth-2\fboxsep-2\fboxrule}{% + ~ +}} + +% In the aside, each new line forces a line break +\begin{aside} + \section{address} + %20 rue De la paix + Kaiserslautern + Germany + ~ + \section{phone number} + +33 (0)6 33 80 57 13 + ~ + \section{email} + \href{mailto:paul.lesur59@gmail.com}{paul.lesur59@gmail.com} + ~ + %\section{links} + %~ + \section{skills} + \textbf{C++} + \textbf{Computer vision} + \textbf{Visual odometry} + \textbf{SLAM} + \textbf{Python} + ROS + Julia + Rust + %Linux + %~ + %\section{other skills} + %Embedded systems + ~ + \section{languages} + \begin{tabular}{lr} + French & native + English & C2 + German & B1 + Spanish & B1 +\end{tabular} + %j.j.French\tnative + %j.j.English\tC2 + %j.j.German\tB1 (still learning) + %j.j.Spanish\tB1 + ~ + \section{other} + \href{http://lesurpaul.fr}{lesurpaul.fr} + \href{https://github.com/lesurp}{github.com/lesurp} + %Full driver license +\end{aside} + +\section{Experience} +\begin{entrylist} + \entry + {2022-02 (current)} + {PhD student in control} + {Kaiserslautern, Germany} + {\emph{TU Kaiserslautern} \\ + Research on planning and control for multi-agent systems, applied to + autonomous driving (MIP using {\bf Gurobi}, MPC / NLP using {\bf casADi})\\} + + \entry + {2020-10 2021-12} + {C++ Software Engineer} + {Croix, France} + {\emph{Exotec} \\ + Development of the software controlling in real-time up to \textbf{200 + mobile robots} for an automated storage solution (\textbf{path-planning}, + \textbf{error handling}). Lead engineer on the largest + system deployed to date. + \\} + \entry + {2018-01 2020-10} + {Computer Vision Research Engineer} + {Kaiserslautern, Germany} + {\emph{DFKI} \\ + Research on visual SLAM (ORBSLAM2, VINS), tracking, image segmentation, object + recognition, using: {\bf CNNs}, {\bf EKFs}, + {\bf OpenCV}, {\bf + Eigen}, {\bf g2o}, {\bf ROS}, {\bf pytorch}. + \\} + \entry + {2017-09 2017-12} + {Software Engineering Consultant} + {Toulouse, France} + {\emph{Alten Sud-Ouest} \\ + C++ consultant, worked with Orange on their embedded C++/Qt software. + \\} + \entry + {2016-05 2016-07} + {C++ Software Engineer} + {Villeneuve D'Ascq, France} + {\emph{INRIA} \\ + Pose estimation of an indoor blimp (using\ \textbf{OptiTrack} and onboard \textbf{IMU/camera}), + with remote control, in C++ ({\bf OpenCV}), {\bf Python}, and {\bf Matlab/Simulink}. + \\} +\end{entrylist} + +\section{Education} +\begin{entrylist} + \entry + {2016-17} + {Academic Exchange, Computer Science} + {Huntingdon, PA, USA} + {\emph{Juniata College} \\ + Software engineering and IT security, project management + \\} + \entry + {2012-17} + {Master in Computer and Electronics Engineering (M.E)} + {Lille, France} + {\emph{ISEN Lille} \\ + Mathematics, physics, engineering, image/signal processing, + computing, electronics (mainly digital, with + development on microcontrollers) + \\} +% \entry +% {2017} +% {Baccalauréat S} +% {Lille, France} +% {\emph{Lycée Sainte Claire}\\ +% With highest honour (mention très bien). +% \\} +\end{entrylist} + +%\section{Other activities} +%\begin{entrylist} +% \entry +% {2015-16} +% {Project Pluggi} +% {Lille, France} +% {\emph{ISEN Lille} \\\ +% Development of a robot in a team. Work on embedded Raspberry Pi +% (C/Python/Bash), CAN communication bus, and on the application of +% control (Android). +% \\} +% \entry +% {2014-15} +% {Vice president of the Crysteo ISEN Robotics Club} +% {Lille, France} +% {\emph{ISEN Lille} \\ +% Management of club members' project, providing technical advice and supervision, +% providing hardware and other resources. Represented the club at exhibitions +% and events. Participated at the Morpheus Cup 2015 (Luxembourg), and acquired +% sponsorship by Sopra Steria through the "Concours international Meilleur +% Objet Connecté-MOC" (2014). +% \\} +%\end{entrylist} diff --git a/deploy.sh b/deploy.sh index 6542e98..c8cd319 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,9 +1,12 @@ #!/bin/bash -DEST_FILE="Paul_Lesur_resume_EN.pdf" - # this should define: # UNAME, HOST, PORT, DEST_DIR -source .env && \ - latexmk cv.tex -xelatex && \ - rsync --archive -hh --partial --info=stats1 --info=progress2 --modify-window=1 -e "ssh -p ${PORT}" cv.pdf ${UNAME}@${HOST}:${DEST_DIR}/${DEST_FILE} +source .env + +make all + +for pdf_file in build/*.pdf; do + [ -e "$pdf_file" ] || continue + rsync --archive -hh --partial --info=stats1 --info=progress2 --modify-window=1 -e "ssh -p ${PORT}" cv.pdf ${UNAME}@${HOST}:${DEST_DIR}/${pdf_file} +done diff --git a/preamble.tex b/preamble.tex new file mode 100644 index 0000000..a9de846 --- /dev/null +++ b/preamble.tex @@ -0,0 +1,8 @@ +\usepackage[backend=biber]{biblatex} +\addbibresource{bibliography.bib} % Specify the bibliography file to include publications + +\definecolor{darkgreen}{HTML}{036E03} +\definecolor{lightgreen}{HTML}{50D050} +\colorlet{fillheader}{white} +\colorlet{header}{darkgreen} +\colorlet{headercolor}{darkgreen} diff --git a/LICENSE b/template/LICENSE similarity index 100% rename from LICENSE rename to template/LICENSE diff --git a/Lato-Hairline.ttf b/template/Lato-Hairline.ttf similarity index 100% rename from Lato-Hairline.ttf rename to template/Lato-Hairline.ttf diff --git a/Lato-Light.ttf b/template/Lato-Light.ttf similarity index 100% rename from Lato-Light.ttf rename to template/Lato-Light.ttf diff --git a/README.md b/template/README.md similarity index 100% rename from README.md rename to template/README.md diff --git a/friggeri-cv-a4.cls b/template/friggeri-cv-a4.cls similarity index 100% rename from friggeri-cv-a4.cls rename to template/friggeri-cv-a4.cls diff --git a/texgyreheros-bold.otf b/template/texgyreheros-bold.otf similarity index 100% rename from texgyreheros-bold.otf rename to template/texgyreheros-bold.otf diff --git a/texgyreheros-bolditalic.otf b/template/texgyreheros-bolditalic.otf similarity index 100% rename from texgyreheros-bolditalic.otf rename to template/texgyreheros-bolditalic.otf diff --git a/texgyreheros-italic.otf b/template/texgyreheros-italic.otf similarity index 100% rename from texgyreheros-italic.otf rename to template/texgyreheros-italic.otf diff --git a/texgyreheros-regular.otf b/template/texgyreheros-regular.otf similarity index 100% rename from texgyreheros-regular.otf rename to template/texgyreheros-regular.otf