Skip to content

Commit 4f718f7

Browse files
committed
cv: update
1 parent ecfff6a commit 4f718f7

File tree

2 files changed

+93
-65
lines changed

2 files changed

+93
-65
lines changed

src/cv/common/lib.typ

Lines changed: 54 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,12 @@
3232
set text(size: font-defaults.footnotesize)
3333
block(
3434
grid(
35-
columns: (1fr, 4fr),
35+
columns: (auto, auto),
36+
column-gutter: 1em,
3637
row-gutter: .5em,
37-
date,
38+
{
39+
date
40+
},
3841
grid(
3942
columns: (1fr, 1fr),
4043
align: (left, right),
@@ -51,36 +54,50 @@
5154
}
5255

5356
#let jobEntry(
54-
title: "",
55-
company: "",
56-
location: "",
57-
date: "",
58-
type: "",
57+
title: none,
58+
company: none,
59+
location: none,
60+
date: none,
61+
type: none,
5962
tags: (),
6063
body,
6164
) = {
62-
block(
63-
grid(
64-
columns: (1fr, 5fr),
65-
align: (left, left),
66-
)[
67-
#date\
68-
#text(fill: black.lighten(70%))[#type]\
69-
#text(fill: black.lighten(70%))[#location]
70-
][
71-
#if title != "" and company != "" {
65+
grid(
66+
columns: (auto, 1fr),
67+
row-gutter: 0.5em,
68+
column-gutter: 1em,
69+
align: (left, left),
70+
..(
71+
..if date != none { (date,) },
72+
..if title != none and company != none {
73+
(
74+
grid(
75+
columns: (1fr, 1fr),
76+
align: (left, right),
77+
)[
78+
#text(weight: "bold", title)
79+
#text(fill: black.lighten(90%), box(width: 1fr, repeat[.]))
80+
][
81+
#text(fill: black.lighten(90%), box(width: 1fr, repeat[.]))
82+
#text(fill: black.lighten(70%))[#company]
83+
],
84+
)
85+
},
86+
{
87+
set text(fill: black.lighten(70%))
7288
grid(
73-
columns: (1fr, 1fr),
74-
align: (left, right),
75-
text(weight: "bold", title), company,
89+
row-gutter: .5em,
90+
type, location
7691
)
77-
}
78-
#body
79-
#{
80-
set text(font: "New Computer Modern Mono", fill: black.lighten(60%))
81-
grid(columns: 1fr, tags.join(" / "))
82-
}
83-
],
92+
},
93+
{
94+
body
95+
{
96+
set text(font: "New Computer Modern Mono", fill: black.lighten(60%))
97+
grid(columns: 1fr, tags.join(" / "))
98+
}
99+
},
100+
)
84101
)
85102
}
86103

@@ -105,18 +122,16 @@
105122
body,
106123
title: "",
107124
) = {
108-
block(
109-
grid(rows: 2)[
110-
#{
111-
block(fill: black, inset: .3em)[
112-
#text(fill: white, size: font.large)[#upper(title)]
113-
]
114-
}
115-
][
116-
#v(.5em)
117-
#body
118-
],
119-
)
125+
grid(rows: 2, row-gutter: 0em)[
126+
#{
127+
block(fill: black, inset: .3em)[
128+
#text(fill: white, size: font.large)[#upper(title)]
129+
]
130+
}
131+
][
132+
#v(.35em)
133+
#body
134+
]
120135
}
121136

122137
#let featureBar(

src/cv/cv-theme.typ

Lines changed: 39 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
number-align: center,
1515
paper: "a4",
1616
footer: [
17-
#{
18-
set text(size: font-defaults.tiny, fill: black.lighten(75%))
19-
[
20-
#link("https://github.com/drupol/cv/commit/" + shortRev)[
21-
Build date: #builddate - Revision: #shortRev
22-
]
23-
]
24-
}
17+
#{
18+
set text(size: font-defaults.tiny, fill: black.lighten(75%))
19+
[
20+
#link("https://github.com/drupol/cv/commit/" + shortRev)[
21+
Build date: #builddate - Revision: #shortRev
22+
]
23+
]
24+
}
2525
],
2626
)
2727

@@ -54,17 +54,29 @@
5454
][
5555
#{
5656
grid(columns: 3, rows: 2, column-gutter: 1em, row-gutter: .5em, align: left)[
57-
#linkItem(icon: "map-pin")[#link("https://www.openstreetmap.org//#map=15/50.59690/4.32280")[Nivelles, Belgium]]
57+
#linkItem(
58+
icon: "map-pin",
59+
)[#link("https://www.openstreetmap.org//#map=15/50.59690/4.32280")[Nivelles, Belgium]]
5860
][
59-
#linkItem(icon: "github")[#link("https://github.com/drupol")[github.com/drupol]]
61+
#linkItem(
62+
icon: "github",
63+
)[#link("https://github.com/drupol")[github.com/drupol]]
6064
][
61-
#linkItem(icon: "envelope")[#link("mailto:pol.dellaiera@protonmail.com")[pol.dellaiera\@protonmail.com]]
65+
#linkItem(
66+
icon: "envelope",
67+
)[#link("mailto:pol.dellaiera@protonmail.com")[pol.dellaiera\@protonmail.com]]
6268
][
63-
#linkItem(icon: "globe")[#link("https://not-a-number.io")[not-a-number.io]]
69+
#linkItem(
70+
icon: "globe",
71+
)[#link("https://not-a-number.io")[not-a-number.io]]
6472
][
65-
#linkItem(icon: "github")[#link("https://github.com/loophp")[github.com/loophp]]
73+
#linkItem(
74+
icon: "github",
75+
)[#link("https://github.com/loophp")[github.com/loophp]]
6676
][
67-
#linkItem(icon: "mastodon")[#link("https://mathstodon.xyz/@Pol")[\@pol\@mathstodon.xyz]]
77+
#linkItem(
78+
icon: "mastodon",
79+
)[#link("https://mathstodon.xyz/@Pol")[\@pol\@mathstodon.xyz]]
6880
]
6981
}
7082
]
@@ -105,7 +117,7 @@
105117
company: [#link("https://ec.europa.eu")[European Commission]],
106118
location: "Bruxelles",
107119
type: "Full time",
108-
date: "6/2024 -- present",
120+
date: "06/2024 present",
109121
tags: (
110122
link("https://en.wikipedia.org/wiki/Python_(programming_language)")[Python],
111123
link("https://en.wikipedia.org/wiki/MongoDB")[MongoDB],
@@ -121,7 +133,7 @@
121133
#link("https://ec.europa.eu/info/departments/informatics_en")[Digit B.4] (#emph[Software Engineering Capabilities]).
122134
In this role, I am part of a team of developers, responsible for
123135
developing #emph[GPT\@EC], an internal AI chatbot application based on
124-
GPT technology. My primary focus is on designing and building a
136+
GPT technology, using open-source software. My primary focus is on designing and building a
125137
scalable, robust solution, ensuring optimal performance, security, and
126138
integration within the European Commission's ecosystem.
127139
]
@@ -131,7 +143,7 @@
131143
company: [#link("https://ec.europa.eu")[European Commission]],
132144
location: "Bruxelles",
133145
type: "Full time",
134-
date: "7/2019 -- 6/2024",
146+
date: "07/2019 — 06/2024",
135147
tags: (
136148
link("https://en.wikipedia.org/wiki/Nix_(package_manager)")[Nix],
137149
link("https://symfony.com/")[Symfony],
@@ -145,15 +157,17 @@
145157
Hired on behalf of a consultancy company, working at
146158
#link("https://ec.europa.eu/info/departments/informatics_en")[Digit B.4] (#emph[Software Engineering Capabilities]),
147159
where I work in the Developer's Journey team. In this role, I guide teams and clients
148-
through the migration process from ColdFusion to PHP. Additionally, I design and implement authentication libraries
160+
through the migration process from ColdFusion to PHP. Additionally, I design and implement open-source authentication libraries
149161
solutions and the necessary development infrastructure for multiple teams, with
150162
a focus on creating reproducible and ephemeral development environments based on Nix.
151163
]
152164

153-
#jobEntry(date: [#text(
154-
size: font-defaults.footnotesize,
155-
fill: black.lighten(75%),
156-
)[Before 2019]])[
165+
#jobEntry(
166+
type: [#text(
167+
size: font-defaults.footnotesize,
168+
fill: black.lighten(75%),
169+
)[Before 2019]],
170+
)[
157171
#{
158172
set text(size: font-defaults.footnotesize, fill: black.lighten(75%))
159173
[This is the public and short version of my CV. Please ask for the full
@@ -172,7 +186,7 @@
172186
school: [#link("https://web.umons.ac.be")[University of Mons]],
173187
type: "Full time",
174188
grade: [Cum Laude],
175-
date: "2021 -- 2024",
189+
date: "2021 2024",
176190
)[
177191
Thesis: #link("https://doi.org/10.5281/zenodo.12666898")["Reproducibility in Software Engineering"]
178192
]
@@ -182,7 +196,7 @@
182196
school: [#link("https://www.heh.be")[Haute École en Hainaut]],
183197
type: "Full time",
184198
grade: [Cum Laude],
185-
date: "2001 -- 2005",
199+
date: "2001 2005",
186200
)[
187201
IT and systems, specialisation in network and telecommunications
188202
]
@@ -191,7 +205,7 @@
191205
title: "Music theory / Piano",
192206
school: [#link("https://academiedenivelles.be")[Académie de Nivelles]],
193207
type: "Full time",
194-
date: "2018 -- 2021",
208+
date: "2018 2021",
195209
)[]
196210
]
197211
][
@@ -254,6 +268,5 @@
254268
- Only when the last tree has died and the last river been poisoned and the last fish been caught will we realize we cannot eat money. - Indian author
255269
- We may regard the present state of the universe as the effect of its past and the cause of its future. An intellect which at a certain moment would know all forces that set nature in motion, and all positions of all items of which nature is composed, if this intellect were also vast enough to submit these data to analysis, it would embrace in a single formula the movements of the greatest bodies of the universe and those of the tiniest atom; for such an intellect nothing would be uncertain and the future just like the past would be present before its eyes. - Pierre Simon Laplace
256270
]
257-
258271
}
259272
}

0 commit comments

Comments
 (0)