3638053c318d04a355c42a436da48d2abc0b107d
[~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
38 \def\name{Amin Bandali}
39
40 % The following metadata will show up in the PDF properties
41 \hypersetup{
42 colorlinks = true,
43 urlcolor = black,
44 pdfauthor = {\name},
45 pdfkeywords = {Programming Languages, Functional Programming, Haskell, Rust,
46 Formal Methods, Type Systems, Proof Systems, Automated Provers},
47 pdftitle = {\name: Curriculum Vitae},
48 pdfsubject = {Curriculum Vitae},
49 pdfpagemode = UseNone
50 }
51
52 \geometry{
53 body={6.5in, 9.0in},
54 left=1.0in,
55 top=1.0in
56 }
57
58 \pagestyle{fancy}
59 \fancyhf{}% to clear existing header/footer
60 \renewcommand\headrulewidth{0pt}
61 \cfoot{\vspace*{-.25em}\textsc{Bandali CV --- page \thepage \xspace of
62 \pageref*{LastPage}}}
63
64 % Custom section fonts
65 \usepackage{sectsty}
66 \sectionfont{\rmfamily\mdseries\Large}
67 \subsectionfont{\rmfamily\mdseries\itshape\large}
68
69 % Other possible font commands include:
70 % \ttfamily for teletype,
71 % \sffamily for sans serif,
72 % \bfseries for bold,
73 % \scshape for small caps,
74 % \normalsize, \large, \Large, \LARGE sizes.
75
76 % Don't indent paragraphs.
77 \setlength\parindent{0em}
78
79 % Make lists without bullets and compact spacing
80 \renewenvironment{itemize}{
81 \begin{list}{}{
82 \setlength{\leftmargin}{1.5em}
83 \setlength{\itemsep}{0.25em}
84 \setlength{\parskip}{0pt}
85 \setlength{\parsep}{0.25em}
86 }
87 }{
88 \end{list}
89 }
90 \setlist[enumerate]{itemsep=0.25em}
91
92 \begin{document}
93
94 \vspace*{-3em}
95
96 % Place name at left
97 {\huge \name}
98
99 % Alternatively, print name centered and bold:
100 %\centerline{\huge \bf \name}
101
102 \medskip
103
104 \begin{minipage}[t]{0.495\textwidth}
105 Email: \href{mailto:amin9@my.yorku.ca}{amin9@my.yorku.ca} \\
106 Site: \href{https://aminb.org}{https://aminb.org} \\
107 Phone: available upon request
108 \end{minipage}
109
110 \vspace*{1em}
111
112 \section*{Education}
113
114 \begin{itemize}
115 \setlength\itemsep{.75em}
116 \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present}
117
118 \textit{York University}, Toronto, Canada
119
120 \begin{itemize}
121 \item Expected completion: December 2017 \hspace{-.15em} | \hspace{-.15em}
122 GPA: 7.9/9.0
123 \item Relevant courses: System Specification \amper\
124 Refinement, Software Requirements Eng., Software Design, Operating
125 Systems, Computational Complexity, Design \amper\ Analysis of Algorithms.
126 \item Finished first year (2013-14) at \textit{Carleton University} with a GPA
127 of 11.0/12.0, then transferred to \textit{York University} in Fall 2014.
128 \end{itemize}
129
130 %% \item {\large High School Diploma}\, |\, {\small 2013}
131
132 %% \textit{Glebe Collegiate Institute}, Ottawa, Canada
133
134 %% \hspace{1.3em} Average: 94.3\%
135 \end{itemize}
136
137 \section*{Research Interests}
138
139 \begin{itemize}
140 \item Functional programming and functional languages.
141 \item Formal methods, especially type systems, proof systems, and interactive
142 provers.
143 \item Verification, Haskell, and Rust.
144 \end{itemize}
145
146 \section*{Research Experience}
147
148 \begin{itemize}
149 \item {\large Software Engineering Lab, } York University\, |\, {\small summer
150 2017}
151
152 \textit{Research Assistant}
153
154 \begin{itemize}
155 \item I'm working on expanding and testing \texttt{mathmodels},
156 library implementing abstract mathematical collections written in Eiffel.
157 I'll also be modeling various pieces of software in $\textrm{TLA}^+$.
158 \end{itemize}
159
160 \item {\large Software Engineering Lab, } York University\, |\, {\small summer
161 2016}
162
163 \textit{Research Student}
164
165 \begin{itemize}
166 \item As an undergraduate research student, I worked on \textit{Literate
167 Unit-B}, the verifier for Unit-B, a new formal method focused on formal
168 verification of reactive, concurrent and distributed systems.
169
170 From the Literate Unit-B codebase (written in Haskell), I decoupled the
171 logic module and used it to build \textit{Unit-B Web}, a web interface using
172 Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also
173 written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders
174 user input on the page, and calls the sequent prover of the logic module,
175 which uses the \textsc{z3 smt} solver to check the validity of user input.
176
177 \item Further, I separated Literate Unit-B's type checker from its parser,
178 allowing easier substitution of other type checking algorithms and in
179 preparation for implementing subtyping.
180 \end{itemize}
181 \end{itemize}
182
183 \section*{Conference Presentations}
184
185 \begin{itemize}
186 \item {\large \tallnums CUCSC 2017}
187
188 \begin{itemize}
189 \item {\largersans The Magic of Specifications and Type Systems}
190 (\href{https://static.aminb.org/cucsc-2017-slides.pdf}{slides}),
191 at Canadian Undergraduate Computer Science Conference, University of
192 Toronto, Canada, Jun 15--17 2017.
193 \end{itemize}
194
195 \item {\large \tallnums Lassonde USSR Conference 2017}
196
197 \begin{itemize}
198 \item {\largersans The Magic of Specifications and Type Systems}
199 (\href{https://static.aminb.org/eecs4080-poster.pdf}{poster}),
200 at Lassonde Undergraduate Summer Student Research Conference, York University,
201 Toronto, Canada, August 15, 2017.
202 \end{itemize}
203
204 \end{itemize}
205
206 \section*{Professional Experience}
207 \begin{itemize}
208 \item {\large Lotek Wireless Inc., } Newmarket, Canada\, |\, {\small 2015--2016}
209
210 \textit{Software Developer}
211
212 \begin{itemize}
213 \item Designed and implemented various applications in C\# and C to test and
214 analyze a satellite pass prediction algorithm for predicting the pass
215 windows of Argos satellites, for scheduling send times of data collected by
216 company's wildlife tracking products.
217
218 \item Designed and developed an Employee Portal web application in C\# and the
219 MVC framework, used by employees for accessing various data catalogs and
220 archives.
221 \end{itemize}
222 \vspace{.25em}
223
224 \item {\large Athlete Builder, } Ottawa, Canada\, |\, {\small 2013--2014}
225
226 \textit{Software Developer}
227
228 \begin{itemize}
229 \item Developed the Backend of Athlete Builder platform in C\# and MVC.
230 \item Was a key role in development of the platform core.
231 \item Developed the alpha version of Athlete Builder Android app in Java.
232 \end{itemize}
233 \end{itemize}
234
235 \section*{Volunteer Activities}
236
237 \begin{itemize}
238
239 \item {\large EmacsConf 2015, } \href{http://emacsconf.org}{emacsconf.org}\, |\,
240 {\small summer 2015}
241
242 \textit{Organizer}
243
244 \begin{itemize}
245 \item EmacsConf is a conference about the joy of Emacs and writing Emacs
246 Lisp. I was a key organizer and in charge of setting up and maintaining
247 several vital pieces of the EmacsConf infrastructure.
248 \end{itemize}
249 \vspace{.25em}
250
251 \item {\large VONICAL Inc., } Ottawa, Canada\, |\, {\small spring 2013}
252
253 \textit{Application Developer}
254
255 \begin{itemize}
256 \item As a volunteer, worked on development of EARN (Employment Accessibility
257 Resource Network) portal using the Anahita social networking platform, in
258 PHP under Linux.
259 \end{itemize}
260 \vspace{.25em}
261
262 \item {\large Hire Works Inc., } Ottawa, Canada\, |\, {\small winter 2013}
263
264 \textit{Mobile \& Web Developer}
265
266 \begin{itemize}
267 \item As a volunteer, I worked on a variety of web and mobile projects for
268 Hire Works, Inc.
269 \end{itemize}
270 \vspace{.25em}
271
272 \item {\large St. Brigid's Summer Camp, } Ottawa, Canada\, |\, {\small summer
273 2012}
274
275 \textit{Web Developer}
276
277 \begin{itemize}
278 \item As a volunteer, I re-designed and coded (from scratch) an updated and
279 revamped version of the photo gallery section of St. Brigid Summer Camp's
280 website in PHP and JavaScript. A refactored version of my code is deployed
281 and being used.
282 \end{itemize}
283 % \vspace{.25em}
284
285 \end{itemize}
286
287
288 \section*{Recent Projects}
289
290 \begin{itemize}
291 \item \textit{Unit-B Web:} The web interface for Unit-B, as mentioned in the
292 \textit{Research Experience} section.\\
293 Source code available at
294 \href{https://github.com/unitb/unitb-web}{https://github.com/unitb/unitb-web}
295
296 \item \textit{tex2png-hs:} A tool for easily converting \TeX\ and \LaTeX\ to
297 \textsc{PNG} images. \texttt{tex2png-hs} is a Haskell port of Xyne's
298 \texttt{tex2png} tool. It is a wrapper around \texttt{latex} and
299 \texttt{dvipng} and provides several options for modifying its behaviour, such
300 as cropping the whitespace around the content, specifying the \textsc{DPI}, or
301 inputting a full document.
302 Source code available at
303 \href{https://github.com/unitb/tex2png-hs}{https://github.com/unitb/tex2png-hs}
304
305 \item For more projects, visit my GitHub profile at
306 \href{https://github.com/aminb}{https://github.com/aminb}.
307 \end{itemize}
308
309 \section*{Miscellaneous}
310
311 \begin{itemize}
312 \item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs
313 Lisp, C\#, JavaScript.
314 \item \textit{Tools:} Emacs, Liquid Haskell, Git, Zsh, \LaTeX, CI Systems
315 (e.g. Travis CI), Rodin.
316 \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
317 Windows.
318 \item \textit{Languages:} Persian (mother tongue), English (fluent), French
319 (beginner).
320 \end{itemize}
321
322
323 % Footer
324 \bigskip
325 {\small Last updated: \today}
326
327 \end{document}