1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
|
# encoding : iso-8859-1
@Include { cvdoc }
@SysInclude{ tbl }
def @Blue { rgb .11 .54 .76 } # blue
def @Header right x { @Blue @Colour { @B { x } } }
def @URL left y right x { y @URLLink { rgb .11 .31 .48 } @Colour { x } }
def @LineA { /.3c @OneRow { 0 0 moveto xsize 0 lineto 1 pt setlinewidth stroke } @Graphic }
def @Line { /.3c |.35c @Blue @Colour @OneRow { 0 0 moveto xsize 0 lineto 0.4 pt setlinewidth stroke } @Graphic }
def @Capsule right x { white @Colour @CurveBox margin {0.3c} paint { rgb 0.97 0.97 0.97 } 5c @Wide black @Colour { x } }
def @Dates right x { { rgb 0.33 0.33 0.33} @Colour x }
def @JobPosition right x { @B x }
def @Location right x { |.1c { rgb 0.33 0.33 0.33} @Colour @I x }
def @Techs right x { 8p @Font { rgb 0.33 0.33 0.33} @Colour @I x }
def @JobBullet right x {|.2c 0.57 @Scale @Sym bullet |.2c x}
def @JobIndent right x { |0.56c x }
@Document
@InitialSpace { lout }
//
@Text @Begin
@LeftDisplay {
rragged @Break
{ 17p } @Font @Header { Jérémy Zurcher }
@NL
15p @Font @B { Senior Software Developer }
}
@Place
x{right-xsize+0.3c}
y{top-ysize-2.1c}
{
@Capsule {
@Header { CONTACT DETAILS} /.1c
@IndentedList gap { 0.6v }
@ListItem { @B { Jérémy Zurcher } }
@ListItem { rue des Charmilles 7 }
@ListItem { 1400 Yverdon-les-Bains }
@ListItem { 079{@Char slash}599.84.27 }
@ListItem { "mailto://jeremy@asynk.ch" @URL { jeremy{@Char at}asynk.ch } }
@ListItem { "https://asynk.ch" @URL { https:{@Char slash}{@Char slash}asynk.ch } }
@ListItem { "https://github.com/jeremyz" @URL { https:{@Char slash}{@Char slash}github.com{@Char slash}jeremyz } }
}
}
@LLP
@LLP
@LLP
@LLP
@LeftDisplay @Header { SUMMARY }
A full stack developer experienced in analysis, design, development, testing and implementation of heterogeneous solutions. @LLP
Since 2015, I have been the sole employee of the local Heraeus IT department.
Implementing DevOps on my own has increased my pressure and problem management and greatly expanded my transversal knowledge.
@LLP Striving for excelency, eager to learn, I am also an enjoyable and pleasant team member.
@LLP I'm an avid drummer and a passionate boardgames or wargames player.
#A full stack developer experienced in the analysis, design, development, testing and implementation of heterogeneous solutions. The position I have held alone for the past 10 years has allowed me to develop a broad and deep knowledge, covering many topics.
#An experienced full stack software developper, with a good adaptability
#great capacity to dive into or use unknow source code
#I have had the opportinity to serve as a member
#handle solo coding projects
#team up with others around hugo code base
#this role allowed me to experiment with lots of different technologies ranging from low level web framework to high level critical applications.
#open source
#@LLP
#diligent, eager to, innovative, experiment with cutting edge @LLP
@LLP
@LLP
@LineA
@LLP
@LeftDisplay @Header { EMPLOYMENT HISTORY }
@Tbl
#rule { yes }
margin { .2v }
aformat { @Cell A | @Cell i { right } B }
bformat { @Cell @Location {A} }
cformat { @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan }
#aformat { @StartVSpan @Cell B | @Cell width { 9c } A}
#bformat { @VSpan | @Cell A | @Cell i { right } B }
#cformat { @VSpan | @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan | @HSpan }
#aformat { @Cell width { 11c } A | @Cell i { right } B }
#bformat { @Cell A | @Cell i { left } B | }
#cformat { @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan | @HSpan }
{
@Rowa A {@JobPosition {Senior Software developer @Char slash IT manager} } B { @Dates {2007 - Present} }
@Rowb A {Heraeus Materials SA - Yverdon-les-Bains}
@Rowa A {@JobBullet Full Stack development} B {@Techs{java, jetty:{@Char slash}{@Char slash}, Vaadin, iText, MyBatis, PostgreSQL, Oracle} }
@Rowc A {quality-oriented web applications that manage per item specifications and constraints,
validate the conformity of parts entering and leaving the factory,
generate certificates of compliance shipped to customers.}
@Rowa A {@JobBullet Desktop application development} B {@Techs{C, efl, java, swt, PostgreSQL} }
@Rowc A {production tracking, SPC touch screen applications.}
@Rowa A {@JobBullet Intranet web portal} B {@Techs{ruby, jQuery, FusionCharts, PostgreSQL, Oracle} }
@Rowc A {production and financial charts, search, reporting and data aggregation tools, ticket systems.}
@Rowa A {@JobBullet Automated tools and reports} B {@Techs{ruby, PostgreSQL, Oracle} }
@Rowc A {incorrect data detection, event- or time-triggered reports, web crawling data collection.}
@Rowa A {@JobBullet Server administration.} B {@Techs{Debian, Windows Server 2016, VMware ESXi} }
}
@LLP @Line @LLP
@Tbl
#rule { yes }
margin { .2v }
aformat { @Cell A | @Cell i { right } B }
bformat { @Cell @Location {A} }
cformat { @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan }
{
@Rowa A {@JobPosition {Software developer} } B { @Dates {2006 - 2007} }
@Rowb A {NSA Techonogies SA - Penthalaz-Cossonay}
@Rowa A {@JobBullet Client{@Char slash}Server desktop application to visualy supervise the manufacturing of racing boat sail.} B {@Techs{python, wxPython} }
}
@LLP @Line @LLP
@Tbl
#rule { yes }
margin { .2v }
aformat { @Cell A | @Cell i { right } B }
bformat { @Cell @Location {A} }
cformat { @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan }
{
@Rowa A {@JobPosition {Software developer} } B { @Dates {2005 - 2006} }
@Rowb A {@Location {Décision SA - Vevey} }
@Rowa A {@JobBullet Interfacing a defence race game with a "http://www.youtube.com/watch?v=s5PphNTsT_s" @URL {1:1 scale boat simulator } for @I Alinghi.} B {@Techs{C++, OpenGL} }
}
@LLP @Line @LLP
@Tbl
#rule { yes }
margin { .2v }
aformat { @Cell A | @Cell i { right } B }
cformat { @StartHSpan @Cell m { 0v } mb { .7v } @JobIndent lines @Break A | @HSpan }
{
@Rowa A {@JobPosition {Independant Software developer} } B { @Dates {2004 - 2005} }
@Rowa A {@JobBullet Client and wallet management application for asset managers.} B {@Techs{java, iText, PostgreSQL} }
@Rowa A {@JobBullet Fiduciary reporting software.} B {@Techs{java, iText} }
}
#@LLP
#@LLP
#@LineA
#@LLP
@NP
@LLP
@LLP
@LeftDisplay @Header { ACADEMIC QUALIFICATIONS }
@OneRow |0.1c @Tbl
rule { no }
aformat { @Cell A | @Cell width { 12c } B | @Cell i { right } C | @Cell i { right } D }
{
@Rowa
A { 2022 }
B { "https://www.coursera.org/account/accomplishments/verify/YDA24LMV7YY6" @URL @B{Advanced Algorithms and Complexity} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {UC San Diego} }
@Rowa
A { 2022 }
B { "https://www.coursera.org/account/accomplishments/verify/XW5WVH44NESV" @URL @B{Machine Learning} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {Stanford University} }
@Rowa
A { 2016 }
B { "https://www.coursera.org/account/accomplishments/verify/JSX882MUUWY2" @URL @B{Data Structures} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {UC San Diego} }
@Rowa
A { 2016 }
B { "https://www.coursera.org/account/accomplishments/verify/DFZLKFYRM87F" @URL @B{Algorithms on Graphs} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {UC San Diego} }
@Rowa
A { 2016 }
B { "https://www.coursera.org/account/accomplishments/verify/GWRU2JKPAK26" @URL @B{Algorithms on Strings} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {UC San Diego} }
@Rowa
A { 2016 }
B { "https://www.coursera.org/account/accomplishments/verify/AFFHRMRFS8RW" @URL @B{Algorithmic Toolbox} }
C { "http://coursera.org" @URL @B Coursera } D { @Location {UC San Diego} }
@Rowa
A { 2014 }
B { "http://asynk.ch/data/coursera_mobile_applications_android.pdf" @URL @B{ Programming Mobile Applications for Android } }
C { "http://coursera.org" @URL @B Coursera } D { @Location {University of Maryland} }
@Rowa
A { 2014 }
B { @B{ Algorithms, Part I and II } }
C { "http://coursera.org" @URL @B Coursera } D { @Location{Princeton University} }
@Rowa
A { 2013 }
B { "http://asynk.ch/data/coursera_functional_programming.pdf" @URL @B{ Functionnal Programming Principles in Scala} }
C { "http://coursera.org" @URL @B Coursera } D { @Location EPFL }
@Rowa
A { 2004 }
B { @B{ HES Software Engineer formation } }
C { "https://heig-vd.ch" @URL HEIG-VD } D { @Location Yverdon-les-Bains }
@Rowa
A { 1999 }
B { @B {Foundation Course } }
C { "https://www.cpnv.ch" @URL CPNV } D { @Location Yverdon-les-Bains }
@Rowa
A { 1998 }
B { @B{ Maturité S } (Science stream) }
C { CESS Morges } D { @Location Morges }
}
@LLP
@LLP
@LineA
@LLP
@LeftDisplay @Header { MAJOR OPEN SOURCE CONTRIBUTIONS }
@OneRow @Tbl
rule { no }
aformat { @Cell A | @Cell B | @Techs @Cell i { right } C }
{
@Rowa
A { @JobBullet "http://enlightenment.org" @URL @B Enlightenment }
B { linux desktop, core developer 2012-2014, object system rewrite. } #, various optimisations }
C { C }
@Rowa
A { @JobBullet "http://hydrogen-music.org" @URL @B Hydrogen }
B { drum machine, migration from scons to cmake, internal data structures rewrite. } #, gui code refactorisation }
C { C++ }
@Rowa
A { @JobBullet "http://rubini.us" @URL @B Rubinius }
B { FFI capabilities enhancement. }
C { C++ @Char slash ruby }
}
@LLP
@LLP
@LineA
@LLP
@LeftDisplay @Header { MAJOR PERSONAL PROJECTS }
@OneRow @Tbl
rule { no }
aformat { @Cell A | @Cell B | @Techs @Cell i { right } C }
{
@Rowa
A { @JobBullet "https://store.steampowered.com/app/1568240/Castle_Itter__The_Strangest_Battle_of_WWII/" @URL @B {Castle Itter} }
B { official digital version of @I {DVG}'s boardgame for Android {@Char ampersand}Steam. }
C { godot @Char slash GDScript }
@Rowa
A { @JobBullet "https://asynk.ch/rustanddust/" @URL @B RustAndDust}
B { android @Char ampersand desktop strategy board game. }
C { java @Char slash libGDX }
@Rowa
A { @JobBullet "https://github.com/jeremyz/godot-hexgrid" @URL @B godot-hexgrid}
B { 3D line of sight, shortest path, reachable tiles, influence range ... on hexgrid. }
C { GDScript }
@Rowa
A { @JobBullet "https://github.com/jeremyz/ffi-efl" @URL @B ffi-efl}
B { FFI binding to the Enlightenment Foundation Libraries. }
C { ruby }
@Rowa
A { @JobBullet "https://github.com/jeremyz/zorglub" @URL @B zorglub }
B { versatile nano web application framework. }
C { ruby }
@Rowa
A { @JobBullet "https://github.com/jeremyz/edoors-ruby" @URL @B edoors-ruby }
B { ruby rewrite of evenja, a C++ data centric application framework. }
C { ruby }
@Rowa
A { @JobBullet "http://cgit.asynk.ch/lock_free" @URL @B lock_free }
B { compare-and-swap based lock free structures playground. }
C { C }
}
@LLP
@LLP
@LineA
@LLP
@LeftDisplay @Header { SKILLS }
@OneRow |0.1c @Tbl
rule { no }
aformat { @Cell @B A | @Cell B }
{
@Rowa
A { languages }
B { C, C++, java, ruby, python, bash, html, css, js, jquery } #, with some basis scala, rust}
@Rowa
A { build systems }
B { meson, make, cmake, ant, maven, gradle, gem }
@Rowa
A { test framework }
B { junit, rspec, ctest, check, rcov }
@Rowa
A { databases }
B { PostgreSQL, SQLite, Oracle, JDBC, MyBatis }
@Rowa
A { GUI toolkits }
B { Vaadin, SWT, Qt, efl, wxWidgets, GTK+}
@Rowa
A { version control }
B { git, github, gitlab, gitolite, cgit }
# { shell scripting (bash, sed, gawk) }
# { nginx, lighttpd, tomcat }
# { linux system administration, debian, archlinux }
}
#@LLP
#@LLP
#@LineA
#@LLP
#@LeftDisplay @Header { HOBBIES }
#@LLP
#I'm an avid drummer, I've played on a few CDs and went twice on tour with 2 different bands.
#I enjoy playing deep and complicated boardgames.
#@LLP
# Programming is my passion and has been for the last 15 years.
# Being a dedicated, creative and confident developer, I am continuously challenging myself.
# I possess extensive knowledge and interest in many distinctive domains
# from low level algorithms and structure optimisation to high level frameworks.
# Ability to increase reliability, maximise productivity, and introduce system efficiencies.
# Being a responsible and career-minded worker,
# I am accomplished in independant as well as collaborative project management.
# { ragged nohyphen } @Break {Quick access with handling major existing code base. } }
# { ragged nohyphen } @Break {Capable of designing solutions from scratch. } }
# { ragged nohyphen } @Break {Keen to carry out extensive tests. } }
# { ragged nohyphen } @Break {Used to working with strict protocols. } }
# { ragged nohyphen } @Break { High complexity problem comprehension. } }
# { Experienced in achieving autonomous projects. }
# { Experienced in collaborative work. }
# { ragged nohyphen } @Break { English oral and written. } }
# { Eager to learn }
# { Perfectionist }
# { Communication skills }
# { Enthusiast }
# { Attention to details }
# { Levelheaded and pleasant character }
@End @Text
|