| fonts | ||
| .gitignore | ||
| Makefile | ||
| MikeEberlein_Resume.docx | ||
| MikeEberlein_Resume.odt | ||
| MikeEberlein_Resume.pdf | ||
| MikeEberlein_Resume.tex | ||
| README.md | ||
| render_odt.py | ||
| render_tex.py | ||
| resume.yaml | ||
Mike Eberlein — Resume
Single-page resume for Mike Eberlein (Engineering Manager — automotive infotainment / software-defined vehicles).
Single content source: resume.yaml. Two renderers (LaTeX and ODT) read the YAML and emit format-specific files. DOCX is produced by converting the ODT with LibreOffice. Edit resume.yaml; the generated .tex should not be edited by hand.
Files
| File | Purpose |
|---|---|
resume.yaml |
Source of truth. Edit this. |
render_tex.py |
YAML → MikeEberlein_Resume.tex. LaTeX preamble lives inline. |
render_odt.py |
YAML → MikeEberlein_Resume.odt. ODT styles live inline. |
MikeEberlein_Resume.tex |
Generated. Do not edit by hand. |
MikeEberlein_Resume.pdf |
Built from .tex via pdflatex. |
MikeEberlein_Resume.odt |
Built from YAML via render_odt.py. |
MikeEberlein_Resume.docx |
Built from .odt via LibreOffice. |
Makefile |
Build orchestration. |
fonts/ |
Bundled Roboto .ttf files (Regular, Italic, Bold, BoldItalic, Light, Medium). |
Build
make # PDF (default)
make odt # ODT
make docx # DOCX (via LibreOffice from the ODT)
make all # PDF + ODT + DOCX
make clean # remove TeX aux files
make distclean # also remove generated PDF/ODT/DOCX/TEX
Required system packages (Debian/Ubuntu):
sudo apt install texlive-latex-recommended texlive-latex-extra texlive-fonts-extra
sudo apt install libreoffice # for the .docx output
sudo apt install python3-yaml # for the renderers (usually pre-installed)
Editing
Open resume.yaml. The schema:
header: { name, tagline, email }
summary: <paragraph>
experience:
- company, dates
roles:
- title, dates
# either:
bullets: [ ... ]
# or, for nested sub-roles (used for one role with concurrent focus areas):
subroles:
- title, dates
bullets: [ ... ]
education:
- school, dates, bullets
certifications: [ ... ]
After editing, run make all to rebuild every format from the same content.
Layout / styling
Both renderers contain their own styling code (LaTeX preamble in render_tex.py, ODT XML styles in render_odt.py). Tweak typography, colors, spacing, etc. there. The two renderers aim for visual parity but are not byte-identical — pdflatex and LibreOffice differ on font metrics and line breaking.
The DOCX is produced from the ODT (LibreOffice's ODT→DOCX conversion is essentially lossless because the formats are siblings). DOCX fidelity is therefore nearly identical to ODT.