What I'm doing this summer
[~bandali/cv] / cv.tex
CommitLineData
d99d2f71 1%% cv.tex
10664de5 2%% Copyright 2016-2017 Amin Bandali <amin@aminb.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}
21
22% Fonts
23\usepackage{graphicx}
24\usepackage{fontspec}
25\setmainfont[Numbers=Lining]{EB Garamond}
2acab84b 26\setmonofont[Scale=0.85]{Ubuntu Mono}
8a25c428 27\newfontfamily{\smallcaps}[RawFeature={+c2sc,+scmp}]{EB Garamond}
8a25c428
AB
28\newcommand{\amper}{{\fontspec[Scale=.9]{EB Garamond}\selectfont\itshape\&}}
29
30%% Load Microtype with default settings. This will use the
31%% EB-Garamond protrusion definitions if present.
32\usepackage{microtype}
33
34
35\def\name{Amin Bandali}
36
37% The following metadata will show up in the PDF properties
38\hypersetup{
39 colorlinks = true,
40 urlcolor = black,
41 pdfauthor = {\name},
42 pdfkeywords = {Programming Languages, Haskell, Rust, Formal Methods, Type
43 Systems, Proof Systems, Automated Provers},
44 pdftitle = {\name: Curriculum Vitae},
45 pdfsubject = {Curriculum Vitae},
46 pdfpagemode = UseNone
47}
48
49\geometry{
50 body={6.5in, 9.0in},
51 left=1.0in,
52 top=1.0in
53}
54
55% Customize page headers
56\pagestyle{myheadings}
57\markright{\name}
58\thispagestyle{empty}
59
60% Custom section fonts
61\usepackage{sectsty}
62\sectionfont{\rmfamily\mdseries\Large}
63\subsectionfont{\rmfamily\mdseries\itshape\large}
64
65% Other possible font commands include:
66% \ttfamily for teletype,
67% \sffamily for sans serif,
68% \bfseries for bold,
69% \scshape for small caps,
70% \normalsize, \large, \Large, \LARGE sizes.
71
72% Don't indent paragraphs.
73\setlength\parindent{0em}
74
75% Make lists without bullets and compact spacing
76\renewenvironment{itemize}{
77 \begin{list}{}{
78 \setlength{\leftmargin}{1.5em}
79 \setlength{\itemsep}{0.25em}
80 \setlength{\parskip}{0pt}
81 \setlength{\parsep}{0.25em}
82 }
83}{
84 \end{list}
85}
86\setlist[enumerate]{itemsep=0.25em}
87
88\begin{document}
89
90% Place name at left
91{\huge \name}
92
93% Alternatively, print name centered and bold:
94%\centerline{\huge \bf \name}
95
96\bigskip
97
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
102\end{minipage}
103
104\section*{Research Interests}
105
106\begin{itemize}
2acab84b 107\item Functional Programming and functional languages.
8a25c428 108\item Formal methods, especially type systems, proof systems, and automated
2acab84b
AB
109 provers.
110\item Verification, Haskell, and Rust.
8a25c428
AB
111\end{itemize}
112
113\section*{Education}
114
115\begin{itemize}
9bbaaec3 116 \setlength\itemsep{.75em}
8a25c428
AB
117\item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present}
118
9bbaaec3 119 \textit{York University}, Toronto, Canada
8a25c428
AB
120
121 \begin{itemize}
2acab84b 122 \item Expected completion: December 2017 \hspace{1em} GPA: 7.9/9.0
c543f989 123 \item Relevant courses: System Specification \amper\
2acab84b
AB
124 Refinement, Software Requirements Eng., Software Design, Operating
125 Systems, Computational Complexity, Design \amper\ Analysis of Algorithms.
8a25c428
AB
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}
9bbaaec3 129
2acab84b 130%% \item {\large High School Diploma}\, |\, {\small 2013}
9bbaaec3 131
2acab84b 132%% \textit{Glebe Collegiate Institute}, Ottawa, Canada
9bbaaec3 133
2acab84b 134%% \hspace{1.3em} Average: 94.3\%
8a25c428
AB
135\end{itemize}
136
137\section*{Research Experience}
138
139\begin{itemize}
2acab84b
AB
140\item {\large Software Engineering Lab, } York University\, |\, {\small summer
141 2017}
142
143 \textit{Research Assistant}
144
145 \begin{itemize}
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+.
149 \end{itemize}
150
8a25c428
AB
151\item {\large Software Engineering Lab, } York University\, |\, {\small summer 2016}
152
153 \textit{Research Student}
154
155 \begin{itemize}
10664de5
AB
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.
8a25c428
AB
159
160 From the Literate Unit-B codebase (written in Haskell), I decoupled the
c543f989 161 logic module and used it to build \textit{Unit-B Web}, a web interface using
8a25c428
AB
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
10664de5
AB
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.
8a25c428 166
10664de5
AB
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.
8a25c428 170 \end{itemize}
2acab84b 171\end{itemize}
8a25c428
AB
172
173\section*{Professional Experience}
174\begin{itemize}
175\item {\large Lotek Wireless Inc., } Newmarket, Canada\, |\, {\small 2015--2016}
176
177 \textit{Software Developer}
178
179 \begin{itemize}
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.
184
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
187 archives.
188 \end{itemize}
189 \vspace{.25em}
190
191\item {\large Athlete Builder, } Ottawa, Canada\, |\, {\small 2013--2014}
192
193 \textit{Software Developer}
194
195 \begin{itemize}
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.
199 \end{itemize}
200\end{itemize}
201
202\section*{Volunteer Activities}
203
204\begin{itemize}
205
206\item {\large EmacsConf 2015, } \href{http://emacsconf.org}{emacsconf.org}\, |\,
207 {\small summer 2015}
208
209 \textit{Organizer}
210
211 \begin{itemize}
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.
215 \end{itemize}
216 \vspace{.25em}
217
218\item {\large VONICAL Inc., } Ottawa, Canada\, |\, {\small spring 2013}
219
220 \textit{Application Developer}
221
222 \begin{itemize}
223 \item As a volunteer, worked on development of EARN (Employment Accessibility
224 Resource Network) portal using the Anahita social networking platform, in
225 PHP under Linux.
226 \end{itemize}
227 \vspace{.25em}
228
229\item {\large Hire Works Inc., } Ottawa, Canada\, |\, {\small winter 2013}
230
231 \textit{Mobile \& Web Developer}
232
233 \begin{itemize}
234 \item As a volunteer, I worked on a variety of web and mobile projects for
235 Hire Works, Inc.
236 \end{itemize}
237 \vspace{.25em}
238
239\item {\large St. Brigid's Summer Camp, } Ottawa, Canada\, |\, {\small summer
240 2012}
241
242 \textit{Web Developer}
243
244 \begin{itemize}
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
248 and being used.
249 \end{itemize}
250 % \vspace{.25em}
251
252\end{itemize}
253
254
8b20245a
AB
255\section*{Recent Projects}
256
257\begin{itemize}
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}
262
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}
270
271\item For more projects, visit my GitHub profile at
272 \href{https://github.com/aminb}{https://github.com/aminb}.
273\end{itemize}
274
8a25c428
AB
275\section*{Miscellaneous}
276
277\begin{itemize}
2acab84b
AB
278\item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs
279 Lisp, C\#, JavaScript.
8a25c428
AB
280\item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
281 Windows.
2acab84b 282\item \textit{Tools:} Emacs, Git, Zsh, \LaTeX, CI Systems (e.g. Travis CI),
8a25c428 283 Rodin, SQL DBs.
07f3d0ee
AB
284\item \textit{Languages:} Persian (mother tongue), English (fluent), French
285 (beginner).
8a25c428
AB
286\end{itemize}
287
288
289% Footer
290\bigskip
291{\small Last updated: \today}
292
293\end{document}