-
Notifications
You must be signed in to change notification settings - Fork 0
/
cv-experience.tex
168 lines (160 loc) · 6.96 KB
/
cv-experience.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
\section{Experience}
\href{https://katanagraph.ai}{\textbf{Katana Graph}}
\begin{outerlist}
\item[] \textit{Software Engineer}%
\hfill \textbf{June to November 2021}
\begin{outerlist}
\item Initial design and implementation of indexing for Katana, a high
performance graph database.
\end{outerlist}
\end{outerlist}
\bigskip
\href{https://cloud.google.com/compute}{\textbf{Google Compute Engine}}
\begin{outerlist}
\item[] \textit{Senior Software Engineer}%
\hfill \textbf{2017 to June 2021}
\item[] \textit{Software Engineer}%
\hfill \textbf{September 2013 to 2017}
\begin{outerlist}
\item VM memory management and live migration
\begin{outerlist}
\item Ran early evaluations of TLB page size and NUMA scheduling
effects on large memory VM workloads. Project lead for design,
implementation and rollout of GCE VMs backed by hugetlbfs.
\item Core contributor to GCE's live migration technology. Helped take
post-copy memory migration from prototype to production. Authored
numerous performance and reliability improvements in response to
internal benchmarking and external customer pain. Rewrote GCE's VMM
memory migration control for simplicity and testability.
\end{outerlist}
\item VM timekeeping
\begin{outerlist}
\item Responsible for identifying and addressing all issues
related to timekeeping in GCE guests. Implemented consistency and
policy for timekeeping across VM live migration.
\item Led a project to provide Google's TrueTime service to GCE VMs.
Designed, implemented and deployed a paravirtual interface allowing
GCE guests to generate TrueTime intervals at native performance.
\end{outerlist}
\item Kernel/KVM development, qualification and rollout
\begin{outerlist}
\item Engineering lead for GCE production kernel qualification and
rollout. Worked with teams across GCE and Google to identify and
resolve long-tail bugs in the kernel (and occasionally CPU)
deployed to production GCE hosts. GCE lead for upgrade from
Linux upstream version 3.11 to 4.3.
\item Contributed various gruntwork to GCE's response to
Spectre/Meltdown, such as backporting mitigations.
\item Contributor to landing many new platforms in GCE, especially new
Intel microarchitectures. Lead for integrating new Cascadelake
CPUs. Designed and implemented stack for passing through host
non-volatile memory (Intel Apache Pass NVDIMMs) to GCE guests as a
customer-selectable addon.
\end{outerlist}
\item Core VMM development
\begin{outerlist}
\item Contributor to several areas across the core of GCE's C++
hypervisor.
\item Lead contributor for project to revamp the GCE hypervisor
for new host platform topologies.
\end{outerlist}
\end{outerlist}
\end{outerlist}
\pagebreak
\href{http://www.cs.utexas.edu}{\textbf{The University of Texas at Austin,
Department of Computer Science}}
\begin{outerlist}
\item[] \textit{Research Assistant}%
\hfill \textbf{May 2007 to August 2013}
\begin{innerlist}
\item TxLinux 2.6
\begin{innerlist}
\item Worked on team to develop TxLinux, the first operating system
to use hardware transactional memory for synchronization
\item Designed and implemented \emph{cooperative transactional
spinlocks}, forming the basis for large-scale automatic conversion of the
Linux kernel to use hardware transactions
\item Published in ISCA '07 and SOSP '07
\end{innerlist}
\item TxLinux 2.4
\begin{innerlist}
\item Applied techniques from TxLinux 2.6 to Linux 2.4 to
demonstrate the benefit of hardware transactional memory for
improving coarse-grained synchronization performance in the operating
system
\item Introduced \emph{transaction ordering}, a novel technique for
unifying hardware and software transactional memory in user applications
\item Published in ASPLOS '09
\end{innerlist}
\item TxOS
\begin{innerlist}
\item Worked on team to develop TxOS, a version of Linux
providing \emph{system transactions} to ensure atomic, isolated and
consistent updates to diverse system resources
\item Modified the ext3 file system to provide durable
transactional updates
\item Published in SOSP '09
\end{innerlist}
\item Unvanish
\begin{innerlist}
\item Identified vulnerabilities in the Vanish system for
self-destructing data
\item Designed and implemented Unvanish, a system to recover
data protected by Vanish
\item Published in NDSS '10
\end{innerlist}
\item OSck
\begin{innerlist}
\item Designed and implemented a system for efficient
hypervisor-based kernel rootkit detection based on the Linux KVM hypervisor
\item Published in ASPLOS '11
\end{innerlist}
\item InkTag
\begin{innerlist}
\item Designed and implemented InkTag, a hypervisor-based system
for securely executing applications under an untrusted operating system
\item Published in ASPLOS '13, ASPLOS '16
\end{innerlist}
\end{innerlist}
\item[] \textit{Assistant Instructor}%
\hfill \textbf{January 2012 to May 2012}
\begin{innerlist}
\item CS429: Computer Organization and Architecture
\begin{innerlist}
\item Served as instructor for an introductory undergraduate
computer architecture course (77 students)
\item Developed new lectures and exams
\end{innerlist}
\end{innerlist}
\item[] \textit{Teaching Assistant}%
\hfill \textbf{August 2007 to December 2007}
\begin{innerlist}
\item CS372H: Operating Systems Honors
\begin{innerlist}
\item Held office hours, graded undergraduate lab assignments and exams
\item Developed new lab assignments on synchronization
\item Designed a user study based on student experience and
performance with synchronization labs
\item Study results later published in PPoPP '10
\end{innerlist}
\end{innerlist}
\end{outerlist}
\pagebreak
\href{https://research.microsoft.com}{\textbf{Microsoft Research}}
\begin{outerlist}
\item[] \textit{Intern}
\hfill \textbf{June to August 2010}
\begin{innerlist}
\item Flat Datacenter Storage
\begin{innerlist}
\item Worked on team developing initial implementation of Flat
Datacenter Storage (FDS)
\item Built initial implementation of failure recovery within
FDS
\item FDS held records in both ``Indy'' and
``Daytona'' categories for the MinuteSort benchmark
(\href{https://www.sortbenchmark.org}{www.sortbenchmark.org}).
\item Published in OSDI '12
\end{innerlist}
\end{innerlist}
\end{outerlist}