cv/main.typ
2023-11-30 00:15:30 -05:00

210 lines
4.5 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#let config = yaml("config.yaml")
#let settings = yaml("settings.yaml")
#let personnal = yaml("personnal.yaml")
#show link: set text(blue)
#show heading: h => [
#set text(
size: eval(settings.font.size.heading_large),
font: settings.font.general
)
#h
]
#let sidebarSection = {[
#par(justify: true)[
#par[
#set text(
size: eval(settings.font.size.contacts),
font: settings.font.minor_highlight,
)
Email: #link("mailto:" + config.contacts.email)\
#if (settings.public) {
[Phone: #link("tel:" + personnal.contacts.phone)\ ]
}
#if (config.contacts.at("linkedin", default:false)) {
[LinkedIn: #link(config.contacts.linkedin)[mikhail-liamets]\ ]
}
GitHub: #link(config.contacts.github)[caffeintazedgaze] \
Website: #link(config.contacts.website)[caffeintazedgaze] \
#if (settings.public) {
personnal.contacts.address
}
]
#line(length: 100%)
]
= Summary
#par[
#set text(
eval(settings.font.size.education_description),
font: settings.font.minor_highlight,
)
A *software engineer* with a confident grasp of *infrastructure*, *system design*, and *DevOps*, now seeking opportunities to excel in the realms of solution architecture.
Open to roles ranging from *software engineering* to *DevOps/SRE*.
]
= Skills
#{
for skill in config.skills [
#par[
#set text(
size: eval(settings.font.size.description),
)
#set text(
// size: eval(settings.font.size.tags),
font: settings.font.minor_highlight,
)
*#skill.name*
#linebreak()
#skill.items.join(" • ")
]
]
}
]}
#let mainSection = {[
// #par[
// #set align(center)
// #figure(
// image("images/Kodak 20 Zanvoort Lumi.jpg", width: 6em),
// placement: top,
// )
// ]
#par[
#set text(
size: eval(settings.font.size.heading_huge),
font: settings.font.general,
)
*#config.contacts.name*
]
#par[
#set text(
size: eval(settings.font.size.heading),
font: settings.font.minor_highlight,
top-edge: 0pt
)
#config.contacts.title
]
= Education
#{
for place in config.education [
#par[
#set text(
size: eval(settings.font.size.heading),
font: settings.font.general
)
#place.from #place.to \
#link(place.university.link)[#place.university.name]
]
#par[
#set text(
eval(settings.font.size.education_description),
font: settings.font.minor_highlight,
)
#place.degree #place.major \
#if (place.at("track") != "None"){
[#place.track]
}
]
]
}
= Experience
#{
for job in config.jobs [
#par(justify: false)[
#set text(
size: eval(settings.font.size.heading),
font: settings.font.general
)
#job.from #job.to \
*#job.position*
#link(job.company.link)[\@ #job.company.name]
]
#par(
justify: false,
leading: eval(settings.paragraph.leading)
)[
#set text(
size: eval(settings.font.size.description),
font: settings.font.general
)
#{
for point in job.description [
#h(0.5cm) • #point \
]
}
]
#par(
justify: true,
leading: eval(settings.paragraph.leading),
)[
#set text(
size: eval(settings.font.size.tags),
font: settings.font.minor_highlight
)
#{
let tag_line = job.tags.join(" • ")
tag_line
}
]
]
}
= Hackathons
#{
for hack in config.hackathons [
#par(
justify: true,
leading: eval(settings.paragraph.leading)
)[
#par[
#set text(
size: eval(settings.font.size.heading),
font: settings.font.general
)
- #hack.year #hack.from #hack.to \
#link(hack.hackathon.link)[#hack.hackathon.name] #link(hack.certificate_link)[Credential]
]
#par[
#set text(
size: eval(settings.font.size.description),
font: settings.font.general
)
#hack.description
]
]
]
}
]}
#{
grid(
columns: (2fr, 5fr),
column-gutter: 3em,
sidebarSection,
mainSection,
)
}