Keep your CV updated like a developer using GitHub Actions & LaTeX

Alejandro Dominguez
Geek Culture
Published in
3 min readAug 5, 2021

--

Photo by João Ferrão on Unsplash

Has it ever happened to you that you want to send your CV and you don’t have the updated PDF?

There are several online solutions to prevent this from happening to you: from payment websites where you enter all your professional information, which allow you to download your CV in a wide variety of formats and templates; to other more standard and known as LinkedIn. In the latter you can download a slightly configurable version of the CV, simply keeping your information updated on the social network.

In this article I propose the variant that I use to keep my CV, updated, versioned and easily downloadable in PDF format at all times.

1. Use a version controller

What better way to keep your CV versioned than with a version control tool. Create a new repository on GitHub where you will store your CV as source code.

In case you need to have more than one version of your resume, Git can also help you by using different branches.

2. Find a good LaTeX template for your CV

I suggest you use LaTeX. LaTeX is a text composition system, specially oriented to the creation of books, scientific and technical documents, which is determined to be highly flexible. Some advantages are:

  • It is free software.
  • There are a whole series of templates that offer a professional result.
  • No need to worry if the result changes from one computer to another or in different versions.
  • There is a lot of bibliography online.

You can take a look at these GitHub repositories, where you will find some great templates.

In any case, if you don’t like any of these templates, and you have some basic knowledge of LaTeX, you can create your own document from scratch.

3. Compile your document in PDF format

It is useless to have your document in .tex format if we are not able to generate a PDF version that can be sent to a human being. I don’t think recruiters want to read a resume in .tex format 😁. This is where GitHub Actions comes in. We can configure that with each change that we upload to our development branch, this trigger an action that compiles our document and stores it within the repository itself.

I share an example that you can use to create the GitHub Action.

If you don’t know much about GitHub Actions, you can take a look here:

4. Share easily

If we make the repository public, it is possible to download the document in a simple way using the URL of the file. It would be something similar to this:

https://github.com/you/cv/blob/master/my_awesome_cv.pdf

Download your CV using curl

And that’s all. With these simple four steps you can have a CV, updated, versioned, available and in a format that will look good on all computers. I hope it has been helpful to you. 👋

--

--