Versionando seu curriculo no Github com Markdown

Published on Thursday, April 23, 2020

Disponível em 🇧🇷 / Available in 🇺🇸

[draft]

  • créditos
  • motivação
  • Como fazer

Tudo é uma cópia, de uma cópia, de uma cópia

Antes de começar, os créditos deste post vão para um cara chamado Mark Szepieniec, o que eu fiz foi apenas portar para Windows o modelo de gerar o resume. Se você usa Linux como seu OS principal, eu recomendo conferir o post original (Mark se inspirou num post de outro cara chamado Christophe-Marie Duquesne).

Dados os devidos créditos, podemos começar.

A entediante tarefa de formatar um curriculo

Em meados de outubro de 2018 eu fui convidado a participar de um processo seletivo e resolvi aceitar. E como acontece em alguns processos e para a minha felicidade, me pediram um currículo atualizado... Eu havia mudado a uns 8 meses de trabalho e, o meu perfil do linkedin para a minha empresa atual havia sido suficiente.

Minha experiência anterior a esta durou 9 anos, então fazia um bom tempo que eu não tinha que atualizar um currículo e eu não estava nada animado para começar. Não sei vocês, mas eu tenho uma preguiça monstruosa de ficar formatando texto no Word.

Então lembrei de uma conversa que tive com o Matheus onde ele me disse que tinha usado LaTeX para escrever seu TCC e o trabalho tinha sido extremamente menos cansativo do que ter que formatá-lo em ABNT utilizando ferramentas de edição como Word (e eu quis muito ter conhecido o LaTeX na época do meu TCC). Era uma luz no fim do túnel.

O problema é que LaTeX tem toda uma sintaxe própria e não valia o esforço me adaptar apenas para atualizar um currículo. Não é possível que ninguém na internet não havia pensado numa maneira mais limpa para atualizar um currículo (ou resume), tarefa extremamente chata, utilizando por exemplo markdown.

E assim eu tinha todas as palavras-chave necessárias para pesquisar um trabalho semelhante de conversão de texto e, com algumas pesquisas e um pouco de sorte eu encontrei um artigo que fazia exatamente a conversão de um CV em markdown para diversos outros formatos, incluíndo TeX, pdf, html e docx!

Escrevendo seu curriculo em Markdown

Não há muito o que se falar sobre markdown. Os posts desse blog são escritos usando markdown e a marcação de texto acaba sendo natural.

Separei abaixo alguns documentos de referência, use o que lhe agradar mais enquanto estiver escrevendo:

Syntax Description
Header Title
Paragraph Text

Good

int foo (void) 
{
    int i;
}

Bad

int foo (void) {
    int i;
}
# no markdown here
# no markdown here

Here's a simple footnote,1 and here's a longer one.2

====

Gone camping! :tent: Be back soon.

That is so funny! :joy:

I could use some help...

public class Order
{
    public int OrderId { get; set; }
    public int CustomerId { get; set; }

    public List<int> Products { get; set; }
}

Johnny Coder
============

----

>  In this style, the resume starts with a blockquote, where
>  you can briefly list your specialties, or include a salient
>  quote. Ending a line with a backslash forces a line break.

----

Education
---------

2010-2014 (expected)
:   **PhD, Computer Science**; Awesome University (MyTown)

    *Thesis title: Deep Learning Approaches to the Self-Awesomeness
     Estimation Problem*

2007-2010
:   **BSc, Computer Science and Electrical Engineering**; University of
    HomeTown (HomeTown)

    *Minor: Awesomeology*

Experience
----------

**Your Most Recent Work Experience:**

Short text containing the type of work done, results obtained,
lessons learned and other remarks. Can also include lists and
links:

* First item

* Item with [link](http://www.example.com). Links will work both in
  the html and pdf versions.

**That Other Job You Had**

Also with a short description.

Technical Experience
--------------------

My Cool Side Project
:   For items which don't have a clear time ordering, a definition
    list can be used to have named items.

    * These items can also contain lists, but you need to mind the
      indentation levels in the markdown source.
    * Second item.

Open Source
:   List open source contributions here, perhaps placing emphasis on
    the project names, for example the **Linux Kernel**, where you
    implemented multithreading over a long weekend, or **node.js**
    (with [link](http://nodejs.org)) which was actually totally
    your idea...

Programming Languages
:   **first-lang:** Here, we have an itemization, where we only want
    to add descriptions to the first few items, but still want to
    mention some others together at the end. A format that works well
    here is a description list where the first few items have their
    first word emphasized, and the last item contains the final few
    emphasized terms. Notice the reasonably nice page break in the pdf
    version, which wouldn't happen if we generated the pdf via html.

:   **second-lang:** Description of your experience with second-lang,
    perhaps again including a [link] [ref], this time placing the url
    reference elsewhere in the document to reduce clutter (see source
    file). 

:   **obscure-but-impressive-lang:** We both know this one's pushing
    it.

:   Basic knowledge of **C**, **x86 assembly**, **forth**, **Common Lisp**

[ref]: https://github.com/githubuser/superlongprojectname

Extra Section, Call it Whatever You Want
----------------------------------------

* Human Languages:

     * English (native speaker)
     * ???
     * This is what a nested list looks like.

* Random tidbit

* Other sort of impressive-sounding thing you did

----

> <email@example.com> • +00 (0)00 000 0000 • XX years old\
> address - Mytown, Mycountry

[draft]


  1. This is the first footnote.

  2. Here's one with multiple paragraphs and code.

    Indent paragraphs to include them in the footnote.

    { my code }

    Add as many paragraphs as you like.

comments powered by Disqus