-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdiego_russo_cv_en.tex
More file actions
380 lines (340 loc) · 14.7 KB
/
diego_russo_cv_en.tex
File metadata and controls
380 lines (340 loc) · 14.7 KB
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
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
% Ensure hyperlink colors are enabled when moderncv loads hyperref.
\PassOptionsToPackage{colorlinks=true,linkcolor=red,urlcolor=red,citecolor=red}{hyperref}
% possible options include font size ('10pt', '11pt' and '12pt'),
% paper size ('a4paper', 'letterpaper', 'a5paper', 'legalpaper',
% 'executivepaper' and 'landscape') and font family ('sans' and 'roman')
\documentclass[10pt,a4paper,sans]{moderncv}
% moderncv themes
% color options 'black', 'blue' (default), 'burgundy', 'green', 'grey',
% 'orange', 'purple' and 'red'
\moderncvcolor{red}
% style options are 'casual' (default), 'classic', 'banking', 'oldstyle' and
% 'fancy'
\moderncvstyle[nosymbols]{banking}
% Use Font Awesome symbols without requiring XeTeX/LuaTeX.
\moderncvicons{awesome}
% to set the default font; use '\sfdefault' for the default sans serif font,
% '\rmdefault' for the default roman one, or any tex font name
% \renewcommand{\familydefault}{\sfdefault}
% uncomment to suppress automatic page numbering for CVs longer than one page
% \nopagenumbers{}
% character encoding
% if you are not using xelatex or lualatex, replace by the encoding you are
% using
\usepackage[utf8]{inputenc}
% Avoid cmss font shape warnings by mapping missing shapes to existing ones.
\DeclareFontShape{T1}{cmss}{b}{n}{<->ssub * cmss/bx/n}{}
\DeclareFontShape{T1}{cmss}{b}{it}{<->ssub * cmss/bx/it}{}
\DeclareFontShape{T1}{cmss}{sb}{n}{<->ssub * cmss/m/n}{}
% if you need to use CJK to typeset your resume in Chinese, Japanese or Korean
% \usepackage{CJKutf8}
% adjust the page margins
\usepackage[scale=0.92]{geometry}
% if you want to change the width of the column with the dates
\setlength{\hintscolumnwidth}{2.65cm}
% for the 'classic' style, if you want to force the width allocated to your
% name and avoid line breaks. be careful though, the length is normally
% calculated to avoid any overlap with your personal info; use this at your own
% typographical risks...
% \setlength{\makecvtitlenamewidth}{10cm}
% required when changes are made to page layout lengths
\AtBeginDocument{\recomputelengths}
% Match moderncv dotted subsection rule, but avoid underfull hbox warnings.
\renewcommand*{\subsectionrule}{\leavevmode{\color{bodyrulecolor}\xleaders\hbox to 0.35em{\hss\scriptsize.\hss}\hfill}}
% personal data
\name{}{Diego Russo}
% Below fields are optional, remove the line if not wanted
\title{Principal Software Engineer | CPython Core Developer}
% {postcode city}{country}; the "postcode city" and "country" arguments can be
% omitted or provided empty
\email{me@diegor.it}
\phone[mobile]{+44 (0) 7428 251191}
\address{Cambridge, UK}
% the optional "type" of the phone can be "mobile" (default), "fixed" or "fax"
% \phone[fixed]{+2~(345)~678~901}
% \phone[fax]{+3~(456)~789~012}
\homepage{www.diegor.it}
\social[linkedin]{diegor}
\social[twitter]{diegor}
\social[github]{diegorusso}
\extrainfo{Updated on \today}
% '64pt' is the height the picture must be resized to, 0.4pt is the thickness
% of the frame around it (put it to 0pt for no frame) and 'picture' is the name
% of the picture file
%\photo[80pt][0.4pt]{images/diegor}
%\quote{``Now is better than never'' --- The Zen of Python}
% bibliography adjustments (only useful if you make citations in your resume,
% or print a list of publications using BibTeX)
% to show numerical labels in the bibliography (default is to show no labels)
%\makeatletter
%\renewcommand*
% {\bibliographyitemlabel}
% {\@biblabel{\arabic{enumiv}}}
%\makeatother
\renewcommand*{\bibliographyitemlabel}{[\arabic{enumiv}]}
% to redefine the bibliography heading string ("Publications")
% \renewcommand{\refname}{Articles}
% bibliography with mutiple entries
% \usepackage{multibib}
% \newcites{book,misc}{{Books},{Others}}
%Colour links in the CV
% hyperlink colors configured via \PassOptionsToPackage above
% -----------------------------------------------------------------------------
% content
% -----------------------------------------------------------------------------
\begin{document}
% ----- resume ----------------------------------------------------
\maketitle
CPython Core Developer and Principal Software Engineer in Arm's Runtimes team,
based in Cambridge, UK. 20+ years in software engineering, using Python since
2006 and contributing to CPython since 2023, with a focus on interpreter
performance, JIT-related work, CI infrastructure, and ensuring CPython and its
ecosystem run reliably and efficiently on Arm platforms. Work sits at the
intersection of runtime, performance engineering, and large-scale open-source
collaboration. EuroPython organiser and lead of the Arm Python Guild, an
internal community of more than 1,400 Python developers across the company.
\section{Career Experience}
% arguments 3 to 6 can be left empty
% \cventry{year--year}{Degree}{Institution}{City}{\textit{Grade}}{Description}
%\cventry{}
% {Position}
% {Group, Company, Location, Country}
% {\textbf{Period}}
% {}
% {\textbf{Technical Scope}: Python\newline
% Stuff I did
% \begin{itemize}
% \item Stuff I did to highlight
% \end{itemize}}
\cventry{}
{Principal Software Engineer}
{CE-SW Runtimes, Arm Ltd., Cambridge, UK}
{\textbf{2023--present}}
{}
{\textbf{Technical Scope}: Tech Lead, CPython.\newline
Started with a six-month secondment in 2023 to assess the CPython
ecosystem on Arm platforms, then joined the Runtimes team to continue
enablement work with upstream collaboration and ecosystem reliability
for developers. Worked on CPython JIT-related investigations and
performance work on Arm platforms.
\begin{itemize}
\item Organised the CPython Core Dev Sprint 2025 at Arm in Cambridge
(\href{https://developer.arm.com/community/arm-community-blogs/b/tools-software-ides-blog/posts/cpython-core-dev-sprint-2025-at-arm-cambridge-the-biggest-one-yet}{blog post}).
\end{itemize}}
\cventry{}
{Principal Software Engineer/Staff Software Engineer}
{ML Group, Arm Ltd., Cambridge, UK}
{\textbf{2020--2023}}
{}
{\textbf{Technical Scope}: Tech Lead, Python, Machine Learning, IP
Evaluation, Inference Advisor, Software Quality.\newline
Led the open-source \href{https://pypi.org/project/mlia/}{Arm ML Inference
Advisor} project and coordinated technical delivery across ML and Arm
teams. Owned design, implementation, and maintenance of ML tooling and
partner integrations. Previous project: IP Selection Sandbox for ML\@.
\begin{itemize}
\item Helped AI/ML developers tailor and optimize models for Arm
hardware: \url{https://pypi.org/project/mlia/}
\item Built the IP Selection Sandbox for ML, enabling clients to
evaluate the right IP for workloads.
\end{itemize}}
\cventry{}
{Staff Software Engineer}
{ISG, Arm Ltd., Cambridge, UK}
{\textbf{2017--2019}}
{}
{\textbf{Technical Scope}: Jenkins/Pipelines, LAVA, Artifactory, Docker,
Python, Bash, Linux, GitHub.\newline
Led build, test, data representation, and validation automation for
product development. Partnered with global teams and external partners,
produced system design documents, and improved CI reliability.
\begin{itemize}
\item Designed automated build and test infrastructure from scratch on
real Cortex-A boards for custom Linux distribution.
\end{itemize}}
\cventry{}
{Staff Software Engineer}
{DSG, Arm Ltd., Cambridge, UK}
{\textbf{2013--2017}}
{}
{\textbf{Technical Scope}: Python, Flask, Bootstrap, AngularJS, MongoDB,
Linux, SVN/Git\newline
Supervised an eight-member team and managed automation infrastructure for
Arm Compiler and OSS toolchains. Ensured compliance with design principles,
shared knowledge across teams, and hosted a monthly stakeholder forum.
Acted as business representative on DSG infrastructures.
\begin{itemize}
\item Collaborated with the GNU team to deliver optimized GNU
toolchains for Arm processors.
\item Drove development of infrastructure for automated builds, tests,
and benchmarks.
\item Created an application to triage GCC test results, store results
in a database, and automate issue tracking using Jira.
\end{itemize}}
\cventry{}
{Senior Software Engineer}
{Engineering IT, Arm Ltd., Cambridge, UK}
{\textbf{2011--2013}}
{}
{\textbf{Technical Scope}: Python, MongoDB, RabbitMQ, Java, Jira, LSF,
Perl, C, tcsh, bash, Linux, SVN/Git\newline
Contributed to internal platforms, including a fault-tolerant application
integrating with LSF cluster and AMQ server. Built a Jira plug-in to
synchronize external and internal tickets, and maintained core IT systems.
\begin{itemize}
\item Planned and executed the IT Early Career Scheme for interns and
graduates.
\end{itemize}}
\cventry{}
{Software/System Engineer}
{R\&D, Forinicom Srl, Bastia Umbra, IT}
{\textbf{2008--2011}}
{}
{\textbf{Technical Scope}: Python/Django, PostgreSQL, Debian, XEN, PyQT,
Git\newline
Delivered embedded systems and web solutions for authentication and
hotspot management. Built a captive portal for sign-up, session logs,
remote device signals, and payment integration, plus network monitoring
software.
\begin{itemize}
\item Set up internet connection and enabled fast connectivity for
rural areas, providing services to hundreds of clients.
\item Designed and implemented hotspot system with captive portal and
credit card payments for numerous tourists; used at EuroPython
2011.
\end{itemize}}
\cventry{}
{Python/Django Engineer}
{Consorzio Miles, Servizi Integrati, Rome/Assisi, IT}
{\textbf{2006--2008}}
{}
{\textbf{Technical Scope}: Python/Django, PostgreSQL, Linux\newline
Worked with a team to replace paper-based processes with a Django web
system. Led migration from VB to Python/Django, enabling citizens to
track and update municipal processes online in real time.}
\subsection{Additional Experience}
%\cventry{}
% {Position}
% {Company, Location, Country}
% {\textbf{Period}}
% {\textbf{Technical Scope}: Python}
% {}
\cventry{Contract}
{Objective-C Engineer}
{Forinicom Srl., Bastia Umbra, IT}
{\textbf{2011--05 / 2011--06}}
{}
{\textbf{Technical Scope}: Hotspot Captive Portal app, used at EuroPython
2011 in Florence}
\cventry{Remote, Contract}
{Python Engineer}
{Exion Sagl, Manno, CH}
{\textbf{2010--11/2011--01}}
{}
{\textbf{Technical Scope}: Python, Django, PostgreSQL}
\cventry{Remote, Contract}
{Python Engineer}
{Sauce Labs Inc., San Francisco, USA}
{\textbf{2010--10/2011--01}}
{}
{\textbf{Technical Scope}: Python, Pylons, GitHub}
\cventry{Internship}
{SEO Engineer}
{Wedoit Sas., Assisi, IT}
{\textbf{2005--11 / 2006--05}}
{}
{\textbf{Technical Scope}: SEO, Python, PHP}
\section{Talks \& Podcasts}
\cvitemwithcomment{2026}{Python SDQ January 2026 Meetup: Python por dentro: personas, procesos, código}
{\href{https://github.com/diegorusso/diegorusso/blob/main/2026/python_sdq_python_por_dentro.pdf}{Slides} |
\href{https://www.youtube.com/watch?v=PbLSttImQ3k}{YouTube}}
\cvitemwithcomment{2025}{EuroPython / PyCon UK: Exploring the CPython JIT}
{\href{https://github.com/diegorusso/diegorusso/blob/main/2025/ep2025_exploring_the_cpython_jit.pdf}{Slides} |
\href{https://youtu.be/5-AA7-fHYYM?si=3jILxr9B1Coeq3-F}{PyCon UK} |
\href{https://youtu.be/5si4zkAngpA?si=cxYDkwUK7w-r1jJQ}{EuroPython}}
\cvitemwithcomment{2025}{Microsoft Build: Run PyTorch natively on Windows on Arm using GitHub runners}
{\href{https://build.microsoft.com/en-US/sessions/ODFP974}{Session} |
\href{https://www.youtube.com/watch?v=uhGg7wb6jV4}{Recording}}
\cvitemwithcomment{2025}{Intervista Pythonista: Runtime e Interpreter con un Core Developer! \#66}
{\href{https://www.youtube.com/watch?v=Xx09D359mR4}{YouTube} |
\href{https://creators.spotify.com/pod/profile/marco-santoni/episodes/Runtime-e-Interpreter-con-un-Core-Developer--66-e35gcjl}{Spotify} |
\href{https://podcasts.apple.com/fr/podcast/intervista-pythonista/id1561566952}{Apple Podcasts}}
\cvitemwithcomment{2024}{Arm Innovation Coffee: GitHub Arm-hosted Runners with Larissa Fortuna and Diego Russo}
{\href{https://www.youtube.com/watch?v=CMO4rL2msoQ}{YouTube}}
\cvitemwithcomment{2023}{EuroPython: Python on Arm Architecture}
{\href{https://github.com/diegorusso/diegorusso/blob/main/2023/ep2023_python_on_arm.pdf}{Slides} |
\href{https://www.youtube.com/watch?v=nYf7r0lkTIs}{Recording}}
\section{Education}
\cventry{}
{University of Perugia, Perugia, IT}
{Master of Science in Computer Science (Security) IT\@: 110/110 cum laude
--- UK\@: First class honours}
{\textbf{2021}}
{}
{Thesis: \href{https://github.com/diegorusso/master-degree-thesis}{Pruning
layers of a neural network with a heuristic-based approach.}}
\cventry{}
{University of Perugia, Perugia, IT}
{Bachelor of Science in Computer Science (Networking) IT\@: 102/110 ---
UK\@: 2:1}
{\textbf{2006}}
{}
{Thesis: Wireless Broadband Network/WeConnect project}
\cventry{}
{Ministry of Public Education, Commercial Technical Institute, Federico
Cesi, Terni, IT}
{Accountant programmer Diploma (Mercurio project) IT\@: 85/100 --- UK\@: A}
{\textbf{2002}}
{}
{}
\section{Professional Training}
\cventry{Doulos}
{Arm Ltd., Cambridge, UK}
{Expert Product Development with Python}
{\textbf{2022}}
{}
{}
\cventry{Learning Tree}
{Arm Ltd., Cambridge, UK}
{Advanced Python Training}
{\textbf{2022}}
{}
{}
\cventry{Doulos}
{Arm Ltd., Cambridge, UK}
{C++ Programming for Embedded Systems}
{\textbf{2021}}
{}
{}
\cventry{Doulos}
{Arm Ltd., Cambridge, UK}
{Practical Deep Learning}
{\textbf{2020}}
{}
{}
\cventry{Udemy}
{Online}
{iPhone (iOS9) and Swift 2.2:
\href{https://github.com/diegorusso/DipMatBeacon}{DipMatBeacon}}
{\textbf{2016}}
{University of Perugia project app for booking state of rooms}
{}
\cventry{MongoDB}
{Arm Ltd., Cambridge, UK}
{MongoDB Administration and Developers training}
{\textbf{2015}}
{}
{}
\section{Affiliations}
\cvitemwithcomment{Python Software Foundation}{Contributor (2023--2024),
Triage Team (2024--2025), Core Developer (2025--present)}{2023--present}
\cvitemwithcomment{EuroPython Conference}{Organiser/Volunteer/Attendee,
Florence, Berlin, Bilbao, Rimini, Edinburgh, Online}{2011 -- Present}
\section{Languages}
\cvlanguage{Italian}{Fluent}{Italian citizenship}
\cvlanguage{English}{C1}{British citizenship}
\cvlanguage{Spanish}{C1}{}
\begin{center}
Proudly written in \LaTeX\ and Vim: \url{https://github.com/diegorusso/cv}
\end{center}
\end{document}