diff --git a/Makefile b/Makefile index ae1a12a45..571d6c7ec 100644 --- a/Makefile +++ b/Makefile @@ -1,22 +1,12 @@ .PHONY: examples CC = xelatex -EXAMPLES_DIR = examples -RESUME_DIR = examples/resume -CV_DIR = examples/cv -RESUME_SRCS = $(shell find $(RESUME_DIR) -name '*.tex') +CV_DIR = ./cv +OUTPUT_DIR = ./output CV_SRCS = $(shell find $(CV_DIR) -name '*.tex') -examples: $(foreach x, coverletter cv resume, $x.pdf) - -resume.pdf: $(EXAMPLES_DIR)/resume.tex $(RESUME_SRCS) - $(CC) -output-directory=$(EXAMPLES_DIR) $< - -cv.pdf: $(EXAMPLES_DIR)/cv.tex $(CV_SRCS) - $(CC) -output-directory=$(EXAMPLES_DIR) $< - -coverletter.pdf: $(EXAMPLES_DIR)/coverletter.tex - $(CC) -output-directory=$(EXAMPLES_DIR) $< +cv.pdf: ./cv.tex $(CV_SRCS) + $(CC) -output-directory=$(OUTPUT_DIR) $< clean: - rm -rf $(EXAMPLES_DIR)/*.pdf + rm -rf $(OUTPUT_DIR)/*.pdf diff --git a/cv.tex b/cv.tex new file mode 100644 index 000000000..f37513eb1 --- /dev/null +++ b/cv.tex @@ -0,0 +1,90 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Awesome Resume/CV +% XeLaTeX Template +% Version 1.3 (30/3/2020) +% +% This template has been downloaded from: +% http://www.LaTeXTemplates.com +% +% Original author: +% Claud D. Park (posquit0.bj@gmail.com) with modifications by +% Vel (vel@latextemplates.com) +% +% License: +% CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/) +% +% Important note: +% This template must be compiled with XeLaTeX, the below lines will ensure this +%!TEX TS-program = xelatex +%!TEX encoding = UTF-8 Unicode +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%---------------------------------------------------------------------------------------- +% PACKAGES AND OTHER DOCUMENT CONFIGURATIONS +%---------------------------------------------------------------------------------------- + +\documentclass[11pt, a4paper]{awesome-cv} % A4 paper size by default, use 'letterpaper' for US letter + +\geometry{left=2cm, top=1.5cm, right=2cm, bottom=2cm, footskip=.5cm} % Configure page margins with geometry + +\fontdir[fonts/] % Specify the location of the included fonts + +% Color for highlights +\colorlet{awesome}{awesome-darknight} % Default colors include: awesome-emerald, awesome-skyblue, awesome-red, awesome-pink, awesome-orange, awesome-nephritis, awesome-concrete, awesome-darknight +%\definecolor{awesome}{HTML}{CA63A8} % Uncomment if you would like to specify your own color + +% Colors for text - uncomment and modify +%\definecolor{darktext}{HTML}{414141} +%\definecolor{text}{HTML}{414141} +%\definecolor{graytext}{HTML}{414141} +%\definecolor{lighttext}{HTML}{414141} + +\renewcommand{\acvHeaderSocialSep}{\quad\textbar\quad} % If you would like to change the social information separator from a pipe (|) to something else + +%---------------------------------------------------------------------------------------- +% PERSONAL INFORMATION +% Comment any of the lines below if they are not required +%---------------------------------------------------------------------------------------- + +\name{Jonathan}{Vercoutre} +\address{1 rue de Seclin, 59000 Lille, France} +\mobile{(+33) 6.52.57.51.06} + +\email{cv@rawool.net} +\homepage{jonathan.vercout.re} +\github{rawool} +%\linkedin{https://www.linkedin.com/in/jonathan-vercoutre-b44738191/} +\twitter{@rawool} +%\skype{skypeid} +%\stackoverflow{SOid}{SOname} +%\linkedin{linkedin name} +%\reddit{reddit account} +%\xing{xing name} +%\extrainfo{test} % Other text you want to include on this line + +\position{Site Reliability Engineer} % Your expertise/fields +\quote{``Hope is not a strategy"} % A quote or statement + +\makecvfooter{\today}{Jonathan Vercoutre~~~·~~~Résumé}{\thepage} % Specify the letter footer with 3 arguments: (,
, ), leave any of these blank if they are not needed + +%---------------------------------------------------------------------------------------- + +\begin{document} + +\makecvheader % Print the header + +%---------------------------------------------------------------------------------------- +% CV/RESUME CONTENT +% Each section is imported separately, open each file in turn to modify content +%---------------------------------------------------------------------------------------- + +\input{cv/education.tex} +\input{cv/skills.tex} +\newpage % Force a new page for looks +\input{cv/experience.tex} +\input{cv/extracurricular.tex} + +%---------------------------------------------------------------------------------------- + +\end{document} \ No newline at end of file diff --git a/cv/education.tex b/cv/education.tex new file mode 100644 index 000000000..e12b37e07 --- /dev/null +++ b/cv/education.tex @@ -0,0 +1,44 @@ +%---------------------------------------------------------------------------------------- +% SECTION TITLE +%---------------------------------------------------------------------------------------- + +\cvsection{Education} + +%---------------------------------------------------------------------------------------- +% SECTION CONTENT +%---------------------------------------------------------------------------------------- + +\begin{cventries} + +\cventry +{Licence Pro DA2I (BSc in Comp. Sc.)} % Degree +{Université de Lille 1 - IUT A} % Institution +{Villeneuve d'Ascq, France} % Location +{2006 - 2007} % Date(s) +{ % Description(s) bullet points +\begin{cvitems} +\item {Internet software development and administration: specialization year focused on all the different services you can meet on the Internet with a big part of web.} +\end{cvitems} +} + +\cventry +{DUT Informatique (two years degree in Comp. Sc.)} % Degree +{Université du Littoral Cote d'Opale - IUT } % Institution +{Calais, France} % Location +{2004 - 2006} % Date(s) +{ % Description(s) bullet points +\begin{cvitems} +\item {Specialization in Software engineering} +\end{cvitems} +} + +\cventry +{Baccalauréat S - Major in Maths} % Degree +{Lycée Notre Dame de Sion} % Institution +{Saint-Omer, France} % Location +{2000 - 2004} % Date(s) +{ % Description(s) bullet points +\begin{cvitems} +\end{cvitems} +} +\end{cventries} \ No newline at end of file diff --git a/cv/experience.tex b/cv/experience.tex new file mode 100644 index 000000000..22651e237 --- /dev/null +++ b/cv/experience.tex @@ -0,0 +1,153 @@ +%---------------------------------------------------------------------------------------- +% SECTION TITLE +%---------------------------------------------------------------------------------------- + +\cvsection{Experience} + +%---------------------------------------------------------------------------------------- +% SECTION CONTENT +%---------------------------------------------------------------------------------------- + +\begin{cventries} + +%------------------------------------------------ + +\cventry +{Site Reliability Engineer} % Job title +{Alma} % Organization +{Remote} % Location +{2021 - now} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item {Was the first Site Reliability Engineer when the Platform team was created. We are now a 12 people team that manages infrastucture (mostly cloud based), security, data and developer experience} +\item {All our work is based on Terraform, GCP, CloudFlare, Datadog, and Python.} +\item {Management of the whole Alma infrastucture in GCP : containers (K8S and serverless), queues, databases, load-balancers, etc} +\item {Migration from Python scripts to Terraform to manage infrastucture resources} +\item {Security and compliance : hardening, isolation, several different mTLS setups with internal CAs, etc.} +\item {Python scripting} +\item {Automation via GitHub Actions} +\item {Monitoring with Datadog (in Terraform) : logs, metrics, dashboards} +\item {On-call Level 2} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{DataOps} % Job title +{PeopleDoc} % Organization +{Remote} % Location +{2019 - 2021} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item {Was the first peep of a three people team responsible for being the glue between DBA, SRE and BI teams} +\item {All our work was based on Ansible, Airflow and Python} +\item Management of the BI servers : batch processes systems, Airflow and Looker servers (~150 servers) +\item Python scripting : batch processing (data exports/imports), Airflow plugins, API +\item Debian and Python packaging +\item First internal datawarehouse bootstrap +\item Technical support for BI analyst and Data engineers tool +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{Site Reliability Engineer} % Job title +{PeopleDoc} % Organization +{Remote} % Location +{2018 - 2019} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item {Was part of team (5 people) responsible for the whole PeopleDoc infrastructure : web, dns, cache, queues, filers systems, etc. ~1000 servers in 7 AZ} +\item {Our work was very Ansible and Openstack centric and required a solid knowledge of the whole PeopleDoc systems to be efficient} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{Devops} % Job title +{OVH} % Organization +{Roubaix, France} % Location +{2015 - 2018} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item {Was part of team (5 people) in charge of the core services of OVH. We inherited of an old and unmaintained infrastructure and our mission was to make it stable, homogeneous and scalable} +\item {Our second mission was to maintain PCIDSS-ready infrastructure with the highest PCIDSS compliance level} +\item {Management of the internal information systems ; public web servers, databases, tasks workers, loadbalancers and many more (1K servers)} +\item {Management of the PCIDSS certified information systems for Private Cloud Cmputing service} +\item {Management of the PCIDSS certified payment system : OVH Secure Payment} +\item {Management of the corporate bastion hosts} +\item {Migration of old and unmaintained services to standard and hardened platfoms} +\item {Automation, configuration management, scripting} +\item {Security} +\item {Monitoring} +\item {Level 2 and 3 On-call} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{System Administrator} % Job title +{ISVTEC} % Organization +{Lyon, France} % Location +{2012 - 2015} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item Management of web, mail, SQL and DNS services on customer servers (300 servers) +\item Mail and web sites migrations without downtime +\item Services migration to scalable and fault-tolerant systems +\item Level 1 On-call +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{System and Network Administrator} % Job title +{ICEDev} % Organization +{Lyon, France} % Location +{2011 - 2012} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item Management of customer web, mail and DNS services on our servers +\item Management of firewalls and network +\item Web sites and mail migrations +\item Datacenter operations +\item Helpdesk +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{IT Consultant} % Job title +{Astek} % Organization +{Lyon, France} % Location +{2011} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item Maintain, repair and operations of several Unix systems +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{System and Database Administrator} % Job title +{Acteos} % Organization +{Roubaix, France} % Location +{2007 - 2011} % Date(s) +{ % Description(s) of tasks/responsibilities +\begin{cvitems} +\item Management of internal infrastructure : Oracle databases, Oracle AS (70 servers) +\item Installations and migrations of Acteos products on-premise +\item Level 3 system and DB support +\end{cvitems} +} + +%------------------------------------------------ + +\end{cventries} \ No newline at end of file diff --git a/cv/extracurricular.tex b/cv/extracurricular.tex new file mode 100644 index 000000000..34734ecff --- /dev/null +++ b/cv/extracurricular.tex @@ -0,0 +1,68 @@ +%---------------------------------------------------------------------------------------- +% SECTION TITLE +%---------------------------------------------------------------------------------------- + +\cvsection{Interests} + +%---------------------------------------------------------------------------------------- +% SECTION CONTENT +%---------------------------------------------------------------------------------------- + +\begin{cventries} + +%------------------------------------------------ + +\cventry +{User} % Affiliation/role +{Free Software} % Organization/group +{} % Location +{Since 2000} % Date(s) +{ % Description(s) of experience/contributions/knowledge +\begin{cvitems} +\item {Free software lover since I understood what it is. I oriented my career around them and am convinced this is the best way to do software} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{Baby runner} % Affiliation/role +{Long Distance Running} % Organization/group +{} % Location +{Since 2018} % Date(s) +{ % Description(s) of experience/contributions/knowledge +\begin{cvitems} +\item {Learned to run to keep my peace of mind, from no experience to running a half-marathon under two hours in one year} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{Rusted gamer} % Affiliation/role +{Video games} % Organization/group +{} % Location +{Since 2018} % Date(s) +{ % Description(s) of experience/contributions/knowledge +\begin{cvitems} +\item {I grew up with a gamepad and kept it until now. From the Master System console to the current era, I played a lot. And I'd probably noscope you on Day of Defeat.} +\end{cvitems} +} + +%------------------------------------------------ + +\cventry +{Baby Tofu} % Affiliation/role +{Vegetarism} % Organization/group +{} % Location +{Since 2019} % Date(s) +{ % Description(s) of experience/contributions/knowledge +\begin{cvitems} +\item {Learned to not eat animals to survive. Best decision of my life. I'm not a proselytist, your plate, your choice.} +\end{cvitems} +} + +%------------------------------------------------ + + +\end{cventries} \ No newline at end of file diff --git a/cv/skills.tex b/cv/skills.tex new file mode 100644 index 000000000..d2bc0381e --- /dev/null +++ b/cv/skills.tex @@ -0,0 +1,74 @@ +%---------------------------------------------------------------------------------------- +% SECTION TITLE +%---------------------------------------------------------------------------------------- + +\cvsection{Skills} + +%---------------------------------------------------------------------------------------- +% SECTION CONTENT +%---------------------------------------------------------------------------------------- + +\begin{cvskills} + +%------------------------------------------------ + +\cvskill +{Cloud and orchestration} % Category +{GCP, AWS, Kubernetes, Openstack, VMware ESX} % Skills + +%------------------------------------------------ + +\cvskill +{Web} % Category +{NGIИX, CloudFlare (WAF, rules, tunnels, R2, LB), Varnish, HAProxy} % Skills + +%------------------------------------------------ + +\cvskill +{Automation} % Category +{Terraform, Ansible, Puppet, GitHub Actions, Jenkins} % Skills + +%------------------------------------------------ + +\cvskill +{Programming languages} % Category +{Python, bash} % Skills + +%------------------------------------------------ + +\cvskill +{Operating systems} % Category +{GNU/Linux and OpenBSD} % Skills + +%------------------------------------------------ + +\cvskill +{Monitoring} % Category +{Datadog, Prometheus, Nagios and derivatives} % Skills + +%------------------------------------------------ + +\cvskill +{Databases} % Category +{PostgreSQL, MySQL} % Skills + +%------------------------------------------------ + +\cvskill +{Network} % Category +{Firewalls, VPN, good knowledge of general networking} % Skills + +%------------------------------------------------ + +\cvskill +{Core services} % Category +{Experiences of DNS, mail, queue and cache systems in production contexts} % Skills + +%------------------------------------------------ +\cvskill +{Languages} % Category +{French native and proficient English} % Skills + +%------------------------------------------------ + +\end{cvskills} \ No newline at end of file diff --git a/fonts/FontAwesome.ttf b/fonts/FontAwesome.ttf new file mode 100644 index 000000000..35acda2fa Binary files /dev/null and b/fonts/FontAwesome.ttf differ diff --git a/fonts/Roboto-Bold.ttf b/fonts/Roboto-Bold.ttf new file mode 100644 index 000000000..91ec21227 Binary files /dev/null and b/fonts/Roboto-Bold.ttf differ diff --git a/fonts/Roboto-BoldItalic.ttf b/fonts/Roboto-BoldItalic.ttf new file mode 100644 index 000000000..4013bf88a Binary files /dev/null and b/fonts/Roboto-BoldItalic.ttf differ diff --git a/fonts/Roboto-Italic.ttf b/fonts/Roboto-Italic.ttf new file mode 100644 index 000000000..9f49ffd86 Binary files /dev/null and b/fonts/Roboto-Italic.ttf differ diff --git a/fonts/Roboto-Light.ttf b/fonts/Roboto-Light.ttf new file mode 100644 index 000000000..d43e94331 Binary files /dev/null and b/fonts/Roboto-Light.ttf differ diff --git a/fonts/Roboto-LightItalic.ttf b/fonts/Roboto-LightItalic.ttf new file mode 100644 index 000000000..c11442ce5 Binary files /dev/null and b/fonts/Roboto-LightItalic.ttf differ diff --git a/fonts/Roboto-Medium.ttf b/fonts/Roboto-Medium.ttf new file mode 100644 index 000000000..879834198 Binary files /dev/null and b/fonts/Roboto-Medium.ttf differ diff --git a/fonts/Roboto-MediumItalic.ttf b/fonts/Roboto-MediumItalic.ttf new file mode 100644 index 000000000..5e866375e Binary files /dev/null and b/fonts/Roboto-MediumItalic.ttf differ diff --git a/fonts/Roboto-Regular.ttf b/fonts/Roboto-Regular.ttf new file mode 100644 index 000000000..7d9a6c4c3 Binary files /dev/null and b/fonts/Roboto-Regular.ttf differ diff --git a/fonts/Roboto-Thin.ttf b/fonts/Roboto-Thin.ttf new file mode 100644 index 000000000..861d63adb Binary files /dev/null and b/fonts/Roboto-Thin.ttf differ diff --git a/fonts/Roboto-ThinItalic.ttf b/fonts/Roboto-ThinItalic.ttf new file mode 100644 index 000000000..e65145f37 Binary files /dev/null and b/fonts/Roboto-ThinItalic.ttf differ