diff --git a/cv.pug b/cv.pug index b449735..0803eb4 100644 --- a/cv.pug +++ b/cv.pug @@ -50,43 +50,48 @@ meta(name='viewport', content='width=device-width, initial-scale=1.0') 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 code review to affirm a culture of continual improvement. I have: - - - Architected 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](https://lit.dev/), **JupyterHub**. - - Integrated the [USGS ShakeMap](https://github.com/usgs/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](https://github.com/GeoscienceAustralia/ga-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. - - Used **Jupyter Notebooks** to quickly create re-usable data analysis and visualization - tools to support reporting and decision making by the NEAC's operations and science - leadership. + 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='Dec 2020', + from='2021', to='2023', institution='Diversity Arrays Technology', where='Canberra') :markdown-it - I'm consulting with the genomics company Diversity Arrays Technology (DArT) one day a week. I am: + I consulted with the genomics company Diversity Arrays Technology (DArT) one day a week. + I: - - Developing high-performance software for statistical analysis of DNA using **C++/CUDA**. - - Building a proof-of-concept cloud data workbench for genomics, using + - 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. - - Providing advice and initial implementation for various DevOps concerns, e.g. + - 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**. @@ -150,23 +155,25 @@ meta(name='viewport', content='width=device-width, initial-scale=1.0') where='Canberra') :markdown-it **PhD Thesis:** - [*Geometric Flows of Diffeomorphisms*](https://openresearch-repository.anu.edu.au/handle/1885/142453) - **Supervisor:** Ben Andrews + [*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. + 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 + **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. @@ -204,17 +211,20 @@ meta(name='viewport', content='width=device-width, initial-scale=1.0') +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/](https://a.carapetis.com/csf/) (**TypeScript** + **Canvas**) and - [a.carapetis.com/diff_flow/](https://a.carapetis.com/diff_flow/) (**PixiJS**). + 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**](https://github.com/djrobstep/sqlakeyset). + [**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**. + experience with many others, including **Rust**, **Haskell** and **Ruby**. - Graphic design (hobbyist, volunteer and freelance projects) using **Inkscape** and - **GIMP**. + **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.