My personal CV in reproducible form.
Find a file
Marty Oehme 1afc51a857
feat(resume): Add wrapit library to dynamically add sidebar
Removes issue that grid will be static throughout all pages and thus
empty space where the sidebar is on page 1. Now, the sidebar aligns
nicely along the first page but then we can use the full width for the
next few pages.
2025-03-19 12:53:41 +01:00
.gitignore Prepare gitignore for quarto python documents 2023-06-22 15:51:49 +02:00
content.yml fix(content): Rephrase partial completion of BA 2025-03-19 12:53:41 +01:00
cv.typ ref(lib): Rename skill_item to sidebar_entry 2025-03-19 12:53:38 +01:00
lib.typ ref(smartypants): Move smartypants application to lib 2025-03-19 12:53:39 +01:00
Makefile Ensure build dir before make 2025-02-04 10:31:48 +01:00
README.md docs: Update README 2025-03-19 12:53:37 +01:00
resume.typ feat(resume): Add wrapit library to dynamically add sidebar 2025-03-19 12:53:41 +01:00
wrapit.typ feat(resume): Add wrapit library to dynamically add sidebar 2025-03-19 12:53:41 +01:00

Data-driven CV & resume

My personal CV and resume files, automatically generated from a multi-lingual yaml data file.

The CV contains a full run-down of my educational and job experience to date, while the resume is more compact, reduced to a single page and can be tailored for a specific job area or expertise.

Is called like the following:

#resume(
    yaml("content.yml"),
    main: ("experience", "education", "volunteering", "skills", "languages"),
    sidebar: ("volunteering", "skills")
)

This is the default invocation, though sidebar and main body sections can be exchanged at will. The following sections currently exist:

  • education
  • experience, subdivided in "experience", "experience_by_client" and "experience_by_type"
  • languages
  • skills
  • summary
  • volunteering

Sections in the main body or sidebar can be reordered at will.

Advanced experience settings

The experience section has 3 forms:

Purely chronological ("experience"), which is the default; separated by client worked for ("experience_by_client"); separated by the type of work undertaken, then further separated by client worked for ("experience_by_client").

These options are intended especially for self-employed / entrepreneurial CVs. They let you subdivide your work experience whichever way works best, and additionally divide work undertaken for your own employ or salaried positions for example.

TODO:

  • move double-resume sources (per langauge) to a variable or similar

  • separate volunteering from skills section

  • [_] one function per skill section

  • [_] resume prep:

    • make experience groupable by client / short version
    • enable display/hiding of sections/entries by tags?
  • migrate to typst template?

  • ! Fix german summary to be like English summary

  • [_] generalized entry? Would have 'title', 'place', 'date', 'type'/'tags' + potential 'publication', 'bullets'

Typst-driven branch

  • Fix publication '&'s
  • Fix en-dash/em-dash (e.g. in years)
  • Producable from yaml content
  • Can be switched between Ger/En
  • Try sidebar version
    • Generalize sidebar version through abstraction/extractions
  • unify items: experience/education/(thesis?)