2 %% Copyright 2016-2017 Amin Bandali <amin@aminb.org>
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.
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/
16 \documentclass[12pt,letterpaper
]{article
}
25 \setmainfont[Numbers=Lining
]{EB Garamond
}
26 \setmonofont[Scale=
0.85]{Ubuntu Mono
}
27 \newfontfamily{\smallcaps}[RawFeature=
{+c2sc,+scmp
}]{EB Garamond
}
28 \newcommand{\amper}{{\fontspec[Scale=
.9]{EB Garamond
}\selectfont\itshape\&
}}
30 %% Load Microtype with default settings. This will use the
31 %% EB-Garamond protrusion definitions if present.
32 \usepackage{microtype
}
35 \def\name{Amin Bandali
}
37 % The following metadata will show up in the PDF properties
42 pdfkeywords =
{Programming Languages, Haskell, Rust, Formal Methods, Type
43 Systems, Proof Systems, Automated Provers
},
44 pdftitle =
{\name: Curriculum Vitae
},
45 pdfsubject =
{Curriculum Vitae
},
55 % Customize page headers
56 \pagestyle{myheadings
}
60 % Custom section fonts
62 \sectionfont{\rmfamily\mdseries\Large}
63 \subsectionfont{\rmfamily\mdseries\itshape\large}
65 % Other possible font commands include:
66 % \ttfamily for teletype,
67 % \sffamily for sans serif,
69 % \scshape for small caps,
70 % \normalsize, \large, \Large, \LARGE sizes.
72 % Don't indent paragraphs.
73 \setlength\parindent{0em
}
75 % Make lists without bullets and compact spacing
76 \renewenvironment{itemize
}{
78 \setlength{\leftmargin}{1.5em
}
79 \setlength{\itemsep}{0.25em
}
80 \setlength{\parskip}{0pt
}
81 \setlength{\parsep}{0.25em
}
86 \setlist[enumerate
]{itemsep=
0.25em
}
93 % Alternatively, print name centered and bold:
94 %\centerline{\huge \bf \name}
98 \begin{minipage
}[t
]{0.495\textwidth}
99 Email:
\href{mailto:amin9@my.yorku.ca
}{amin9@my.yorku.ca
} \\
100 Homepage:
\href{https://aminb.org
}{https://aminb.org
} \\
101 Phone: available upon request
104 \section*
{Research Interests
}
107 \item Functional Programming and functional languages.
108 \item Formal methods, especially type systems, proof systems, and automated
110 \item Verification, Haskell, and Rust.
116 \setlength\itemsep{.75em
}
117 \item {\large B.Sc. Honours Computer Science
}\, |\,
{\small 2013--present
}
119 \textit{York University
}, Toronto, Canada
122 \item Expected completion: December
2017 \hspace{1em
} 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.
130 %% \item {\large High School Diploma}\, |\, {\small 2013}
132 %% \textit{Glebe Collegiate Institute}, Ottawa, Canada
134 %% \hspace{1.3em} Average: 94.3\%
137 \section*
{Research Experience
}
140 \item {\large Software Engineering Lab,
} York University\, |\,
{\small summer
143 \textit{Research Assistant
}
146 \item I'm working on expanding and testing the
\texttt{mathmodels
} library,
147 collection of abstract mathematical collections written in Eiffel. I'll also
148 be modeling various pieces of software in TLA+.
151 \item {\large Software Engineering Lab,
} York University\, |\,
{\small summer
2016}
153 \textit{Research Student
}
156 \item As an undergraduate research student, I worked on
\textit{Literate
157 Unit-B
}, the verifier for Unit-B, a new formal method focused on formal
158 verification of reactive, concurrent and distributed systems.
160 From the Literate Unit-B codebase (written in Haskell), I decoupled the
161 logic module and used it to build
\textit{Unit-B Web
}, a web interface using
162 Literate Unit-B to do predicate calculus proofs.
\linebreak Unit-B Web, also
163 written in Haskell, supports the
\LaTeX\ syntax of the Unit-B logic, renders
164 user input on the page, and calls the sequent prover of the logic module,
165 which uses the Z3 SMT solver to check the validity of user input.
167 \item Further, I separated Literate Unit-B's type checker from its parser,
168 allowing easier substitution of other type checking algorithms and in
169 preparation for implementing subtyping.
173 \section*
{Professional Experience
}
175 \item {\large Lotek Wireless Inc.,
} Newmarket, Canada\, |\,
{\small 2015--
2016}
177 \textit{Software Developer
}
180 \item Designed and implemented various applications in C\# and C to test and
181 analyze a satellite pass prediction algorithm for predicting the pass
182 windows of Argos satellites, for scheduling send times of data collected by
183 company's wildlife tracking products.
185 \item Designed and developed an Employee Portal web application in C\# and the
186 MVC framework, used by employees for accessing various data catalogs and
191 \item {\large Athlete Builder,
} Ottawa, Canada\, |\,
{\small 2013--
2014}
193 \textit{Software Developer
}
196 \item Developed the Backend of Athlete Builder platform in C\# and MVC.
197 \item Was a key role in development of the platform core.
198 \item Developed the alpha version of Athlete Builder Android app in Java.
202 \section*
{Volunteer Activities
}
206 \item {\large EmacsConf
2015,
} \href{http://emacsconf.org
}{emacsconf.org
}\, |\,
212 \item EmacsConf is a conference about the joy of Emacs and writing Emacs
213 Lisp. I was a key organizer and in charge of setting up and maintaining
214 several vital pieces of the EmacsConf infrastructure.
218 \item {\large VONICAL Inc.,
} Ottawa, Canada\, |\,
{\small spring
2013}
220 \textit{Application Developer
}
223 \item As a volunteer, worked on development of EARN (Employment Accessibility
224 Resource Network) portal using the Anahita social networking platform, in
229 \item {\large Hire Works Inc.,
} Ottawa, Canada\, |\,
{\small winter
2013}
231 \textit{Mobile \& Web Developer
}
234 \item As a volunteer, I worked on a variety of web and mobile projects for
239 \item {\large St. Brigid's Summer Camp,
} Ottawa, Canada\, |\,
{\small summer
242 \textit{Web Developer
}
245 \item As a volunteer, I re-designed and coded (from scratch) an updated and
246 revamped version of the photo gallery section of St. Brigid Summer Camp's
247 website in PHP and JavaScript. A refactored version of my code is deployed
255 \section*
{Recent Projects
}
258 \item \textit{Unit-B Web:
} The web interface for Unit-B, as mentioned in the
259 \textit{Research Experience
} section.\\
260 Source code available at
261 \href{https://github.com/unitb/unitb-web
}{https://github.com/unitb/unitb-web
}
263 \item \textit{tex2png-hs:
} A tool for easily converting
\TeX\ and
\LaTeX\ to PNG
264 images.
\verb#tex2png-hs# is a Haskell port of Xyne's
\verb#tex2png# tool. It
265 is a wrapper around
\verb#latex# and
\verb#dvipng# and provides several
266 options for modifying its behaviour, such as cropping the whitespace around
267 the content, specifying the DPI, or inputting a full
document.\\
268 Source code available at
269 \href{https://github.com/unitb/tex2png-hs
}{https://github.com/unitb/tex2png-hs
}
271 \item For more projects, visit my GitHub profile at
272 \href{https://github.com/aminb
}{https://github.com/aminb
}.
275 \section*
{Miscellaneous
}
278 \item \textit{Programming Languages:
} Haskell, Rust, Eiffel, Python, C, Emacs
279 Lisp, C\#, JavaScript.
280 \item \textit{Platforms:
} Arch Linux, Ubuntu and other distros, Android, macOS,
282 \item \textit{Tools:
} Emacs, Git, Zsh,
\LaTeX, CI Systems (e.g. Travis CI),
284 \item \textit{Languages:
} Persian (mother tongue), English (fluent), French
291 {\small Last updated:
\today}