You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Robin_THONI_resume.tex 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. %!TEX program = lualatex
  2. % Exemple de CV utilisant la classe moderncv
  3. % Style classic en bleu
  4. % Article complet : http://blog.madrzejewski.com/creer-cv-elegant-latex-moderncv/
  5. \documentclass[11pt,a4paper,sans]{moderncv}
  6. \moderncvtheme[green]{classic}
  7. \definecolor{color1}{rgb}{0.26,0.52,0.96} % Google blue
  8. \newcommand*{\cvent}[7][.25em]{%
  9. \cvitem[#1]{#2}{%
  10. {\bfseries#3}%
  11. % \ifthenelse{\equal{#4}{}}{}{, {\slshape#4}}% I changed this line (with comma) ...
  12. \ifthenelse{\equal{#4}{}}{}{ {\slshape#4}}% ... into this one (without comma).
  13. \ifthenelse{\equal{#5}{}}{}{ #5}%
  14. \ifthenelse{\equal{#6}{}}{}{, #6}%
  15. .\strut%
  16. \ifx&#7&%
  17. \else{\newline{}\begin{minipage}[t]{\linewidth}\small#7\end{minipage}}\fi}}
  18. % moderncv timeline
  19. \usepackage{moderntimeline/moderntimeline}
  20. \tlmaxdates{2011}{2025}
  21. \tlwidth{0.8ex}
  22. \tltext{\tiny}
  23. \usepackage[utf8]{inputenc}
  24. \usepackage[top=1.1cm, bottom=1.1cm, left=2cm, right=2cm]{geometry}
  25. \usepackage{emoji}
  26. % Largeur de la colonne pour les dates
  27. \setlength{\hintscolumnwidth}{2.5cm}
  28. \firstname{Robin}
  29. \familyname{Thoni}
  30. \title{}
  31. \email{robin@rthoni.com}
  32. \social[github][git.rthoni.com/robin.thoni]{git.rthoni.com/robin.thoni}
  33. \social[github]{robin-thoni}
  34. \mobile{+33 6 34 39 52 26}
  35. \mobile{+1 (424) 242-5068}
  36. \quote{Infrastructure and Automation lover.}
  37. \begin{document}
  38. \maketitle
  39. \section{Cursus}
  40. \tlcventry{2016}{2017}{Computer Science Master}{UQAC}{\emoji{flag-canada}}{Canadian University}{}
  41. \tlcventry{2012}{2017}{Master of Engineering}{EPITA}{\emoji{flag-france}}{French CS Engineering School}{}
  42. \section{Experiences}
  43. \tlcventry{2024}{0}{Senior Infrastructure Engineer}{FlexAI}{\emoji{flag-france}}{PaaS/Infrastructure team}{
  44. - Designed and implemented from scratch a new platform to train and host AI applications, based on Kubernetes, FluxCD, Helm, GitHub Actions, etc\\
  45. - Designed and implemented multi-cloud IaC with Pulumi and Ansible (AWS, Azure, Intel, Cisco, Oracle)\\
  46. - SOC2/GDPR compliance: implemented security measures, automated security audits, and created documentation (Hashicorp Vault, etc)\\
  47. - Setup and maintained low-level infrastructure: bare-metal, VMs, networking, storage, NVIDIA/Mellanox Infiniband stack, etc\\
  48. - Worked on custom Kubernetes operators to run AI training and inference workloads\\
  49. }
  50. \tlcventry{2022}{2023}{Infrastructure Engineer Consultant}{iKe}{\emoji{flag-luxembourg}}{BGL / BNP Paribas Group}{
  51. - Migrated manually deployed server applications to CI/CD with Jenkins, Docker, Kubernetes, Kustomize, CA Release Automation, Ansible, AWX, Rancher\\
  52. - Created a new CI/CD pipeline to deploy Helm charts in IBM Kubernetes Services (IKS)\\
  53. - Packaging and automation of the deployment of a full Core Banking software in Kubernetes/Helm to replace the existing mainframe
  54. }
  55. \tlcventry{2020}{2021}{Infrastructure Engineer}{NVIDIA}{\emoji{flag-united-kingdom} / \emoji{flag-germany}}{CUDA devtools team}{
  56. - Maintained devtools' build infrastructure: upgraded >10 years old toolchains, improved existing codebase to fix new compiler warnings/errors, created container-based build environment, added new and improved existing automations with Jenkins, etc
  57. }
  58. \tlcventry{2018}{2020}{Software Engineer}{NVIDIA}{\emoji{flag-united-kingdom}}{CUDA devtools team}{
  59. - Led the design and implementation of a GPU code coverage tool: generate code coverage reports for kernels written in assembly for internal automotive usage\\
  60. - Led the design and implementation of a GPU thread-array diversity measurement tool: generate reports on how thread-arrays are dispatched on physical GPU cores to detect hardware errors for internal automotive usage
  61. }
  62. \tlcventry{2016}{0}{Infrastructure Engineer}{Betaclean}{\emoji{flag-france}}{Family Business}{
  63. - Setup physical network (ISP / routers / ethernet / Wi-Fi)\\
  64. - Development of internal intranet web app\\
  65. - Deployment/management of security systems (Bitwarden / Keycloak / CA / firewall)\\
  66. - Automation of infrastructure deployment (Saltstack / Kubernetes / Helm)\\
  67. - Deployment/management of E-mail server (Postfix / Dovecot)\\
  68. - Deployment/management of DNS authoritative server (internal / external) and DHCP server\\
  69. - Deployment/management of VPN server (OpenVPN / Wireguard)\\
  70. - Deployment/management of physical security systems (CCTV / access control / alarm)
  71. }
  72. \tldatecventry{2017}{Final Internship}{NVIDIA}{\emoji{flag-united-states}}{CUDA devtools team}{
  73. - Added 'initcheck' support for cuda-memcheck: devtool to check for read-before-write on the GPU\\
  74. - Optimized Nsight Compute kernel replay feature: restore memory on the GPU only if it has been modified by the profiled kernel
  75. }
  76. % \tlcventry{2014}{2016}{School's Laboratory}{3IE}{}{EPITA's Innovation Laboratory. Multiple team projects for big companies}{}
  77. \section{Skills}
  78. \cvitem{Languages}{C; C++; Python; C\#; Go; Java; Shell/Bash; PostgreSQL}
  79. \cvitem{Frameworks}{Android SDK; Qt; ASP.NET Core}
  80. \cvitem{Infrastructure}{Kubernetes; Docker/docker-compose; E-mail servers; DNS servers, Keycloak; Bitwarden; Iptables; Zabbix; Step-ca; Hashicorp Vault; Linux Debian/RHEL}
  81. \cvitem{CI/CD}{Jenkins; SaltStack; Ansible; Helm; Kustomize; Pulumi; Terraform}
  82. \section{Miscellaneous}
  83. \subsection{Languages}
  84. \cvent{French}{}{}{Native}{}{}
  85. \cvent{English}{}{}{Fluent / TOEIC 910}{}{}
  86. \end{document}