354 lines
16 KiB
TeX
354 lines
16 KiB
TeX
|
|
|
|
\documentclass[9pt]{article}
|
|
\usepackage{extsizes}
|
|
\usepackage{graphicx}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage[english,french]{babel}
|
|
\usepackage{url,parskip} % other packages for formatting
|
|
\usepackage[usenames,dvipsnames]{xcolor}
|
|
\usepackage{fullpage}
|
|
\usepackage[margin=2.5cm,top=1.5cm]{geometry}
|
|
\usepackage{hyperref}
|
|
\usepackage{titlesec}
|
|
\usepackage{array}
|
|
\usepackage{enumitem}
|
|
\usepackage{longtable}
|
|
\usepackage{etoolbox}
|
|
\usepackage{tikz}
|
|
\usepackage[skins]{tcolorbox}
|
|
\usepackage{fancyhdr}
|
|
\usepackage[inkscapepath=./build/latex/inkscape-svg]{svg}
|
|
\usepackage{verbatimbox}
|
|
\usepackage{stackengine}
|
|
|
|
\newcommand\svgsize{10pt}
|
|
|
|
\definecolor{basecolor}{HTML}{000066} %BLUE
|
|
\definecolor{accentcolor}{HTML}{318440}
|
|
\definecolor{darkGrey}{HTML}{989898}
|
|
\definecolor{light}{HTML}{828282}
|
|
|
|
\colorlet{linkcolor}{basecolor}
|
|
\colorlet{symbolcolor}{linkcolor!85}
|
|
|
|
\pagestyle{fancy}
|
|
\fancyhf{}
|
|
\fancyhfoffset{0em}
|
|
\fancyfoot{}
|
|
\fancyfoot[L]{Jul 4, 2022}
|
|
\fancyfoot[C]{Matthieu Bessat - CV}
|
|
\fancyfoot[R]{\thepage}
|
|
|
|
\newcommand\link[2]{\color{linkcolor}\href{#1}{#2}\color{Black} }
|
|
|
|
% Remove head rule
|
|
\renewcommand{\headrulewidth}{0pt}
|
|
%\fancyfoot[C]{\thepage}
|
|
|
|
% Configure list
|
|
\setlist[itemize,1]{label=-, nosep, leftmargin=2em}
|
|
\setlist[itemize,2]{label=-, nosep, leftmargin=1.5em}
|
|
|
|
% Setup Array : new column type
|
|
\newcolumntype{R}[1]{>{\hfill}m{#1}}
|
|
|
|
%Italian hyphenation for the word: ''corporations''
|
|
\hyphenation{im-pre-se}
|
|
|
|
\newlength{\rightcolumnlength}
|
|
\setlength{\rightcolumnlength}{12.5cm}
|
|
|
|
\newlength{\leftcolumn}
|
|
\setlength{\leftcolumn}{3cm}
|
|
|
|
|
|
\newcommand{\cvtag}[1]{
|
|
\tikz[baseline]\node[anchor=base,draw=darkGrey!70,rounded corners=0.5ex,inner xsep=1ex,inner ysep=0.55ex,text height=1.59ex,text depth=.25ex]{\color{light}#1};\hspace{-.5em}
|
|
}
|
|
|
|
% \newcommand{\sectionTitle}[1]{
|
|
% \color{accentcolor}\textsc{\Large{#1}}
|
|
% \\
|
|
% \color{darkGrey}\rule{\textwidth}{0.4pt}
|
|
% \color{black}
|
|
% }
|
|
|
|
\titleformat{\section}{\Large\raggedright}{}{0em}{}[\titlerule]
|
|
\titlespacing{\section}{0pt}{2pt}{2pt}
|
|
|
|
% \newcommand\sectionTitle[2]{\section{\texorpdfstring{\color{accentcolor}#2\enspace \textsc{#1}}{#1}}}
|
|
\newcommand\sectionTitle[1]{\section{\texorpdfstring{\color{accentcolor}\textsc{#1}}{#1}}\vspace{5px}}
|
|
|
|
% Define the 'keywords' environment
|
|
\newenvironment{keywords}{%
|
|
\renewcommand{\arraystretch}{1.1}
|
|
|
|
\begin{tabular}{>{}r>{}p{13cm}}
|
|
}{%
|
|
\end{tabular}
|
|
}
|
|
|
|
\newcommand\keywordsentry[2]{
|
|
\textbf{#1} & #2\\
|
|
}
|
|
|
|
|
|
\def\@photo{./public/imgs/profile-512.jpg}
|
|
|
|
\newcolumntype{E}{>{\raggedright\arraybackslash}p{\rightcolumnlength}}
|
|
|
|
\newenvironment{experiences}{%
|
|
\begin{longtable}{R{\leftcolumn}|E}
|
|
}{%
|
|
\end{longtable}
|
|
}
|
|
|
|
|
|
\newcommand\emptySeparator{\multicolumn{2}{c}{}\\}
|
|
|
|
\newlength\myheight
|
|
\newlength\mydepth
|
|
\settototalheight\myheight{Xygp}
|
|
\settodepth\mydepth{Xygp}
|
|
\setlength\fboxsep{0pt}
|
|
\newcommand*\inlinegraphics[1]{%
|
|
\settototalheight\myheight{Xygp}%
|
|
\settodepth\mydepth{Xygp}%
|
|
\raisebox{-\mydepth}{\includesvg[height=\myheight]{public/imgs/#1}}%
|
|
}
|
|
|
|
|
|
\newcommand{\sociallink}[3]{\mbox{\textcolor{symbolcolor}{#1}\hspace{0.5em}\link{#2}{#3}\hspace{1em}}}
|
|
% \newcommand{\iconwithtext}[2]{\bottominset{\small#1}{\includesvg[width=10pt]{./public/imgs/#2}}{2pt}{26pt}}
|
|
\newcommand{\iconwithtext}[2]{\inlinegraphics{#1}\hspace{0.3em}#2\hspace{0.5em}}
|
|
|
|
\begin{document}
|
|
% \section{\color{accentcolor} \textsc{Hello World}}{Hello world}
|
|
\begin{minipage}{\dimexpr\linewidth-3cm}
|
|
\noindent{\huge{Matthieu \textbf{Bessat}}}
|
|
\vspace{5px}
|
|
\\
|
|
\noindent\color{accentcolor}\textbf{\large{Programmer}}\color{black}
|
|
\vspace{5px}\\
|
|
\iconwithtext{icons/map-pin.svg}{Aubevoye, France}
|
|
\\
|
|
\iconwithtext{icons/cake.svg}{19 years old}
|
|
\\
|
|
% \sociallink{\includesvg[width=10pt,height=9pt]{./public/imgs/icons/robot.svg}}{https://matthieubessat.fr}{matthieubessat.fr}
|
|
\iconwithtext{icons/at.svg}{\link{mailto:mail@matthieubessat.fr}{mail@matthieubessat.fr}}
|
|
\iconwithtext{icons/phone.svg}{\link{+33783404851}{+33 7 83 40 48 51}}
|
|
\\
|
|
\iconwithtext{icons/link.svg}{\link{https://matthieubessat.fr}{matthieubessat.fr}}
|
|
\iconwithtext{logos/github.svg}{\link{https://github.com/lefuturiste}{lefuturiste}}
|
|
\iconwithtext{logos/gitlab.svg}{\link{https://gitlab.com/lefuturiste}{lefuturiste}}
|
|
% Website, Email, Location, Age
|
|
|
|
% \includesvg[width=\svgsize]{./public/imgs/icons/robot.svg}
|
|
\end{minipage}
|
|
\begin{minipage}{3cm}
|
|
\tikz\path[fill overzoom image={\@photo}]circle[radius=0.45\linewidth];
|
|
\end{minipage}
|
|
\\
|
|
\vspace{8px}
|
|
\par{Since I'm in 8th grade, I explore different fields of IT starting with web development when I initially learned my self HTML, CSS and PHP allowing me to offer services as a freelance. Then, as I discover more I opened my self to others horizons and confirm that computing is my passion. For the management of game servers I learned how to administrate a linux machine and understand the underlying network infrastructure. Later my membership in a robotics team and my involment in robotics contest brings me an experience of system development that I completed with various personal projects. Even if my chosen field is still the web, I'm curious by nature and I'm interested in the internal of the machines and systems around me.
|
|
}
|
|
\\
|
|
|
|
% Section: Skills
|
|
\sectionTitle{Skills}
|
|
\begin{keywords}
|
|
\keywordsentry{Front-end web development}{HTML 5, CSS 3, Js, SASS, Vue.js, Nuxt.js}
|
|
\keywordsentry{Back-end web development}{PHP, Symfony, API Platform, Node.js, GraphQL, REST}
|
|
\keywordsentry{Databases}{MariaDB, MongoDB, Elastic Search, Redis}
|
|
\keywordsentry{Unix-like system administration}{Linux, SystemD, Docker}
|
|
\keywordsentry{Web-server administration}{Nginx, Caddy}
|
|
\keywordsentry{General or system development}{C, Go, Python}
|
|
\keywordsentry{Embedded system development}{Arduino, I2c}
|
|
\keywordsentry{Development tools}{Git, Neovim, VS Code, Composer, Twig, Latex, Coreutils, Bash}
|
|
\end{keywords}
|
|
\vspace{.5em}
|
|
|
|
% Section: Professionals experiences
|
|
\sectionTitle{Professional experiences}
|
|
\begin{longtable}{R{\leftcolumn}|E}
|
|
\textbf{April 2022} &
|
|
\link{https://matthieubessat.fr/en/project/tracklift.html}{%
|
|
\textbf{Tracklift}} \\*
|
|
\textbf{December 2021} & \textsc{Socobat Environnement} \\*
|
|
& \par{Business management application: management of the recovering, the processing and the revaluation of wastes from elevator's worksite.} \\
|
|
& \begin{minipage}[t]{\rightcolumnlength}
|
|
\begin{itemize}
|
|
\item{Setup of a internal application with users and roles management.}
|
|
\item{Modelisation of the precise business needs of the company in a database.}
|
|
\item{Development of rich and dynamic user interfaces to navigate in the model}
|
|
\item{Integration of asynchronous operations to create ZIP archives and generate PDF.}
|
|
\item{Realtime application for a better user experience (notify the user about asynchronous operations).}
|
|
\item{Deployment of the service on a VPS and containerization with docker.}
|
|
\end{itemize}
|
|
\end{minipage} \\*
|
|
\vspace{.5em}
|
|
& \hspace{-.2em}\footnotesize{\cvtag{Vue.js}\cvtag{Vuetify}\cvtag{Symfony}\cvtag{API Platform}\cvtag{PHP}\cvtag{MariaDB}} \\
|
|
\emptySeparator
|
|
\textbf{September 2020} &
|
|
\link{https://matthieubessat.fr/en/project/forum_asso.html}{%
|
|
\textbf{Administered association directory}} \\*
|
|
\textbf{July 2020} & \textsc{Espace Condorcet} , Gaillon, France \\*
|
|
& \par{Web application of collaborative association management with administration interface for the Espace Condorcet} \\
|
|
& \begin{minipage}[t]{\rightcolumnlength}
|
|
\begin{itemize}
|
|
\item{Provision to a public of ~60 non-profit organizations of an interface to edit rich information sheets.}
|
|
\item{Creation of a dynamic interface for administration needs of the Espace Condorcet to validate content from the associations before publishing.}
|
|
\item{Creation of a web portal targeting general public to navigate in the information sheets published.}
|
|
\item{Management of the multimedia content uploaded by the users.}
|
|
\item{Deployment of the service on a VPS.}
|
|
\end{itemize}
|
|
\end{minipage} \\*
|
|
\vspace{.5em}
|
|
& \hspace{-.2em}\footnotesize{\cvtag{Node.js}\cvtag{Type Script}\cvtag{Express.js}\cvtag{Vue.js}\cvtag{Vuetify}\cvtag{MongoDB}} \\
|
|
\emptySeparator
|
|
\end{longtable}
|
|
|
|
% Section: Side projects
|
|
\sectionTitle{Highlighted side projects}
|
|
\par{Entrepreneurship projects, volunteering projects or just for fun projects.}
|
|
\begin{longtable}{l}
|
|
\begin{minipage}[t]{\dimexpr(\linewidth) - 1.5em}
|
|
|
|
\textbf{\textsc{Langatator}}%
|
|
\hfill \textsc{2022}\smallskip\\
|
|
\iconwithtext{logos/gitlab.svg}{\link{https://gitlab.com/lefuturiste/langatator}{gitlab.com/lefuturiste/langatator}}
|
|
\vspace{.4em}
|
|
\\
|
|
Programming of an imperative interpreted langage in C, trying to enforce a grammar with a lexer, a parser and an evaluator.\vspace{.4em}\\
|
|
\footnotesize{\cvtag{C}}\\
|
|
\end{minipage}
|
|
|
|
\vspace{.5em}
|
|
\\*
|
|
\begin{minipage}[t]{\dimexpr(\linewidth) - 1.5em}
|
|
|
|
\textbf{\textsc{French robotics cup}}%
|
|
\hfill \textsc{2020}\smallskip\\
|
|
\iconwithtext{logos/github.svg}{\link{https://github.com/werobot-france/eurobot2020-main}{github.com/werobot-france/eurobot2020-main}}
|
|
\vspace{.4em}
|
|
\\
|
|
Design of an holonomic autonomus robot to participate in the 2020 edition of the cup, I worked on the electronic and on-board software.\vspace{.4em}\\
|
|
\footnotesize{\cvtag{Python}\cvtag{C}\cvtag{Arduino}}\\
|
|
\end{minipage}
|
|
|
|
\vspace{.5em}
|
|
\\*
|
|
\begin{minipage}[t]{\dimexpr(\linewidth) - 1.5em}
|
|
|
|
\textbf{\textsc{Jobatator}}%
|
|
\hfill \textsc{2020}\smallskip\\
|
|
\iconwithtext{logos/github.svg}{\link{https://github.com/jobatator}{github.com/jobatator}}
|
|
\vspace{.4em}
|
|
\\
|
|
A simplified alternative to RabbitMQ to dispatch jobs to workers (in order to for example send an email).\vspace{.4em}\\
|
|
\footnotesize{\cvtag{Go}}\\
|
|
\end{minipage}
|
|
|
|
\vspace{.5em}
|
|
\\*
|
|
\begin{minipage}[t]{\dimexpr(\linewidth) - 1.5em}
|
|
|
|
\textbf{\textsc{WeRobot.fr}}%
|
|
\hfill \textsc{2018}\smallskip\\
|
|
\iconwithtext{icons/link.svg}{\link{https://werobot.fr}{werobot.fr}}
|
|
\vspace{.4em}
|
|
\\
|
|
A presentation website along with a blog for the robotic club We Robot.\vspace{.4em}\\
|
|
\footnotesize{\cvtag{Nuxt.js}\cvtag{Vue.js}\cvtag{PHP}\cvtag{Slim Framework}\cvtag{MariaDB}}\\
|
|
\end{minipage}
|
|
|
|
\vspace{.5em}
|
|
\\*
|
|
\begin{minipage}[t]{\dimexpr(\linewidth) - 1.5em}
|
|
|
|
\textbf{\textsc{RetroBox}}%
|
|
\hfill \textsc{2018}\smallskip\\
|
|
\iconwithtext{icons/link.svg}{\link{https://retrobox.tech}{retrobox.tech}}
|
|
\vspace{.4em}
|
|
\\
|
|
E-commerce website from scratch to sell the retrobox console and allow the customer to manage it remotely.\vspace{.4em}\\
|
|
\footnotesize{\cvtag{Nuxt.js}\cvtag{Vue.js}\cvtag{PHP}\cvtag{Slim Framework}\cvtag{MariaDB}\cvtag{Socket-io}\cvtag{Stripe}\cvtag{Paypal}\cvtag{Electron}}\\
|
|
\end{minipage}
|
|
\end{longtable}
|
|
|
|
% Section: Volunteering experiences
|
|
\sectionTitle{Volunteering experiences}
|
|
\begin{longtable}{R{\leftcolumn}|E}
|
|
\textbf{July 2021} & \textbf{French robotic cup} \\*
|
|
& \textsc{Planéte Sciences} \\
|
|
& \par{In 2021 and in 2022 I've voluntered to help the organization of the event by the Planète Sciences organization. I've setup the network infrastructure and operated the scoring software.} \\
|
|
\emptySeparator
|
|
\textbf{August 2018} & \textbf{Imaginarium Dream show} \\*
|
|
& \textsc{SGDF Louviers Val-de-Reuil} \\
|
|
& \par{Engaged with a Scouting and Guiding local group, we've created the show "Imaginarium Dream" to play it during the summer in retirement homes or vacation centers. My role is to manage sound and light of the show.} \\
|
|
\emptySeparator
|
|
\textbf{July 2017} & \textbf{Forest protection} \\*
|
|
& \textsc{SGDF Louviers Val-de-Reuil} \\
|
|
& \par{With my Scouting group in the "Nature and environnment" program, I've participated in the monitoring of the Martigues sector against wild fire during 2 weeks in July 2017.} \\
|
|
\end{longtable}
|
|
|
|
|
|
\vspace{1em}
|
|
\pagebreak
|
|
|
|
% Section: Education
|
|
\sectionTitle{Education}
|
|
\begin{longtable}{R{\leftcolumn}|E}
|
|
\textbf{July 2022} & \textbf{Classe préparatoire aux grandes écoles} \\*
|
|
\textbf{September 2020} & \textsc{Lycée Saint-Exupéry}, Mantes-la-Jolie, France \\*
|
|
% & \begin{minipage}[t]{\rightcolumnlength}
|
|
% \begin{itemize}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \end{itemize}
|
|
% \end{minipage} \\
|
|
& \\*
|
|
\emptySeparator
|
|
\textbf{July 2020} & \textbf{Lycée} \\*
|
|
\textbf{September 2017} & \textsc{Lycée André Malraux}, Gaillon, France \\*
|
|
% & \begin{minipage}[t]{\rightcolumnlength}
|
|
% \begin{itemize}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \end{itemize}
|
|
% \end{minipage} \\
|
|
& Got the degree bac scientifique with title bien. \\*
|
|
\emptySeparator
|
|
\textbf{July 2017} & \textbf{Collège} \\*
|
|
\textbf{September 2013} & \textsc{Collège Simone Signoret}, Aubevoye, France \\*
|
|
% & \begin{minipage}[t]{\rightcolumnlength}
|
|
% \begin{itemize}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \item{hello}
|
|
% \end{itemize}
|
|
% \end{minipage} \\
|
|
& Got the degree brevet des collège with title très bien. \\*
|
|
\end{longtable}
|
|
\vspace{.5em}
|
|
|
|
\sectionTitle{Interests}
|
|
\begin{itemize}
|
|
\item{\iconwithtext{icons/opensource.svg}{Open Source}}
|
|
\item{\iconwithtext{icons/copyleft.svg}{Free Sofware}}
|
|
\item{\iconwithtext{icons/robot.svg}{Robots}}
|
|
\item{\iconwithtext{icons/database.svg}{Open Data}}
|
|
\item{\iconwithtext{icons/bolt.svg}{Electronic}}
|
|
\end{itemize}
|
|
\vspace{1.1em}
|
|
% Section: Langues
|
|
\sectionTitle{Languages}
|
|
\begin{keywords}
|
|
\keywordsentry{French}{Native}
|
|
\keywordsentry{English}{Fluent}
|
|
\end{keywords}
|
|
|
|
\end{document}
|