Update Your CV in R Markdown

Julie Jung

2020/01/12

What my CV looks like with this template

R Markdown is a notebook interface that allows you to weave together narrative text and code to produce beautifully formatted output - by default! This elegant format forces/urges you to annotate your code! Before converting from using R scripts to R markdown documents, I would find myself inadvertently forgetting to annotate my code - an easy habit to fall into and a pain in the butt for your future self.

I recently moved my CV from pure LaTeX to R Markdown. I used the template and minimal working example from SV Miller’s Github. Make sure you have the template tex file (svm-latex-sv.tex) in the same repository/working directory as your working rmarkdown file.

This is what the YAML will resemble for an R Markdown CV that uses the aforementioned template.

---
output: 
  pdf_document:
    latex_engine: pdflatex
    template: svm-latex-cv.tex
geometry: margin=1in

title: "CV"
author: Julie Jung

jobtitle: "PhD Candidate, Boston University"
address: "Biology Research Building 511 · 5 Cummington Mall · Boston, MA 02215"
fontawesome: yes
email: jungjulie2@gmail.com
web: jungjulie.com
github: jamjulie
twitter: jamjuliejung
#phone: "510-439-7613"
updated: yes

keywords: R Markdown, academic CV, template

fontfamily: mathpazo
fontfamilyoptions: sc, osf
fontsize: 11pt
linkcolor: black
urlcolor: blue
---

You should change the information so that it suits your own needs. The changes to title: and author: should be pretty intuitive if you’re somewhat familiar with Rmarkdown and YAML syntax.

I recommend using the fontawesome package by adding fontawesome: yes to your YAML in order to use the cool symbols so that you can fit more information onto that line. You might need to make sure your TeX Live package is current. See here for a guide on how to do that.

You can omit whatever fields you choose to omit, probably space depending.

Add your domain name in the web: field (without the http://) for a link to your website.

updated: is an optional entry. It lets readers know when my CV was last updated in the header of my CV. I have updated: yes in my personal CV if you want to see what that looks like.

Beyond the YAML, the rest of the R markdown file uses normal R markdown syntax. A useful guide can be found here.

Update: I’ve gotten a couple emails about some of the styling features that I have implemented in my CV (indentations/block quotes/small caps), which really surprised me mostly because I didn’t know anyone besides my mom was reading these posts (hi umma 👋)! It’s not an elegant solution but I actually just used html to hard-code the capitalized small font, as well as the spaces to center the font.

<span style="font-variant:small-caps;">

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Developmental Change in Vibration Sensing & Vibration-  
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Cued Hatching Decisions in Red-Eyed Treefrogs"

</span>

You could also include \LaTeX syntax inside Rmarkdown to avoid manually centering everything (thanks @Matan for pointing this out).

\begin{center}

\textsc{Developmental Change in Vibration Sensing \& Vibration  \linebreak Cued Hatching Decisions in Red-Eyed Treefrogs}

\end{center}