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