diff --git a/.gitignore b/.gitignore index 2000f5d..e66e14c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,11 @@ public/ -static/processed_images/ \ No newline at end of file +static/processed_images/ +*.log +cv/*.gz +cv/*.xml +*.aux +*.bbl +*.bcf +*.blg +*.out +cv/*.pdf \ No newline at end of file diff --git a/cv/main.tex b/cv/main.tex index 3a6b585..a416f47 100644 --- a/cv/main.tex +++ b/cv/main.tex @@ -13,15 +13,7 @@ % Example photograph taken from Wikimedia Commons % https://commons.wikimedia.org/wiki/File:Kiara_Krit_passport.jpg -\usepackage{hyperref} -\hypersetup{ - colorlinks=true, - linkcolor=blue, - filecolor=magenta, - urlcolor=blue, - pdftitle={Overleaf Example}, - pdfpagemode=FullScreen, -} + \usepackage{simplecv} \boldname{Bond-Preston}{Jack}{Mr.} @@ -39,14 +31,14 @@ % Page One \import{sections/}{experience.tex} -\import{sections/}{education.tex} -\import{sections/}{publications.tex} +\import{sections/}{skills.tex} -%\pagebreak +\pagebreak % Page Two %\import{sections/}{teaching.tex} -\import{sections/}{skills.tex} +\import{sections/}{education.tex} +\import{sections/}{publications.tex} \import{sections/}{languages.tex} %\import{sections/}{projects.tex} %\import{sections/}{awards.tex} diff --git a/cv/sections/experience.tex b/cv/sections/experience.tex index 0354d2d..6be798b 100644 --- a/cv/sections/experience.tex +++ b/cv/sections/experience.tex @@ -7,11 +7,11 @@ {\textbf{Arm Ltd.}}{Cambridge, UK (Hybrid)} {Software Engineer in Infrastructure Application Solutions group}{2023\textendash Current} \innerlist{ - \entry{Contributing to the open source DPDK (Data Plane Development Kit) project, including making large performance improvements to the OpenSSL PMD (Poll-Mode Driver) - as well as changes to OpenSSL itself.} - \entry{Research and implementations in the area of HPC/AI infrastructure/networking, especially RDMA and memory management on heterogeneous memory systems.} - \entryextra{Co-ordinating collaboration between IAS and Secure Libraries teams, helping to ensure we enable maximum IPSec performance.} - \entryextra{Technical mentorship for new graduate engineer.} - \entryextra{Code reviews across multiple projects including VPP, Snort3, DPDK, and PyTorch.} + \entry{Contributing to the open source DPDK (Data Plane Development Kit) project (using C), including making large performance improvements to the OpenSSL PMD (Poll-Mode Driver) - as well as changes to OpenSSL itself (using C and arm64 assembly).} + \entry{Research and implementations in the area of HPC/AI infrastructure/networking, especially RDMA and memory management on heterogeneous memory systems - comprising work on projects including PyTorch (using C++ and Python), Gloo (using C++).} + \entryextra{Coordinating collaboration between IAS and Secure Libraries teams, helping to ensure enablement of competitive IPSec performance on Arm platforms.} + \entryextra{Technical mentorship for graduate engineer.} + \entryextra{Code reviews across multiple projects including DPDK [C], PyTorch [C++, Python], OpenSSL [C, arm64 assembly], VPP [C], Snort3 [C++].} \entryextra{Knowledge sharing documents and presentations, especially around OpenSSL performance work and heterogeneous memory management.} } @@ -19,7 +19,7 @@ {\textbf{AMD (formerly Xilinx / Solarflare)}}{Cambridge, UK (Hybrid)} {Software Engineer in Adaptive and Embedded Computing Group}{2022\textendash 2023} \innerlist{ - \entry{Developing AMDs transparent, ultra-low-latency, kernel-bypass network stack - Onload.} + \entry{Developing AMDs transparent, ultra-low-latency, kernel-bypass network stack - Onload - using C.} \entryextra{Performance optimisation and benchmarking/profiling work.} \entryextra{Improvements, debugging, and bugfixes for teaming/bonding support.} \entryextra{Extending and modernising internal automated tests} @@ -30,7 +30,7 @@ {Graduate Software Engineer in Open Source Software Group}{2021\textendash2022} \innerlist{ \entry{Porting low-level software to the Morello (CHERI) platform.} - \entryextra{Produced patches in C and AArch64 assembly as part of a project porting the open-source C standard library implementation musl to a new prototype platform.} + \entryextra{Produced patches as part of a project porting the open-source C standard library implementation musl to a new prototype platform (using C and arm64 assembly).} \entryextra{Ported larger components of the C library, including the memory allocator and POSIX threads. Considered security and hardening against memory safety bugs at every stage of design and implementation.} \entryextra{Created a minimal test distribution of Linux for use on an Arm Fixed Virtual Platform, with the ability to run userspace applications in pure-capability mode. This provided the framework for adding FVP-based testing to the CI pipeline (alongside existing emulator-based testing) for further proof of functionality.} \entryextra{Liased with multiple teams to ensure coordination between libc, kernel ABI, compilers and debuggers.} diff --git a/cv/sections/publications.tex b/cv/sections/publications.tex index ae35ec2..197847e 100644 --- a/cv/sections/publications.tex +++ b/cv/sections/publications.tex @@ -1,5 +1,5 @@ -\section{Presentations and Publications} +\section{Presentations} \outerlist{ @@ -7,7 +7,7 @@ {\textbf{DPDK Summit}}{Online Presentation} {\href{https://www.youtube.com/watch?v=sPhktvMBYhs}{OpenSSL Crypto PMD - Analysis and Optimisations}}{October 2024} \innerlist{ - \entry{Proposed and delivered a talk on the work done to optimise DPDK's OpenSSL PMD, along with potential future work and points requiring community coordination.} + \entry{Submitted and delivered a talk on my work optimising DPDK's OpenSSL Poll Mode Driver (PMD), along with potential future work and points requiring community coordination.} \entryextra{Fielded and answered numerous questions from community members.} } } diff --git a/cv/sections/skills.tex b/cv/sections/skills.tex index 6db0dcf..1fcfc8d 100644 --- a/cv/sections/skills.tex +++ b/cv/sections/skills.tex @@ -2,7 +2,7 @@ \section{Skills} \denseouterlist{ -\entry{\textbf{Programming Languages:} C, C++, Python, Assembly (amd64 and AArch64)} +\entry{\textbf{Programming Languages:} C, C++, Python, Assembly (x86-64 and AArch64)} \entry{\textbf{Debugging and Performance:} Perf, GDB \& LLDB, rr, Flamegraph, Wireshark} \entry{\textbf{Architecture:} Arm Architecture, Arm Standard Interconnects, PCIe, Heterogeneous Systems} \entry{\textbf{Build Systems:} GNU Make, CMake, Meson} diff --git a/cv/simplecv.sty b/cv/simplecv.sty index 58330a8..ada50c8 100644 --- a/cv/simplecv.sty +++ b/cv/simplecv.sty @@ -14,6 +14,15 @@ \usepackage{graphicx} % Importing graphics \usepackage[export]{adjustbox} % Aligning margins +\hypersetup{ + colorlinks=true, + linkcolor=blue, + filecolor=magenta, + urlcolor=blue, + pdftitle={Overleaf Example}, + pdfpagemode=FullScreen, +} + % % Chinese % \usepackage{xeCJK} % \setCJKmainfont{BabelStone Han} diff --git a/static/cv.pdf b/static/cv.pdf index 2d81990..6af1f40 100644 Binary files a/static/cv.pdf and b/static/cv.pdf differ