-
Notifications
You must be signed in to change notification settings - Fork 0
/
cv.pug
240 lines (211 loc) · 10.9 KB
/
cv.pug
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
//- vim: ft=pug sw=2 ts=2 et tw=100 cc=101
include mixins.pug
title Anthony Carapetis - Curriculum Vitae
style
include:sass style.sass
meta(name='viewport', content='width=device-width, initial-scale=1.0')
.page
#heading
.main
h1 Anthony Carapetis
h2 Curriculum Vitae
.view-as-pdf
a(href='cv.pdf') View as PDF
.contact
//- put private contact details in private.pug:
include private.pug
.email
a(href='mailto:[email protected]') [email protected]
.website
a(href='https://a.carapetis.com') a.carapetis.com
+section('At a Glance')
.columns
.item
.titleline
span.title Who I am
:markdown-it
- Software developer with 10+ years experience in web technologies, data manipulation and
software systems integration.
- Mathematics PhD in geometry and differential equations, with practical experience in
numerical simulation and statistical modelling.
.item
.titleline
span.title My Toolbox
:markdown-it
- Python, C++, NodeJS, Bash, Perl, Java
- JavaScript/TypeScript, HTML5, CSS3, React, Web Components, Browser APIs
- MySQL, SQLite, PostgreSQL
- Linux, AWS, Terraform, Docker, Git
+section('Work History')
+item(title='Software Engineer',
from='Jan 2019',
contract=true,
institution='Geoscience Australia',
where='Canberra')
:markdown-it
The National Earthquake Alerts Centre (NEAC) operates highly-available software systems that
detect earthquakes and disseminate the resulting information. I lead a small team of
engineers responsible for maintaining and enhancing these systems, providing architectural
guidance and fostering a culture of code review and continual improvement.
- Led an overhaul of our infrastructure management and DevOps practices, allowing us to
quickly provision functional copies of our system, e.g. for training or automated testing,
on **AWS** using **Terraform**.
- Developed a custom data platform for the quality control, storage, discovery and
dissemination of earthquake-related data of all kinds.
Built on **Python/Flask/SQLAlchemy**, **PostgreSQL/PostGIS**, [lit-element][lit],
**JupyterHub**.
- Integrated the [USGS ShakeMap][shakemap] model into our system,
allowing the NEAC to rapidly estimate and visualize the areas most effected by an
earthquake. I worked with geoscientists to tailor the configuration to Australian
seismology, and added several new features to the ShakeMap software to meet our
requirements, which I subsequently contributed back to the USGS repository.
- Improved
[the NEAC's custom earthquake inversion software][wphase] and managed its open-source
release: wrote a test suite, refactored, ported to Python 3, improved performance,
identified and fixed bugs, enhanced statistical models, replaced closed-source code with
**scipy** equivalents.
- Developed ETL pipelines to integrate external data into our operational system.
- Created re-usable data extraction, analysis and visualization tools with **Jupyter,
pandas + scipy** to support reporting and decision making by the NEAC's operations and
science leadership.
[lit]: https://lit.dev/
[shakemap]: https://github.com/usgs/shakemap
[wphase]: https://github.com/GeoscienceAustralia/ga-wphase
+item(title='Solutions Developer',
from='2021', to='2023',
institution='Diversity Arrays Technology',
where='Canberra')
:markdown-it
I consulted with the genomics company Diversity Arrays Technology (DArT) one day a week.
I:
- Developed high-performance software for statistical analysis of DNA using **C++/CUDA**
and **Python**.
- Built a proof-of-concept cloud data workbench for genomics, using
**TypeScript/React** and **Docker** to integrate the open-source Eclipse Theia IDE
platform with DArT's existing tools.
- Provided advice and initial implementation for various DevOps concerns, e.g.
implementing compilation and packaging of MATLAB code using **GitLab CI** and CUDA
containerization using **nvidia-docker**.
+item(title='Software Engineer',
from='May', to='Dec 2018',
institution='CSIRO',
where='Canberra')
:markdown-it
A fixed-term position at the *High Resolution Plant Phenomics Centre* developing software
for agriculture and plant science.
My main focus was developing infrastructure to exploit time series data gathered from sensor
networks:
- Reworked data ingest processes and set up a new storage and aggregation solution
using **InfluxDB**.
- Implemented a HTTP API to manage and retrieve time series data and metadata.
- Designed and developed a web dashboard on top of this API to provide diagnostics and
basic data visualization. **JavaScript (ES6)**, **D3.js**, **Plotly**, **HTML5**,
**SVG**, **CSS3**, **Web Components**.
Most of this work was integrated into an existing web application built on a
**Linux**+**Apache**+**SQLite**+**PHP** stack.
I also contributed to other projects, including a REST microservice built in
**Java**/**Spring** and deployed using **Docker**.
+item(title='Casual Sessional Teacher',
from=2015, to=2017,
institution='Australian National University',
where='Canberra')
:markdown-it
Teaching and marking for undergraduate classes in:
*Introduction to Mathematical Thinking*,
*Advanced Mathematics and Applications*,
*Black Holes and Cosmology*.
.page
+section('Work History (Continued)')
+item(title='Software Developer',
from=2006, to=2013,
institution='Unisolve Pty Ltd',
where='Melbourne')
:markdown-it
Design and full-stack development of web applications & administration of associated
systems and databases.
I worked on various large web applications, mostly built on **Linux**+**Apache**+**Perl**
and backed by **MySQL** or **PostgreSQL**. On the frontend, I used JavaScript (**JQuery**,
**ExtJS**) to create interactive user experiences.
Many of these applications were business systems that interfaced with older proprietary
software; so I became proficient in systems integration, data wrangling/ETL and job
scheduling.
+section('Education')
+item(title='Doctor of Philosophy (Mathematics)',
from=2013, to=2018,
institution='Australian National University',
where='Canberra')
:markdown-it
**PhD Thesis:**
[*Geometric Flows of Diffeomorphisms*][thesis]
**Supervisor:** Ben Andrews
Geometric flows hijack what we know about the physics of heat flow to study geometry: by
making a mathematical analogy between "spikiness" and heat, we can deform
poorly-understood spiky objects to simple smooth ones; and by understanding the
mathematical properties of this deformation we can derive new knowledge about the spiky
things we started with. In my thesis research, I applied this methodology to a previously
unstudied class of flow.
[thesis]: https://openresearch-repository.anu.edu.au/handle/1885/142453
+item(title='Bachelor of Science Advanced (with Honours)',
from=2009, to=2012,
institution='Monash University',
where='Melbourne')
:markdown-it
**Majors:** Mathematics, Physics
**Honours Thesis:** *The Riemannian Penrose Inequality and the Inverse Mean Curvature Flow*
**Supervisor:** Gilbert Weinstein
The universe should weigh at least as much as the biggest black hole it contains, but the
mathematical embodiment of this fact (the Penrose Inequality) is remarkably difficult to
derive from general relativity: it took until 1999 for even a special case to be proven.
This thesis was an exposition of the problem and its solution intended for a slightly less
expert audience.
+section('Undergraduate Research')
+item(title='Summer Vacation Research Scholarship',
from=2011, to=2012,
institution='Monash University',
where='Melbourne')
:markdown-it
Reading project on the problem of *minimal surfaces*: if you dip a wonky loop of wire in a
bucket of soapy water, what is the shape of the resulting bubble? The techniques developed
to study this problem are now ubiquitous in physics and geometry.
+item(title='Mathematics Research Project',
when=2011,
institution='Monash University',
where='Melbourne')
:markdown-it
Reading project in *comparison geometry*, the quantitative study of how the familiar
relationships of lengths and angles change when we work on a curved surface (or in a
curved space).
+item(title='AMSI Vacation Research Scholarship',
from=2010, to=2011,
institution='AMSI/Monash University',
where='Melbourne')
:markdown-it
Numerical investigation of *p*-adic zeta functions using the mathematical programming
language PARI/GP. Culminated in a presentation at the CSIRO Big Day In.
+section('Other Experience')
+item(title="Some things don't come from work or school.",noline=true)
:markdown-it
- Interactive Media: as a spin-off from my thesis research, I combined
numerical simulations of partial differential equations with my expertise in frontend web
development to develop interactive visualizations of some geometric flows, which you can
play with online at [a.carapetis.com/csf/][csf] (**TypeScript** + **Canvas**) and
[a.carapetis.com/diff_flow/][diff_flow] (**PixiJS**).
- I'm a maintainer of (and primary contributor to) the open-source library
[**sqlakeyset**][sqlakeyset].
- My professional history has been concentrated on a few languages, but I have hobbyist
experience with many others, including **Rust**, **Haskell** and **Ruby**.
- Graphic design (hobbyist, volunteer and freelance projects) using **Inkscape** and
**GIMP**.
[csf]: https://a.carapetis.com/csf/
[diff_flow]: https://a.carapetis.com/diff_flow/
[sqlakeyset]: https://github.com/djrobstep/sqlakeyset
.footer
p I designed this document from scratch and typeset it using HTML and CSS3.
p
| See
a(href='https://github.com/acarapetis/cv') github.com/acarapetis/cv
| for the source code.
template#page-header
div.blank
template#page-footer
div.blank