# LaTeX template for resume/curriculum vitae

If you have a TeX'ed resume, did you use a template or make your own? Are there any useful packages? What looks the most professional? How about special considerations for different areas of work (e.g. in academia)?

-
An article pointer and discussion at Hacker News, Why I do my resume in LaTeX, will interest some people here, I think. –  Charles Stewart Feb 21 '11 at 9:13

For my current CV, I ended up using moderncv. It doesn’t have many features but it is very easy to use and yields a very elegant output.

However, I also want to mention its drawbacks: customising it isn’t easy, especially since it doesn’t really use a clean, semantic markup. For example, to specify multi-column properties, you actually need to specify the items in an odd order (namely line by line instead of column wise).

-
Another vote for moderncv. To my eye (after having read hundreds of CVs over the past year's hiring), it presents the information in a way that makes it easy for the reader to find what they are looking for. This is critical to getting past the first pass. –  KeithB Jul 26 '10 at 20:28
I’m attempted to downvote my own answer. I’ve recently had to change my CV slightly and it was imperative that everything fit on one page, which, from the available space, wasn’t a problem in principle. However, moderncv simply doesn’t accomodate such wishes. I ended up rewriting large parts of it, in an extremely quick&dirty way since I didn’t have a lot of time. In hindsight, creating my own class from scratch would have cost me less time. As soon as I’ve got time I’ll rewrite my CV without any template. –  Konrad Rudolph Jan 27 '11 at 19:06
moderncv actually has a new feature (or a related package) since yesterday: moderntimeline. –  ℝaphink Sep 30 '11 at 13:36
@Konrad Any chance you could elaborate on the issue? Normally, you can simply change the margin of the pages through geometry, or decrease the inter-element spacing through the optional parameter of every command. –  Xavier Feb 23 '12 at 0:54
@Xavier Changing the margins wasn’t an option, and changing the inter-element spacing proved to be a major pain in the *ss. In particular though I tried putting some of the elements in two columns next to each other and that didn’t go down well with the package. –  Konrad Rudolph Feb 23 '12 at 7:57

I made my own. In the end, it was much easier that way; you get what you want. Especially if you have situations in which you need to quickly prepare e.g. a 4-page CV, you know how to tweak your own layout to meet the requirements.

Some key tools:

• article class

• geometry package for margins

• hyperref to have a nice PDF (e.g., DOI hyperlinks in the list of publications, proper PDF metadata)

• enumitem for tweaking list layout; titlesec for section headings

• cite, url, microtype, babel, ...

• Keep layout and content separated; easy to do something like \input{layout2}\input{content} to produce yet another version with a different layout.

• multibib to get multiple lists of references in the CV (one for journal papers, another for conference papers, etc.):

\newcites{jrnl}{Journal Papers}
\newcites{conf}{Conference Papers}
...
\nocitejrnl{...}
\nociteconf{...}
...
\section{Scientific Publications}
{
\renewcommand{\section}[2]{\subsection{#2}}
\setbiblabelwidth{99}
\bibliographystylejrnl{yyy}
\bibliographyjrnl{xxx}
\setbiblabelwidth{99}
\bibliographystyleconf{yyy}
\bibliographyconf{xxx}
...
}


The "nocite" lists, etc., are automatically generated from a source file by using a Python script. The lists are actually in a separate file that I \input.

• A tweaked version of the unsrt Bibtex style: I added things like DOI links, etc., by using some ugly hacks.

• JabRef + some scripts to maintain the Bibtex database.

• Rubber (with % rubber: module pdftex) for compiling everything. It works OK with multibib.

-
Could you share an example of this, and typical output, please? –  Forkrul Assail Oct 1 '12 at 13:17
+1 on the previous comment: unless your answer is an imperative: "Do it yourself!", I think it would be really nice to see (at least) an MWE... +2 on inputting layout, seems like an elegant way! –  nutty about natty Jul 9 '13 at 10:52

There are lots of resume examples here with source: http://rpi.edu/dept/arc/training/latex/resumes/.

Google can show a thousand other examples, but that's a good place to start.

-
that's the one i use... pretty nice. –  Mica Nov 12 '10 at 3:30
Actually, these are all extremely space-y. Anything more compact? P.S. A google search puts this page at the top... –  cheshirekow Aug 28 '12 at 19:00

I like europass and everyone seems impressed when they see the results... specially for Europe applications!

-
The link is dead @YuppieNetworking. Can you post it somewhere else? –  alekhine Dec 24 '12 at 7:39
Updated the link for @alekhine –  YuppieNetworking Dec 27 '12 at 11:16
When you use it —and I wholeheartedly recommend it— just be sure to leave out the original "Europass" logo. If not, the Brits will have a good laugh with your Europ ass... –  Serge Stroobandt Aug 25 '13 at 21:06

I will second the Taraborelli CV templates at http://nitens.org/taraborelli/cvtex. In the past I've used the curve and moderncv packages but, in the end, found the combination of his elegant templates + xelatex to be the simplest and most flexible solution. I wasn't constrained by particular sectioning, etc.

Personally, I use the Hoefler Text+Optima. I also like the Caslon.

-

The TeX Catalogue list CV packages in a category:

By the way: I wasn't satisfied by the results of such packages. So, I used scrartcl and tabularx to typeset my CV. This way I could match it to the design of my application letter done with scrlttr2. I used tabularx in macros, allowing easy adjustments for all parts of the CV at once. Simple and elegant, no fancy colored lines and the like.

Copied from here to this topic following a request.

-
The link is not working anymore. –  Roman Feb 25 at 12:06

This strikes me as a particularly good example of a CV or vita. The latex code can be seen here. As an example, see the author's vita.

-

Minimalia has a nice LaTeX tutorial for CV, which gives a result like this (pdf). Minimalia also has a nice cover letter template.

-
The links are offline. –  Roman Feb 25 at 12:07

I can offer you a video tutorial I made recently, which covers this topic using the article class. I just got hired for a lectureship position last week, so I think it is pretty good!

-
The video was removed from youtube because it was too long. You should probably upload it somewhere else and update the link. –  canaaerus Jul 10 '12 at 21:09
I just noticed that and fixed it. Should be ready to go by the time you see this again. –  macmadness86 Jul 10 '12 at 21:54

Ted Pavlic's CV templates are minimalistic, uses the hyperref package extensively and elegant!

http://www.tedpavlic.com/post_resume_cv_latex_example.php

-

I've been using a lightly tweaked version of Michael DeCorte's res.cls. No idea if it is best of breed (nor why I chose it), but if it ain't broke. . . .

-

For my current one I just rolled my own. I use fancyhdr for the header and footer, and lastpage so that I can display  page x/y in the footer (so that the person reviewing it would know if they lost a page).

The entirety of the rest of the document is built from nested customized lists.

-
+1 on fancyhdr. –  Hober Jul 26 '10 at 21:48

I ended up making my own, but it took a while. Expect to have to fight LaTeX's defaults on a lot of things. That said, it's worth it. I learned a lot about LaTeX and have a good resume that I can say I wrote.

I wouldn't be surprised, but it seems like if you're going to use LaTeX for your resume, be prepared to answer truthfully whether you used a template or not, and be comfortable with the answer.

-
It shouldn't be a problem even if you used a template, the purpose of the resume is to present the professional skills, not the low-level LaTeX skills. –  wishihadabettername Aug 11 '10 at 15:05

I found CurVe to be a nice package. Used it to get two student jobs and apparently, it worked :). The only drawback is that the default structure of the CV may need adjustments to your specific purposes.

-

For typesetting bidirectional resumes in languages other than english, the bidi package provides bidimoderncv2 class for typesetting resumés, which is the modified version of moderncv class. Two examples are presented in the doc folder of the package, namely test-casualcv.tex and test-classiccv.tex than you can look and learn how you can use it.

This is an example use of bidimoderncv with classic style:

and this one is with casual style:

Take note that both are taken from examples of the package and are typeset in persian, but works fine in any other languages (whether ltr or rtl).

-
Can you tell me how can I compile the test-classiccv.tex file? should it be with pdfLatex or XeTex? –  Ehsan Jun 4 at 20:41
It should be with xelatex, since it is based on bidi, and it only works with xelatex. –  Hasan Zakeri Jul 27 at 11:04

My current resume is based on the article class; source hosted on GitHub and forked from kjhealy.

It uses fontspec for OpenType fonts (Adobe Garamond Pro and FontAwesome). Still working on the best way to selectively place content for different purposes/companies. I'm experimenting with linked external documents, under the supposition that the resume stands on its own (nothing is "missing" without linked content), but the reviewer can find extra information if he/she clicks on a link. I've had positive feedback on this so far. The ocgcolorlinks option is perfect for this; once the resume is printed, all traces of the links vanish. Special thanks to @ben-lerner for his improved code.

My publication list is short presently, but I'll probably need to add in some biblatex functionality for ease of use as it grows.

-

If you'd like to use LaTeX along with BibTeX, I have a template here:

http://pointsofsail.org/wikka.php?wakka=LatexCV

It is based on Dario Taraborelli's template (http://nitens.org/taraborelli/cvtex) and uses bibtex and the bibentry package to make the publications section.

-

Here is a Hacker News thread with many examples of resumes and CVs in (La)TeX:

-

I also ended up making my own style, however, I added one twist: I actually store my CV in XML format and then use an XSLT transform to convert it into a .tex file. While this required a lot more work upfront, the benefit is that I can use the same XML file to generate plain text, HTML, abridged, &c. versions without having to maintain n separate files. If you end up making your own LaTeX style for your CV, I would also suggest you seriously consider investing the time to use the XML/XSLT technique. You can see the results of this technique here (scroll to the bottom of the page to see the XML and HTML versions). It would take me a bit of time to clean them up, but I'd be happy to share my XSLTs with people if anyone is interested. This is an open source project that does something similar, however, it was started after I created my technique and I've never used it.

-
I looked at the XML Resume Library a while back and noticed that it seems to be dead: last "news" is dated 2004. I also looked at HR-XML but then I decided I was spending too much time and used curve instead. :-) –  Matthew Leingang Jan 30 '11 at 18:22

Here's an example of a nice-looking "home-made" CV: http://nitens.org/taraborelli/cvtex

-

I used curve to create my CV:

http://www.mhelvens.net/cv

Quite customizable by itself. But I added several hacks and convenience macros of my own:

• nicer rubric-title underlining
• separate bullet-shapes for [ongoing], [notable] and [other]
• separate year-styles for [period] and [event]
• separate year-styles for [past], [ongoing, known end-year], [ongoing, open end]
• hyperlinked e-mail and url
• for specific projects and papers: hyperlinked www or doi
• when printing, cross-refs, urls and e-mail are black; www and doi links are invisible

Someday soon I should make the code public. But for now it's a bit too chaotic to release.

-

Recently added document class, cv4tw by Geoffrey Gouez, offers a "LaTeX CV class, with extended details".

The class offers entries for assets and social networks; customizable styles are provided. The class comes with no documentation, but a worked example offers some guidance.

This package is still under development but it shows great progress. Here is a sample screen shot of an example made using the class file.

Here is a direct link to the example above: sample-jules-verne. Note this requires XeLaTeX or LuaLaTeX to run. Also note that the example given does not compile directly because the samplepic.jpg file is not provided; just replace it with your own or download it here from GitHub under examples.

-
It's a fantastic new solution for CV writing in Latex (+1). Unfortunately there is no reasonable documentation available. –  Roman Feb 25 at 18:25

I have made my CV using predominately BibLaTeX. I have gone way beyond just using BibLaTeX for my publications, but have added a number of custom entry types (e.g., funding, service, teaching, presentation, education), modified the biber data model to allow for new fields and written bibliography drivers to handle the formating of these new entry types. Everything except my contact information is stored in a bib file (and technically my contact information is stored in the @preamble entry). Each version of my CV is produced by a tex file that sets a few BibLaTeX booleans and defines a bunch of \defbibfiler and \defbibcheck.

I find this makes it much easier for me to reorganize/reorder my CV. Previously it was easy to move my "teaching" section before my "service" section, but with BibLaTeX I can have my teaching in a big list or divide it into undergraduate and graduate or University A and University B. Similarly I can divide my research presentations into internal/external or into talk/poster.

-
Intersting approach! I would love to see the code for this :-) –  Daniel Jul 4 '13 at 5:52

LaTeX Templates showcases several templates, ranging from conservative to fancy.

I ended up using Classicthesis-Styled CV. It caught my eye as most esthetically pleasing. And even with my poor LaTeX skills was very easy to adapt to my needs.

-

I adapted the resume class found in http://www.iro.umontreal.ca/~csuros/latex.html.

-

I prepare 2 versions of my CV; a resume; lists of publications and references; statements of teaching philosophy and research interests all on the basis of currvita. Well, with a considerable amount of hand-hacking. For added geekiness, the list of publications is primarily a specialized bibtex output format (which works nicely with getting a bibtex formatted list of my publications from spires).

-

I use an earlier version of this: http://whiskypedia.valeriodistefano.com/Cygwin-Easy-2007.03.21/HTML/cygwin/usr/share/lyx/tex/cv.cls with certain modifications of my own, primarily to page geometry and fonts.

-