Long overdue update, after finishing off at YU and starting at UW
[~bandali/cv] / cv.tex
1 %% cv.tex
2 %% Copyright 2016-2017 Amin Bandali <amin@aminb.org>
3 %
4 % This work may be distributed and/or modified under the
5 % conditions of the LaTeX Project Public License, either version 1.3
6 % of this license or (at your option) any later version.
7 % The latest version of this license is in
8 % http://www.latex-project.org/lppl.txt
9 % and version 1.3 or later is part of all distributions of LaTeX
10 % version 2005/12/01 or later.
11 %
12 % Based on Jason R. Blevins's Curriculum Vitae template,
13 % Copyright (C) 2004-2016 Jason R. Blevins <jrblevin@sdf.org>
14 % http://jblevins.org/
15
16 \documentclass[12pt,letterpaper]{article}
17
18 \usepackage{hyperref}
19 \usepackage{geometry}
20 \usepackage{enumitem}
21 \usepackage{fancyhdr}
22 \usepackage{lastpage}
23 % To enable correct spacing
24 \usepackage{xspace}
25 \pagestyle{fancy}
26
27 % Fonts
28 \usepackage{graphicx}
29 \usepackage{fontspec}
30 \setmainfont[Scale=0.95,SmallCapsFont={Equity Caps A},RawFeature=+c2sc]{Equity Text A}
31 \setsansfont[SmallCapsFont={Concourse C4}]{Concourse T4}
32 \setmonofont[Scale=0.9]{Triplicate T4c}
33 \newfontfamily{\tallnums}[RawFeature={+ss02}]{Equity Text A}
34 \newfontfamily{\largersans}[Scale=1.05,SmallCapsFont={Concourse C4}]{Concourse T4}
35 \newcommand{\amper}{{\fontspec[Scale=.9]{Equity Text A}\selectfont\itshape\&}}
36
37 \newcommand{\tla}{TLA${}^+$}
38
39 \def\name{Amin Bandali}
40
41 % The following metadata will show up in the PDF properties
42 \hypersetup{
43 colorlinks = true,
44 urlcolor = black,
45 pdfauthor = {\name},
46 pdfkeywords = {Formal Methods, Type Systems, Proof Systems, Interactive Provers,
47 Programming Languages, Functional Programming, Haskell, Rust},
48 pdftitle = {\name: Curriculum Vitae},
49 pdfsubject = {Curriculum Vitae},
50 pdfpagemode = UseNone
51 }
52
53 \geometry{
54 body={6.5in, 9.0in},
55 left=1.0in,
56 top=1.0in
57 }
58
59 \pagestyle{fancy}
60 \fancyhf{}% to clear existing header/footer
61 \renewcommand\headrulewidth{0pt}
62 \cfoot{\vspace*{-.25em}\textsc{Bandali CV --- page \thepage \xspace of
63 \pageref*{LastPage}}}
64
65 % Custom section fonts
66 \usepackage{sectsty}
67 \sectionfont{\rmfamily\mdseries\Large}
68 \subsectionfont{\rmfamily\mdseries\itshape\large}
69
70 % Other possible font commands include:
71 % \ttfamily for teletype,
72 % \sffamily for sans serif,
73 % \bfseries for bold,
74 % \scshape for small caps,
75 % \normalsize, \large, \Large, \LARGE sizes.
76
77 % Don't indent paragraphs.
78 \setlength\parindent{0em}
79
80 % Make lists without bullets and compact spacing
81 \renewenvironment{itemize}{
82 \begin{list}{}{
83 \setlength{\leftmargin}{1.5em}
84 \setlength{\itemsep}{0.25em}
85 \setlength{\parskip}{0pt}
86 \setlength{\parsep}{0.25em}
87 }
88 }{
89 \end{list}
90 }
91 \setlist[enumerate]{itemsep=0.25em}
92
93 \begin{document}
94
95 \vspace*{-3em}
96
97 % Place name at left
98 {\huge \name}
99
100 % Alternatively, print name centered and bold:
101 %\centerline{\huge \bf \name}
102
103 \medskip
104
105 \begin{minipage}[t]{0.495\textwidth}
106 site: \href{https://aminb.org}{https://aminb.org} \\
107 email: \href{mailto:abandali@uwaterloo.ca}{abandali@uwaterloo.ca} \\
108 phone: available upon request
109 \end{minipage}
110
111 \vspace*{1em}
112
113 \section*{Education}
114
115 \begin{itemize}
116 \setlength\itemsep{.75em}
117
118 \item {\large Master of Mathematics (Computer Science)}\, |\, {\small 2018--present}
119
120 \textit{University of Waterloo}, Canada
121
122 \begin{itemize}
123 \item Supervised by Dr. Nancy Day | GPA: 3.7/4.0 | Expected
124 completion: December 2019
125 \item Research focusing on formal logic, model checking, and verification.
126 \end{itemize}
127
128 \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--2017}
129
130 \textit{York University}, Toronto, Canada
131
132 \begin{itemize}
133 \item GPA: 7.84/9.0
134 \item Relevant courses: System Specification \amper\
135 Refinement, Software Requirements Eng., Software Design, Operating
136 Systems, Computational Complexity, Design \amper\ Analysis of Algorithms.
137 \item Finished first year (2013-14) at \textit{Carleton University} with a GPA
138 of 11.0/12.0, then transferred to \textit{York University} in Fall 2014.
139 \end{itemize}
140
141 \end{itemize}
142
143 \section*{Publications}
144
145 \begin{itemize}
146 \item {\large \tallnums MoDRE 2018}
147
148 \begin{itemize}
149 \item {\largersans A Comparison of the Declarative Modelling
150 Languages B, Dash, and \tla}
151 % TODO: pdf,
152
153 Ali Abbassi, Amin Bandali, Nancy A. Day, and Jose Serna
154 \end{itemize}
155
156 \end{itemize}
157
158 \section*{Work \amper\ Research Experience}
159
160 \begin{itemize}
161
162 \item {\large Cheriton School of Computer Science, } University of Waterloo\, |\, {\small 2018--present}
163
164 \textit{Teaching Assistant}
165
166 \begin{itemize}
167 \item I'll be a TA for \textsf{\small SE 212}, Logic and
168 Computation, taught by Dr. Day in Fall 2018.
169 \item I was a TA for \textsf{\small SE 463}, Software Requirements
170 Specification and Analysis, taught by Prof. Atlee.
171 \item I was a TA for \textsf{\small CS 136}, Elementary Algorithm
172 Design and Data Abstraction.
173 \end{itemize}
174
175 \item {\large EECS Department, } York University\, |\, {\small fall 2017}
176
177 \textit{Teaching Assistant}
178
179 \begin{itemize}
180 \item I was a TA for \textsf{\small EECS 1012}, Net-Centric
181 Introduction to Computing, taught by Dr. Brown.
182 \end{itemize}
183
184 \item {\large Software Engineering Lab, } York University\, |\, {\small summer
185 2017}
186
187 \textit{Research Assistant}
188
189 \begin{itemize}
190 \item I worked on an implementation of
191 \href{https://bertrandmeyer.com/2014/12/07/lampsort/}{\textit{Lampsort}} in
192 Eiffel. I also extended the
193 \href{https://svn.eecs.yorku.ca/repos/sel-open/mathmodels/}{\texttt{mathmodels}}
194 library, implementing a \textsc{RATIONAL} class for working with arbitrarily
195 large rational numbers.
196 \end{itemize}
197
198 \item {\large Software Engineering Lab, } York University\, |\, {\small summer
199 2016}
200
201 \textit{Research Student}
202
203 \begin{itemize}
204 \item As an undergraduate research student, I worked on \textit{Literate
205 Unit-B}, the verifier for Unit-B, a new formal method focused on formal
206 verification of reactive, concurrent and distributed systems.
207
208 From the Literate Unit-B codebase (written in Haskell), I decoupled the
209 logic module and used it to build \textit{Unit-B Web}, a web interface using
210 Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also
211 written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders
212 user input on the page, and calls the sequent prover of the logic module,
213 which uses the \textsc{z3 smt} solver to check the validity of user input.
214
215 \item Further, I separated Literate Unit-B's type checker from its parser,
216 allowing easier substitution of other type checking algorithms and in
217 preparation for implementing subtyping.
218 \end{itemize}
219 \end{itemize}
220
221 \section*{Conference Presentations}
222
223 \begin{itemize}
224 \item {\large \tallnums CUCSC 2017}
225
226 \begin{itemize}
227 \item {\largersans The Magic of Specifications and Type Systems}
228 (\href{https://static.aminb.org/cucsc-2017-slides.pdf}{slides}),
229 at Canadian Undergraduate Computer Science Conference, University of
230 Toronto, Canada, Jun 15--17 2017.
231 \end{itemize}
232
233 \item {\large \tallnums Lassonde USSR Conference 2017}
234
235 \begin{itemize}
236 \item {\largersans The Magic of Specifications and Type Systems}
237 (\href{https://static.aminb.org/eecs4080-poster.pdf}{poster}),
238 at Lassonde Undergraduate Summer Student Research Conference, York University,
239 Toronto, Canada, August 15, 2017.
240 \end{itemize}
241
242 \end{itemize}
243
244 \section*{Professional Experience}
245 \begin{itemize}
246 \item {\large Lotek Wireless Inc., } Newmarket, Canada\, |\, {\small
247 summer 2015 \amper\ 2016}
248
249 \textit{Software Developer}
250
251 \begin{itemize}
252 \item Designed and implemented various applications in C\# and C to test and
253 analyze a satellite pass prediction algorithm for predicting the pass
254 windows of Argos satellites, for scheduling send times of data collected by
255 company's wildlife tracking products.
256
257 \item Designed and developed an Employee Portal web application in C\# and the
258 MVC framework, used by employees for accessing various data catalogs and
259 archives.
260 \end{itemize}
261 \vspace{.25em}
262
263 \pagebreak % TODO: remove if necessary
264
265 \item {\large Athlete Builder, } Ottawa, Canada\, |\, {\small 2013--2014}
266
267 \textit{Software Developer}
268
269 \begin{itemize}
270 \item Developed the Backend of Athlete Builder platform in C\# and MVC.
271 \item Was a key role in development of the platform core.
272 \item Developed the alpha version of Athlete Builder Android app in Java.
273 \end{itemize}
274 \end{itemize}
275
276 \section*{Volunteer Activities}
277
278 \begin{itemize}
279
280 \item {\large EmacsConf 2015, } \href{http://emacsconf.org}{emacsconf.org}\, |\,
281 {\small summer 2015}
282
283 \textit{Organizer}
284
285 \begin{itemize}
286 \item EmacsConf is a conference about the joy of Emacs and writing Emacs
287 Lisp. I was a key organizer and in charge of setting up and maintaining
288 several vital pieces of the EmacsConf infrastructure.
289 \end{itemize}
290 \vspace{.25em}
291
292 \item {\large VONICAL Inc., } Ottawa, Canada\, |\, {\small spring 2013}
293
294 \textit{Application Developer}
295
296 \begin{itemize}
297 \item As a volunteer, worked on development of EARN (Employment Accessibility
298 Resource Network) portal using the Anahita social networking platform, in
299 PHP under Linux.
300 \end{itemize}
301 \vspace{.25em}
302
303 \item {\large Hire Works Inc., } Ottawa, Canada\, |\, {\small winter 2013}
304
305 \textit{Mobile \& Web Developer}
306
307 \begin{itemize}
308 \item As a volunteer, I worked on a variety of web and mobile projects for
309 Hire Works, Inc.
310 \end{itemize}
311 \vspace{.25em}
312
313 \item {\large St. Brigid's Summer Camp, } Ottawa, Canada\, |\, {\small summer
314 2012}
315
316 \textit{Web Developer}
317
318 \begin{itemize}
319 \item As a volunteer, I re-designed and coded (from scratch) an updated and
320 revamped version of the photo gallery section of St. Brigid Summer Camp's
321 website in PHP and JavaScript. A refactored version of my code is deployed
322 and being used.
323 \end{itemize}
324 % \vspace{.25em}
325
326 \end{itemize}
327
328
329 \section*{Recent Projects}
330
331 \begin{itemize}
332 \item \textit{Unit-B Web:} The web interface for Unit-B, as mentioned in the
333 \textit{Research Experience} section.\\
334 Source code available at
335 \href{https://github.com/unitb/unitb-web}{https://github.com/unitb/unitb-web}
336
337 \item \textit{tex2png-hs:} A tool for easily converting \TeX\ and \LaTeX\ to
338 \textsc{PNG} images. \texttt{tex2png-hs} is a Haskell port of Xyne's
339 \texttt{tex2png} tool. It is a wrapper around \texttt{latex} and
340 \texttt{dvipng} and provides several options for modifying its behaviour, such
341 as cropping the whitespace around the content, specifying the \textsc{DPI}, or
342 inputting a full document.
343 Source code available at
344 \href{https://github.com/unitb/tex2png-hs}{https://github.com/unitb/tex2png-hs}
345
346 \item For more projects, visit my GitHub profile at
347 \href{https://github.com/aminb}{https://github.com/aminb}.
348 \end{itemize}
349
350 \section*{Miscellaneous}
351
352 \begin{itemize}
353 \item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs
354 Lisp, C\#, JavaScript.
355 \item \textit{Tools:} Emacs, Liquid Haskell, Git, Zsh, \LaTeX, CI Systems
356 (e.g. Travis CI), Rodin.
357 \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
358 Windows.
359 \item \textit{Languages:} Persian (mother tongue), English (fluent), French
360 (beginner).
361 \end{itemize}
362
363
364 % \section*{Achievements}
365
366 % \begin{itemize}
367 % \item Was among the top 1\% incoming students in Carleton University's
368 % undergraduate Computer Science program, and a top student in the faculty of
369 % science.
370 % \item Highest standing in Computer Science in grade 11 (92\%) and grade 12
371 % (100\%) at High school at Glebe~Collegiate~Institute.
372 % \item Ranked in the top 25\% in the Canadian Senior Mathematics Contest held by
373 % University of Waterloo, in 2013 (grade 11).
374 % \item Graduated from high school with an average of 95\%; and designated as an Ontario Scholar.
375 % \end{itemize}
376
377
378 % Footer
379 \bigskip
380 {\small Last updated: \today}
381
382 \end{document}