-
Notifications
You must be signed in to change notification settings - Fork 0
/
resume-p.tex
189 lines (160 loc) · 7.25 KB
/
resume-p.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
\documentclass[letterpaper,11pt]{article}
\usepackage[margin=0.5in]{geometry}
\usepackage{titlesec}
\usepackage{enumitem}
\usepackage[hidelinks]{hyperref}
\pagenumbering{gobble}
\raggedbottom
\raggedright
\setlength{\tabcolsep}{0in}
% ions formatting
\titleformat{\section}{
\vspace{-4pt}\scshape\raggedright\large
}{}{0em}{}[\titlerule \vspace{-5pt}]
%-------------------------
% Custom commands
\newcommand{\resumeItem}[2]{
\item\small{
\textbf{#1}{: #2 \vspace{-2pt}}
}
}
\newcommand{\resumeSubheading}[4]{
\vspace{-1pt}\item
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
\textbf{#1} & #2 \\
\textit{\small#3} & \textit{\small #4} \\
\end{tabular*}\vspace{-5pt}
}
\newcommand{\resumeSubItem}[2]{\resumeItem{#1}{#2}\vspace{-4pt}}
\renewcommand{\labelitemii}{$\circ$}
\newcommand{\resumeSubHeadingListStart}{\begin{itemize}[leftmargin=*]}
\newcommand{\resumeSubHeadingListEnd}{\end{itemize}}
\newcommand{\resumeItemListStart}{\begin{itemize}}
\newcommand{\resumeItemListEnd}{\end{itemize}\vspace{-5pt}}
\newcommand{\resumeSubheadingD}[2]{
\vspace{-1pt}\item
\begin{tabular*}{0.97\textwidth}[t]{l@{\extracolsep{\fill}}r}
\textbf{#1} & #2 \\
\end{tabular*}\vspace{-5pt}
}
\newcommand{\resumeItemD}[1]{
\item\small{
#1 \vspace{-2pt}
}
}
%-------------------------------------------
%%%%%% CV STARTS HERE %%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
%----------HEADING-----------------
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}r}
\textbf{\href{https://github.com/khangly}{\Large Khang Ly}} & \href{mailto:[email protected]}{[email protected]}\\
\href{https://linkedin.com/in/khangly}{linkedin.com/in/khangly} & (626) 618-6969 \\
\end{tabular*}
%-----------EDUCATION-----------------
\section{Education}
\resumeSubHeadingListStart
\resumeSubheading
{University of California - Berkeley}{Berkeley, CA}
{Bachelor of Science, Electrical Engineering and Computer Sciences; GPA: \textbf{3.98}}{Jun. 2018 -- Dec 2020}
\resumeItemListStart
\resumeItem{Coursework}
{Data Structures, Operating Systems, Algorithms, Database Systems, Computer Architecture, Parallel Programming, Computer Security, Artificial Intelligence, Machine Learning, Signals and Systems, Probability, Optimization Models, FPGA Digital Design}
\resumeItemListEnd
% \resumeSubheading
% {Pasadena City College}{Pasadena, CA}
% {Associate degrees; GPA: 3.92}{Jun. 2016 -- Jun. 2018}
\resumeSubHeadingListEnd
%-----------SKILLS-----------------
\section{Skills}
\resumeSubHeadingListStart
\resumeSubItem{Languages (in order of proficiency)}
{Python, C, C++, Java, Go, SQL, Scheme, PHP, JavaScript, Shell Script}
\resumeSubItem{Technologies}{AWS, Docker, Kubernetes, Flutter, Spark}
\resumeSubItem{Tools}{Bazel}
\resumeSubHeadingListEnd
%-----------EXPERIENCE-----------------
\section{Experience}
\resumeSubHeadingListStart
\resumeSubheading
{Theorem LP}{San Francisco, CA}
{Software Engineer Intern}{Jun. 2020 – Aug. 2020 (8 weeks)}
\resumeItemListStart
\resumeItemD{Theorem buys loans from lending marketplaces using a model they has developed.}
\resumeItemD{Made an extract, transform, load (ETL) pipeline that scores all the loan data (about 5M) in the data warehouse.}
\resumeItemD{Redesigned the ETL pipeline to use a fixed amount of memory so they won't be killed by the Out of Memory Killer. Reduced memory usage of some ETLs up to 90\%.}
\resumeItemD{Sped up the process of loading external data to Theorem's data warehouse from days to minutes by making data schema inference and parquet conversion from running locally to running on the cloud using AWS Glue.}
\resumeItem{Technologies}{Bazel build tool, Docker, Kubernetes, Amazon Redshift, AWS Glue (PySpark)}
\resumeItemListEnd
\resumeSubHeadingListEnd
%----------PERSONAL-PROJECTS----------
\section{Personal Projects}
\resumeSubHeadingListStart
%----------Slickdeals----------
\resumeSubheadingD
{Hot Deals Alert}{\href{https://github.com/khangly/HotSD}{github.com/khangly/HotSD}}
\resumeItemListStart
\resumeItemD
{Built a web service to identify hot deals.}
\resumeItemD
{Deals data are collected using a Python script from the website \href{https://slickdeals.net}{slickdeals.net}. Every minute, the script is triggered by \texttt{cron} to download and parse the contents using BeautifulSoup, then append the new data to a MySQL database.}
\resumeItemD
{All data points are aligned based on the time each deal is posted and during the first hour. Each feature is graphed as a time series, and is fitted by an exponential curve. A deal is ``hot" if all of its features lie above the curves.}
\resumeItemListEnd
% \resumeSubheadingD
% {Handshake Applicator}{\href{https://github.com/khangly/handshook}{github.com/khangly/handshook}}
% \resumeItemListStart
% \resumeItemD{A Python script that automatically applies to jobs on Handshake. It fetches jobs on Handshake and determines if a job is easy to apply, then it sends the application.}
% \resumeItemListEnd
% \resumeSubheadingD
% {Database Scripts}{\href{https://github.com/khangly/CS186Scripts}{github.com/khangly/CS186Scripts}}
% \resumeItemListStart
% \resumeItemD{Calculates IOs of many relational database operations, such as hash joins, sort merge joins, nested loop joins.}
% \resumeItemD{Visualizes dependency graphs and wait for graphs.}
% \resumeItemListEnd
\resumeSubHeadingListEnd
%----------CLASS-PROJECTS----------
\section{Class Projects}
\resumeSubHeadingListStart
%----------CS-186----------
\resumeSubheadingD
{Database Management System (DBMS)}{Spring 2020}
\resumeItemListStart
\resumeItemD
{Implemented B+ Tree and various join algorithms. Added an optimizer that searches and executes a low estimated cost query based on some heuristics.}
\resumeItemD
{Finally, implemented multigranularity locking so queries can run concurrently.}
\resumeItemListEnd
%----------CS-161----------
\resumeSubheadingD
{End-to-End Encrypted File Sharing System}{Fall 2019}
\resumeItemListStart
\resumeItemD
{Designed and implemented a secured file sharing system in Go that guarantees the confidentiality and integrity of data stored in an \textbf{untrusted} server.}
\resumeItemD
{The project was ranked second among 200 groups.}
\resumeItemListEnd
%----------CS-162----------
\resumeSubheadingD
{Pint Operating System (PintOS)}{Summer 2019}
\resumeItemListStart
\resumeItemD
{Implemented multi-level feedback queue scheduler.}
\resumeItemD
{Implemented various file operation syscalls, such as \texttt{create}, \texttt{remove}, \texttt{open}, \texttt{read}, \texttt{write}.}
\resumeItemD
{Finally, added a buffer cache to improve performance of read and write of recent files and expanded PintOS file system to handle extensible files and subdirectories.}
\resumeItemListEnd
\resumeSubHeadingListEnd
%-----------AWARDS-----------------
\section{Awards}
\resumeSubHeadingListStart
\resumeSubheading
{Jim and Donna Gray Endowment Award}{UC Berkeley}
{Recipient}{Spring 2019 - Fall 2019}
\resumeItemListStart
\resumeItemD
{Awarded to computer science students completing their junior year who have demonstrated both high scholastic achievement and financial need.}
\resumeItemListEnd
\resumeSubHeadingListEnd
%-------------------------------------------
\end{document}