Profile Picture

Spencer B.

👋 Hello, name is Spencer. I am a CS graduate, programmer, and Linux enthusiast. Outside of technology, I enjoy learning, playing guitar, and citizen science.

feed | tips | contact

LaTeX Resume Formatting

Calendar icon April 30, 2021

Clock icon 3 min read

Folder icon #latex #tex #resume #career in tech


I recently overhauled my entire Computer Science resume using LaTeX. While doing so, I found some useful tips that I’d like to share, some from Butterick’s Practical Typography, which I highly recommend looking through. I’ll start at the top and work my way down.


My new resume uses five packages:


Out of the box, LaTeX has formatting well-suited for scientific literature, but not so much for resumes. Here are some of the changes I made.

Font Size

Most articles I read recommended a font-size between 10pt-12pt, so I went with 11pt: \documentclass[11pt][article].

Hiding Numbering

To disable page numbers, use \pagenumbering{gobble}. To hide section and subsection numbering, use \section*{Title} and \subsection*{Title} (with the asterisk).

Header Underlines

Try using \hrule: \section*{Experience\hrull}.


Professional summaries typically include years of experience in the form of [positive adjective] [job title] with X years of experience doing something. For years of experience, you will likely have something like “4+” or “3½”. Try 4\texttt{+} for the former to prevent weird spacing and 3\textonehalf{} for the latter. The \texttt{} command also works well for formatting “C++”. Here is a comparison with C++ on the left vs C\texttt{++} on the right:


Education & Experience

For both of these sections, you might use a bulleted \begin{itemize} list and will want to display a time range.


By default, itemized lists in LaTeX are quite expansive, taking up excessive space. To compact them, try \setlength\itemsep{-0.5em} right after the \begin{itemize}.


It’s good practice to include a range from a start month and year to an end month and year. For months, I recommend using the standard 3 letter abbreviations for consistency and alignment: Aug. 2019.

You may have something like Aug. 2019 - Sep. 2020, for which I have one nitpick: hyphens are not for ranges. As Practical Typography and Wikipedia will both tell you, the correct character is the “en dash”, produced in LaTeX with \textendash{}.

Now, most resumes float the date for degrees, job experience, awards, etc to the right. In LaTeX, this may be emulated by \hspace*{\fill}.

This LaTeX:

\textbf{Company Name} - \emph{Support Technician} \hspace*{\fill}Nov. 2018 \textendash{} Jul. 2019

Will produce this: Experience example

Multiple Columns

Add \usepackage{multicol} and then you can easily use multiple columns with \begin{multicols}{3}.

I used this to split my project list into two columns, and my technical proficiencies into three: “Languages/Frameworks”, “DevOps”, and “Web/Typesetting”.