d268d9ae987818fa34274d1a4c79ab12f659d2c9
[~bandali/cv] / cv.tex
1 % Amin Bandali - Curriculum Vitae
2 %
3 % Copyright (C) 2016 Amin Bandali <amin@aminb.org>
4 % https://aminb.org/
5 %
6 % Based on Jason R. Blevins's Curriculum Vitae template,
7 % Copyright (C) 2004-2016 Jason R. Blevins <jrblevin@sdf.org>
8 % http://jblevins.org/
9 %
10 % You may use use this document as a template to create your own CV
11 % and you may redistribute the source code freely. No attribution is
12 % required in any resulting documents. I do ask that you please leave
13 % this notice and the above URL in the source code if you choose to
14 % redistribute this file.
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}
26 \newfontfamily{\smallcaps}[RawFeature={+c2sc,+scmp}]{EB Garamond}
27 \newcommand{\amper}{{\fontspec[Scale=.9]{EB Garamond}\selectfont\itshape\&}}
28
29 %% Load Microtype with default settings. This will use the
30 %% EB-Garamond protrusion definitions if present.
31 \usepackage{microtype}
32
33
34 \def\name{Amin Bandali}
35
36 % The following metadata will show up in the PDF properties
37 \hypersetup{
38 colorlinks = true,
39 urlcolor = black,
40 pdfauthor = {\name},
41 pdfkeywords = {Programming Languages, Haskell, Rust, Formal Methods, Type
42 Systems, Proof Systems, Automated Provers},
43 pdftitle = {\name: Curriculum Vitae},
44 pdfsubject = {Curriculum Vitae},
45 pdfpagemode = UseNone
46 }
47
48 \geometry{
49 body={6.5in, 9.0in},
50 left=1.0in,
51 top=1.0in
52 }
53
54 % Customize page headers
55 \pagestyle{myheadings}
56 \markright{\name}
57 \thispagestyle{empty}
58
59 % Custom section fonts
60 \usepackage{sectsty}
61 \sectionfont{\rmfamily\mdseries\Large}
62 \subsectionfont{\rmfamily\mdseries\itshape\large}
63
64 % Other possible font commands include:
65 % \ttfamily for teletype,
66 % \sffamily for sans serif,
67 % \bfseries for bold,
68 % \scshape for small caps,
69 % \normalsize, \large, \Large, \LARGE sizes.
70
71 % Don't indent paragraphs.
72 \setlength\parindent{0em}
73
74 % Make lists without bullets and compact spacing
75 \renewenvironment{itemize}{
76 \begin{list}{}{
77 \setlength{\leftmargin}{1.5em}
78 \setlength{\itemsep}{0.25em}
79 \setlength{\parskip}{0pt}
80 \setlength{\parsep}{0.25em}
81 }
82 }{
83 \end{list}
84 }
85 \setlist[enumerate]{itemsep=0.25em}
86
87 \begin{document}
88
89 % Place name at left
90 {\huge \name}
91
92 % Alternatively, print name centered and bold:
93 %\centerline{\huge \bf \name}
94
95 \bigskip
96
97 \begin{minipage}[t]{0.495\textwidth}
98 Email: \href{mailto:amin9@my.yorku.ca}{amin9@my.yorku.ca} \\
99 Homepage: \href{https://aminb.org}{https://aminb.org} \\
100 Phone: available upon request
101 \end{minipage}
102
103 \section*{Research Interests}
104
105 \begin{itemize}
106 \item Functional Programming and functional languages
107 \item Formal methods, especially type systems, proof systems, and automated
108 provers
109 \item Verification, Haskell, and Rust
110 \end{itemize}
111
112 \section*{Education}
113
114 \begin{itemize}
115 \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present}
116
117 \textit{York University}, Canada
118
119 \begin{itemize}
120 \item GPA: 7.9/9.0
121 \item Expected completion: December 2017
122 \item Relevant courses: System Specification \amper\
123 Refinement, Operating System Design, Computational Complexity, Artificial
124 Intelligence \amper\ Logic Programming, Design \amper\ Analysis of
125 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 \end{itemize}
131
132 \section*{Research Experience}
133
134 \begin{itemize}
135 \item {\large Software Engineering Lab, } York University\, |\, {\small summer 2016}
136
137 \textit{Research Student}
138
139 \begin{itemize}
140 \item Semester project: As an undergraduate research student, I
141 worked on \textit{Literate Unit-B}, the verifier for Unit-B, a new
142 formal method focused on formal verification of reactive, concurrent
143 and distributed systems.
144
145 From the Literate Unit-B codebase (written in Haskell), I decoupled the
146 logic module and used it to build \textit{Unit-B Web}, a web interface using
147 Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also
148 written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders
149 user input on the page, and calls the sequent prover of the logic
150 module, which uses the Z3 SMT solver to check the validity of user
151 input.
152
153 \item Volunteer work: I'm currently working on implementing subtyping for
154 Literate Unit-B.
155 \end{itemize}
156 \end{itemize}
157
158 \section*{Professional Experience}
159 \begin{itemize}
160 \item {\large Lotek Wireless Inc., } Newmarket, Canada\, |\, {\small 2015--2016}
161
162 \textit{Software Developer}
163
164 \begin{itemize}
165 \item Designed and implemented various applications in C\# and C to test and
166 analyze a satellite pass prediction algorithm for predicting the pass
167 windows of Argos satellites, for scheduling send times of data collected by
168 company's wildlife tracking products.
169
170 \item Designed and developed an Employee Portal web application in C\# and the
171 MVC framework, used by employees for accessing various data catalogs and
172 archives.
173 \end{itemize}
174 \vspace{.25em}
175
176 \item {\large Athlete Builder, } Ottawa, Canada\, |\, {\small 2013--2014}
177
178 \textit{Software Developer}
179
180 \begin{itemize}
181 \item Developed the Backend of Athlete Builder platform in C\# and MVC.
182 \item Was a key role in development of the platform core.
183 \item Developed the alpha version of Athlete Builder Android app in Java.
184 \end{itemize}
185 \end{itemize}
186
187 \section*{Volunteer Activities}
188
189 \begin{itemize}
190
191 \item {\large EmacsConf 2015, } \href{http://emacsconf.org}{emacsconf.org}\, |\,
192 {\small summer 2015}
193
194 \textit{Organizer}
195
196 \begin{itemize}
197 \item EmacsConf is a conference about the joy of Emacs and writing Emacs
198 Lisp. I was a key organizer and in charge of setting up and maintaining
199 several vital pieces of the EmacsConf infrastructure.
200 \end{itemize}
201 \vspace{.25em}
202
203 \item {\large VONICAL Inc., } Ottawa, Canada\, |\, {\small spring 2013}
204
205 \textit{Application Developer}
206
207 \begin{itemize}
208 \item As a volunteer, worked on development of EARN (Employment Accessibility
209 Resource Network) portal using the Anahita social networking platform, in
210 PHP under Linux.
211 \end{itemize}
212 \vspace{.25em}
213
214 \item {\large Hire Works Inc., } Ottawa, Canada\, |\, {\small winter 2013}
215
216 \textit{Mobile \& Web Developer}
217
218 \begin{itemize}
219 \item As a volunteer, I worked on a variety of web and mobile projects for
220 Hire Works, Inc.
221 \end{itemize}
222 \vspace{.25em}
223
224 \item {\large St. Brigid's Summer Camp, } Ottawa, Canada\, |\, {\small summer
225 2012}
226
227 \textit{Web Developer}
228
229 \begin{itemize}
230 \item As a volunteer, I re-designed and coded (from scratch) an updated and
231 revamped version of the photo gallery section of St. Brigid Summer Camp's
232 website in PHP and JavaScript. A refactored version of my code is deployed
233 and being used.
234 \end{itemize}
235 % \vspace{.25em}
236
237 \end{itemize}
238
239
240 \section*{Miscellaneous}
241
242 \begin{itemize}
243 \item \textit{Programming Languages:} Haskell, Rust, C, Python, Emacs Lisp,
244 \LaTeX, C\#, Java, JavaScript, C++.
245 \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS,
246 Windows.
247 \item \textit{Tools:} Emacs, Git, Mercurial, Zsh, CI Systems (e.g. Travis CI),
248 Rodin, SQL DBs.
249 \item \textit{Languages:} English (fluent), Persian (native), French (beginner).
250 \end{itemize}
251
252
253 % Footer
254 \bigskip
255 {\small Last updated: \today}
256
257 \end{document}