-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbenjamin_liu_resume.tex
254 lines (214 loc) · 11.9 KB
/
benjamin_liu_resume.tex
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
%-------------------------
% Resume in Latex
% Author : Jake Gutierrez
% Based off of: https://github.com/sb2nov/resume
% License : MIT
%------------------------
\documentclass[letterpaper,11pt]{article}
\usepackage{latexsym}
\usepackage[empty]{fullpage}
\usepackage{titlesec}
\usepackage{marvosym}
\usepackage[usenames,dvipsnames]{color}
\usepackage{verbatim}
\usepackage{enumitem}
\usepackage[hidelinks]{hyperref}
\usepackage{fancyhdr}
\usepackage[english]{babel}
\usepackage{tabularx}
\usepackage{fontawesome5}
\usepackage{multicol}
\usepackage{hyperref}
\usepackage{letltxmacro,xparse}
\setlength{\multicolsep}{-3.0pt}
\setlength{\columnsep}{-1pt}
\input{glyphtounicode}
\let\oldhref\href
\renewcommand{\href}[2]{\oldhref{#1}{\bfseries#2}}
%----------FONT OPTIONS----------
% sans-serif
% \usepackage[sfdefault]{FiraSans}
% \usepackage[sfdefault]{roboto}
% \usepackage[sfdefault]{noto-sans}
% \usepackage[default]{sourcesanspro}
% serif
% \usepackage{CormorantGaramond}
% \usepackage{charter}
\pagestyle{fancy}
\fancyhf{} % clear all header and footer fields
\fancyfoot{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
% Adjust margins
\addtolength{\oddsidemargin}{-0.6in}
\addtolength{\evensidemargin}{-0.5in}
\addtolength{\textwidth}{1.19in}
\addtolength{\topmargin}{-.7in}
\addtolength{\textheight}{1.4in}
\urlstyle{same}
\raggedbottom
\raggedright
\setlength{\tabcolsep}{0in}
% Sections formatting
\titleformat{\section}{
\vspace{-4pt}\scshape\raggedright\large\bfseries
}{}{0em}{}[\color{black}\titlerule \vspace{-5pt}]
% Ensure that generate pdf is machine readable/ATS parsable
\pdfgentounicode=1
%-------------------------
% Custom commands
\newcommand{\resumeItem}[1]{
\item\small{
{#1 \vspace{-2pt}}
}
}
\newcommand{\classesList}[4]{
\item\small{
{#1 #2 #3 #4 \vspace{-2pt}}
}
}
\newcommand{\resumeSubheading}[4]{
\vspace{-2pt}\item
\begin{tabular*}{1.0\textwidth}[t]{l@{\extracolsep{\fill}}r}
\textbf{#1} & \textbf{\small #2} \\
\textit{\small#3} & \textit{\small #4} \\
\end{tabular*}\vspace{-7pt}
}
\newcommand{\resumeSubSubheading}[2]{
\item
\begin{tabular*}{0.97\textwidth}{l@{\extracolsep{\fill}}r}
\textit{\small#1} & \textit{\small #2} \\
\end{tabular*}\vspace{-7pt}
}
\newcommand{\resumeProjectHeading}[2]{
\item
\begin{tabular*}{1.001\textwidth}{l@{\extracolsep{\fill}}r}
\small#1 & \textbf{\small #2}\\
\end{tabular*}\vspace{-7pt}
}
\newcommand{\resumeSubItem}[1]{\resumeItem{#1}\vspace{-4pt}}
\renewcommand\labelitemi{$\vcenter{\hbox{\tiny$\bullet$}}$}
\renewcommand\labelitemii{$\vcenter{\hbox{\tiny$\bullet$}}$}
\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=0.0in, label={}]}
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
\newcommand{\resumeItemListStart}{\begin{itemize}}
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}
%-------------------------------------------
%%%%%% RESUME STARTS HERE %%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
%----------HEADING----------
% \begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}r}
% \textbf{\href{http://sourabhbajaj.com/}{\Large Sourabh Bajaj}} & Email : \href{mailto:[email protected]}{[email protected]}\\
% \href{http://sourabhbajaj.com/}{http://www.sourabhbajaj.com} & Mobile : +1-123-456-7890 \\
% \end{tabular*}
\begin{center}
{\Huge \scshape Benjamin Liu} \\ \vspace{1pt}
U.S. Citizen \\ \vspace{1pt}
Lexington, Massachusetts \\ \vspace{1pt}
\small \raisebox{-0.1\height}\faPhone\ 339-240-2265 ~ \href{mailto:[email protected]}{\raisebox{-0.2\height} \faEnvelope\ \underline{[email protected]}} \href{https://github.com/benliu0001}{\raisebox{-0.2\height}\faGithub\ \underline{github.com/benliu0001}} \href{https://www.linkedin.com/in/benliu0001/}{\raisebox{-0.2\height}\faLinkedin\ \underline{linkedin.com/in/benliu0001}} \\
\vspace{-8pt}
\end{center}
%-----------EDUCATION-----------
\section{Education}
\resumeSubHeadingListStart
\resumeSubheading
{University of Toronto}{September 2021 - December 2025}
{Honors Bachelor of Science, Computer Science}{Toronto, Canada}
\resumeItemListStart
\resumeItem{Relevant Courses: \href{https://artsci.calendar.utoronto.ca/course/csc420h1}{Computer Vision}, \href{https://artsci.calendar.utoronto.ca/course/csc413h1}{Deep Learning}, \href{https://artsci.calendar.utoronto.ca/course/csc301h1}{Software Engineering}, \href{https://artsci.calendar.utoronto.ca/course/csc343h1}{Databases}, \href{https://artsci.calendar.utoronto.ca/course/csc369h1}{Operating Systems}, \href{https://artsci.calendar.utoronto.ca/course/csc373h1}{Algorithms}, \href{https://artsci.calendar.utoronto.ca/course/csc263h1}{Data Structures}, \href{https://artsci.calendar.utoronto.ca/course/mat237h1}{Multivariable Calculus}, \href{https://artsci.calendar.utoronto.ca/course/sta247h1}{Probability and Statistics}}
\resumeItemListEnd
\resumeSubHeadingListEnd
\vspace{-12pt}
%-----------PROGRAMMING SKILLS-----------
\section{Technical Skills}
\begin{itemize}[leftmargin=0.15in, label={}]
\small{\item{
\textbf{Languages}{: Python, Java, C/C++, SQL, Assembly Languages} \\
\textbf{Developer Tools}{: Shell Scripting in Linux, Git, Agile Methodologies, Google Cloud CLI, Docker, AWS, CMake} \\
\textbf{Technologies/Frameworks}{: Numpy, OpenCV, PyTorch, Pandas, Pyplot, Scipy, Transformers, RAG} \\
}}
\end{itemize}
\vspace{-23pt}
%
%-----------EXPERIENCE-----------
\section{Experience}
\resumeSubHeadingListStart
\resumeSubheading
{\textbf{ML Project Developer} $|$ \emph{PyTorch, Hugging Face, Pandas}}{January 2024 -- April 2024}
{mhapy}{Toronto, ON}
\resumeItemListStart
\resumeItem{Trained a BERT model to analyze the sentiment of users' responses to mental health assessment questions.}
\resumeItem{Used Pandas to clean and preprocess Hugging Face datasets to fine tune the BERT model to achieve 60\% accuracy.}
\resumeItem{Deployed Postman API to AWS and then Railway to allow for other teams to access the model.}
\resumeItemListEnd
\resumeSubHeadingListEnd
\vspace{-20pt}
%-----------PROJECTS-----------
\section{Projects}
\vspace{-5pt}
\resumeSubHeadingListStart
\resumeProjectHeading
{\href{https://utmist.gitlab.io/projects/side-channel-attacks/}{Deep Learning Side Channel Attack} $|$ \emph{Python, PyTorch, Numpy, Scipy}}{January 2024 -- Present}
\resumeItemListStart
\resumeItem{Developed LSTM, Resnet, and Transformer models to perform a deep-learning side channel attack on an STM32 microcontroller running TinyAES.}
\resumeItem{Assumed profiling attack paradigm to collect training data using a microcontroller and oscilloscope to capture power traces of plaintext-ciphertext pairs.}
\resumeItem{Researched various methods to extract features from power traces and optimize the models to improve the attack's success rate.}
\resumeItem{Recruited, organized, and led a team of 6 other students to work on the project, and managed the project's timeline.}
\resumeItemListEnd
\vspace{-20pt}
\resumeProjectHeading
{\textbf{Key-Value Database} $|$ \emph{C++, Cmake}}{December 2024}
\resumeItemListStart
\resumeItem{Developed a highly performant Log-Structured Merge (LSM) Tree system to manage storage across memory and disk, including seamless integration of SSTable flushing and merging mechanisms.}
\resumeItem{Implemented an AVL tree-based Memtable for in-memory storage, optimizing for worst-case lookup time complexity.}
\resumeItem{Built a hash table-based buffer pool with a clock eviction strategy to cache pages in memory, reducing I/O overhead.}
\resumeItem{Implemented custom merging algorithms for SSTables, balancing memory use and processing efficiency, and conducted throughput experiments for write, read, and scan operations.} \resumeItemListEnd
\vspace{-20pt}
\resumeProjectHeading
{\textbf{Image Generation Knowledge Distillation} $|$ \emph{Python, PyTorch, Numpy}}{January 2024 -- April 2024}
\resumeItemListStart
\resumeItem{Developed a model distillation technique, reducing the size of a large pre-trained VAE by 30x while maintaining comparable performance for text-to-image generation.}
\resumeItem{Designed and implemented a 7-layer convolutional neural network to mimic both the encoder and decoder of a VAE, achieving efficient latent space encoding and image reconstruction.}
\resumeItem{Trained models on datasets including CIFAR-10, Harvard Flower, CC12M, and Deep Fashion-MultiModal to ensure generalization across diverse image sets.}
\resumeItem{Demonstrated strong model generalization on unseen and cross-dataset data, optimizing performance through MSE loss, dropout, and weight decay.}
\resumeItemListEnd
\vspace{-20pt}
\resumeProjectHeading
{\href{https://beaverworks.ll.mit.edu/CMS/bw/bwsi_course_embedded_security_and_hardware_hacking}{MIT Embedded Security CTF} $|$ \emph{C, Python}}{February 2020 -- August 2020}
\resumeItemListStart
\resumeItem{In a team of 4, designed and implemented a secure firmware update system for an IoT device using C and Python.}
\resumeItem{Based on MITRE eCTF competition, assumed man in the middle paradigm to attack other teams by exploiting vulnerabilities in their firmware update systems using python scripts, earning 3rd place in the competition.}
\resumeItem{Utilized an HMAC to authenticate users, AES, RSA, and SHA to encrypt firmware, and a Stream Cipher for key generation.}
\resumeItem{Received intensive instruction from leading researchers on embedded software, computer architecture, memory management, assembly, cryptography, security, interface analysis, and bit manipulation.}
\resumeItemListEnd
\resumeSubHeadingListEnd
% \vspace{-20pt}
% %------RELEVANT COURSEWORK-------
% \section{Relevant Coursework}
% %\resumeSubHeadingListStart
% \begin{multicols}{4}
% \begin{itemize}[itemsep=0pt, parsep=2pt]
% \item\small \href{https://artsci.calendar.utoronto.ca/course/csc420h1}{Computer Vision}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc413h1}{Deep Learning}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc373h1}{Algorithms}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc301h1}{Software Engineering}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc343h1}{Databases}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc369h1}{Operating Systems}
% \item \href{https://artsci.calendar.utoronto.ca/course/csc263h1}{Data Structures}
% \item \href{https://artsci.calendar.utoronto.ca/course/mat237h1}{Multivariable Calculus}
% \item \href{https://artsci.calendar.utoronto.ca/course/sta247h1}{Probability and Statistics}
% \end{itemize}
% \end{multicols}
% \vspace*{2.0\multicolsep}
% \resumeSubHeadingListEnd
% %-----------INVOLVEMENT---------------
% \section{Leadership / Extracurricular}
% \resumeSubHeadingListStart
% \resumeSubheading{Fraternity}{Spring 2020 -- Present}{President}{University Name}
% \resumeItemListStart
% \resumeItem{Achieved a 4 star fraternity ranking by the Office of Fraternity and Sorority Affairs (highest possible ranking).}
% \resumeItem{Managed executive board of 5 members and ran weekly meetings to oversee progress in essential parts of the chapter.}
% \resumeItem{Led chapter of 30+ members to work towards goals that improve and promote community service, academics, and unity.}
% \resumeItemListEnd
% \resumeSubHeadingListEnd
\end{document}