cv

cv.git
git clone git://git.lenczewski.org/cv.git
Log | Files | Refs | README | LICENSE

commit 5b3812092850a8654fd15808d6e22fb2eb48bf3a
Author: Mikołaj Lenczewski <mblenczewski@gmail.com>
Date:   Mon, 16 Jun 2025 18:45:51 +0100

Import cv

Diffstat:
A.editorconfig | 15+++++++++++++++
A.gitignore | 1+
ALICENSE | 21+++++++++++++++++++++
AREADME.md | 2++
Abuild | 6++++++
Acommon.sh | 8++++++++
Acv.tex | 178+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7 files changed, 231 insertions(+), 0 deletions(-)

diff --git a/.editorconfig b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true + +[*.sh] +indent_style = tab +indent_size = 8 + +[*.tex] +indent_style = space +indent_size = 2 + diff --git a/.gitignore b/.gitignore @@ -0,0 +1 @@ +out/ diff --git a/LICENSE b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Mikolaj Lenczewski + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md @@ -0,0 +1,2 @@ +## Curriculum Vitae +My private CV repo diff --git a/build b/build @@ -0,0 +1,6 @@ +#!/bin/sh + +. ./common.sh + +pdflatex "${OPTS}" "${SRC}" + diff --git a/common.sh b/common.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +export OUT="./out" +export OPTS="-output-directory=${OUT}" +export SRC="cv.tex" + +[ ! -d ${OUT} ] && mkdir ${OUT} + diff --git a/cv.tex b/cv.tex @@ -0,0 +1,178 @@ +\documentclass{article} + +\usepackage[top=0.2in,bottom=0.2in,left=0.5in,right=0.5in]{geometry} +\usepackage{xcolor} +\usepackage{hyperref} % should be last package imported for some reason + +%% this package allows us to customise the format of our \begin{itemize} blocks +\usepackage{enumitem} + +%% header for each CV page +\newcommand{\cvheader}{ +\begingroup + \begin{center} + \hsplit{\large \textbf{Mikołaj Bartosz Lenczewski}}{\href{https://lenczewski.org}{https://lenczewski.org}} \\ + Email: \href{mailto:mikolaj@lenczewski.org}{mikolaj@lenczewski.org} \hfill + Mobile: +44 7512 734 132 \hfill + \href{https://git.lenczewski.org}{https://git.lenczewski.org} \\ \hrulefill + \end{center} +\endgroup +} + +%% custom environment for consistent formatting of each CV section +%% takes as parameters the first letter of the header text (making it big) and +%% the remainder of the header text (making it smaller) +\newenvironment{cvsection}[2]{\noindent \textbf{\underline{{#1}\footnotesize{{#2}}}} \smallskip \\}{\medskip} + +%% alias for styled bulletpoints +\newenvironment{bullets}{\begin{itemize}[left=\parindent,nosep]}{\end{itemize} \medskip} + +%% applies a consistent format for date ranges +%% #1 : The start date +%% #2 : The end date +\newcommand{\cvdate}[2]{\small{\textit{#1 -- #2}}} + +%% applies a consistent format to a project name +%% #1 : The name of the project +%% #2 : Dependencies of the project, i.e. the languages and frameworks used +\newcommand{\cvprojectname}[2]{\textbf{#1} $\mid$ \footnotesize{#2}} + +%% splits a line into 2 horizontal sections, filling in the gap with whitespace +\newcommand{\hsplit}[2]{{#1} \hfill {#2}} + +%% splits a line and performs a line break afterwards +\newcommand{\hsplitline}[2]{\hsplit{#1}{#2} \break} + +%% just an \item with smaller text for better packing and consistency +\newcommand{\smitem}[1]{\item {\small{#1}}} + +%% formats a name and location for a group of projects +%% #1 : The name of the group of projects (e.g. company name) +%% #2 : The location of the group of projects +\newcommand{\cvprojectgroup}[2]{\noindent \hsplitline{\textbf{#1}}{#2}} + +%% formats a job or personal project +%% #1 : The name of the project +%% #2 : The skills learnt as part of the project +%% #3 : The start date of the project +%% #4 : The end date of the project +\newcommand{\cvproject}[4]{\noindent \hsplit{\cvprojectname{#1}{#2}}{\cvdate{#3}{#4}}} + +\begin{document} + +%% page 1 +\cvheader + +%% Content +\begin{cvsection}{E}{DUCATION} + \cvprojectgroup{University of Manchester}{Manchester, UK} + \cvproject{Computer Science, B.Sc. (Hons.)}{Achieved 1st Class with Honours}{Oct. 2020}{July 2023} + \begin{bullets} + \smitem{Modules included: System Architecture, Advanced Distributed Systems, Algorithms and Data Structures, and Microcontrollers} + \smitem{Dissertation: ``A Generic Framework for Distributed Computing'', covering compilers and distributed systems} + \end{bullets} +\end{cvsection} + +\begin{cvsection}{E}{XPERIENCE} + \cvprojectgroup{Arm Ltd.}{Cambridge, UK} + \cvproject{Engineer}{C, Spec, ACPI, Linux Kernel}{Jan. 2025}{Current} + \begin{bullets} + \smitem{Researched and helped design improvements to the armv9 architecture} + \smitem{Prototyped extensions to ACPI firmware to support new architectural features} + \smitem{Upstreaming patch series for utilising contiguous page hints to the Linux kernel} + \end{bullets} + + \cvproject{Graduate Engineer}{C, C++, DynamoRIO, SystemVerilog}{Sept. 2023}{Jan. 2025} + \begin{bullets} + \smitem{Implemented cache performance modeling and analysis using DynamoRIO and C++} + \smitem{Presented cache performance modeling results at internal company conference} + \smitem{Designed, implemented, verified, and synthesized functional hardware prototypes using SystemVerilog} + \smitem{Implemented patch series to improve Linux memory management performance and correctness} + \end{bullets} + + \cvproject{Part-Time Undergraduate}{C++, Make, Batch, CMake, LLVM, Zephyr}{July 2021}{Mar. 2023} + \begin{bullets} + \smitem{Part of the PTUG Social Committee, organising in-person, online, and hybrid events for other PTUGs} + \smitem{Ported the Zephyr build system to support the LLVM and Armclang toolchains} + \smitem{Ported existing Make and Batch build scripts to use CMake} + \smitem{Participated in daily standups, bi-weekly sprint reviews, and code review} + \end{bullets} + + % \cvprojectgroup{Pretius sp.\ z o.o.}{Warsaw, Poland} + % \cvproject{Work Experience}{C\#}{Aug. 2019}{Aug. 2019} + % \begin{bullets} + % \smitem{Migrated a web app between platforms and wrote technical documentation} + % \smitem{Learnt Agile methodology, experiencing Kanban-style organisation and bi-weekly sprint reviews} + % \smitem{Learnt Jira for task management, task-estimation, and to decompose large tasks into smaller chunks} + % \end{bullets} +\end{cvsection} + +\begin{cvsection}{P}{ROJECTS} + \cvproject{A Generic Framework for Distributed Computing}{C, Compilers, Networking, Make}{Sept. 2022}{July 2023} + \begin{bullets} + \smitem{Designed a custom compute kernel language influenced by C11 and OpenCL} + \smitem{Implemented a bytecode compiler and interpreter for the aforementioned compute kernel language} + \smitem{Implemented a custom network protocol, and various distributed algorithms (e.g. hash-table, memory, synchronisation)} + \smitem{Implemented a mandelbrot set compute kernel as an example of the platform} + \end{bullets} + + \cvproject{RoboSoc Orchestra Team}{C, C++, Embedded, ARM}{Sept. 2022}{July 2023} + \begin{bullets} + \smitem{Served on the Conductor team, architecting and implementing the control system for the orchestra} + \smitem{Planned the protocol and interfaces for communicating between the conductor and different musicians} + \smitem{Implemented a MIDI parser, the conductor user interface, and the conductor backend} + \end{bullets} + + \cvproject{Hyperloop Manchester}{C, C++, Embedded, ARM}{Nov. 2020}{Jan. 2022} + \begin{bullets} + \smitem{Served as the Software Team Head, architecting the software aspect of the pod} + \smitem{Researched and implemented standards and algorithms for driving a Hyperloop pod safely} + \smitem{Implemented beginnings of RTOS, including startup code for Teensy 4.1 and beginnings of USB driver} + \smitem{Organised work using Jira and Kanban, used Git as source control, and had weekly standups to track progress} + \end{bullets} + + % \cvproject{UniCS GameDev}{C\#, Unity, Typescript, Next.js}{Nov. 2020}{Nov. 2021} + % \begin{bullets} + % \smitem{Served as Co-Head of the UniCS GameDev society, leading the development team} + % \smitem{Collaborated with team members in an Agile environment with weekly standups} + % \smitem{Planned tasks and estimating their requirements (time-wise and content-wise)} + % \smitem{Planned, researching, writing, and delivering tutorials on C\# and Unity} + % \smitem{Designed and implemented the UniCS GameDev website in next.js using Typescript} + % \end{bullets} + + % \cvproject{StarSim}{C\#, Avalonia UI, SQLite, Git}{Apr. 2019}{Oct. 2019} + % \begin{bullets} + % \smitem{Created a graphical solar-system simulator, with initial solar-system editor and database functionality} + % \smitem{Researched and implemented efficient algorithms for solving n-body problems (oct-tree, multipole)} + % \smitem{Documented research and implementation using \LaTeX} + % \smitem{Checked all work into Git for source version control} + % \end{bullets} + + % For more projects that I have completed in my spare time, please see my GitHub. +\end{cvsection} + +\begin{cvsection}{S}{KILLS} + \indent \textbf{Soft Skills}: \small{Communication, Teamwork, Leadership, Project planning, Organisation, Time management} \\ + \indent \textbf{Languages}: \small{System Verilog, C, C++, C\#, CMake, Make, Bash, Python, Java} \\ + \indent \textbf{Frameworks}: \small{ASP.Net, Unity, PlatformIO} \\ + \indent \textbf{Developer Tools}: \small{Git, Jira, Visual Studio, VSCode} +\end{cvsection} + +%% \newpage + +%% page 2 +%% \cvheader + +\begin{cvsection}{I}{NTERESTS} + Outside of computer science and software engineering, I enjoy going to the + gym, bouldering, swimming, and am a 2nd Dan black belt in DART Karate (where + I am an instructor to younger students). I have quite a few ongoing personal + projects, including a 3D open-world sandbox game built from scratch, as + well as creating my own web server and linux distribution for my raspberry + pi. Additionally I have written a simple raytracer in C and a very simple + aarch64 kernel in assembly. In the past I have also taken part in Micromouse + competitions, building and programming robots in FORTH to complete various + courses (including line following, wall following, and maze solving). +\end{cvsection} + +\end{document}