1 % bandali-cv.tex --- bandali's curriculum vitae -*-latex-*-
3 % Copyright (C) 2016-2020 Amin Bandali <bandali@uwaterloo.ca>
5 % This CV is free software: you can redistribute it and/or modify
6 % it under the terms of the GNU General Public License as published by
7 % the Free Software Foundation, either version 3 of the License, or
8 % (at your option) any later version.
10 % This CV is distributed in the hope that it will be useful,
11 % but WITHOUT ANY WARRANTY; without even the implied warranty of
12 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 % GNU General Public License for more details.
15 % You should have received a copy of the GNU General Public License
16 % along with this CV. If not, see <https://www.gnu.org/licenses/>.
18 % With inspirations from Jason Blevins's CV <https://jblevins.org/cv>.
21 \documentclass[letterpaper
]{article
}
23 \def\name{Amin Bandali
}
25 \def\siteurl{https://
\site}
26 \def\pubs#1{\siteurl/publications\#
#1}
27 \def\mail{bandali@uwaterloo.ca
}
28 \def\nday{https://cs.uwaterloo.ca/~nday/
}
31 \usepackage{geometry
} % setting page geometry
32 \usepackage{enumitem
} % enumerate with [resume] option
33 \usepackage{fontspec
} % needs LuaTeX
34 \usepackage{sectsty
} % custom section fonts
35 \usepackage{hyperref
} % for PDF metadata
36 \usepackage{fancyhdr
} % fine control of headers/footers
37 \usepackage{lastpage
} % as the name says :-)
41 pdfstartview=
{FitH
},
% (H for horizontal)
42 pdftitle=
{\name: Curriculum Vitae
},
44 pdfsubject=
{Curriculum Vitae
},
45 pdfkeywords=
{formal methods, formal logic, model checking,
46 verification, type systems, interactive theorem provers,
47 functional programming, lean prover, haskell
},
49 pdfcreator=
{GNU Emacs
28.0.50},
66 \fancyhf{} % clear existing header/footer
67 \renewcommand\headrulewidth{0pt
}
69 \textsc{\addfontfeature{Letters=UppercaseSmallCaps,LetterSpace=
6.0}%
70 Bandali CV
\textemdash{} page
\thepage{} of
\pageref*
{LastPage
}}}
73 \usepackage[lining, tabular
]{ebgaramond
}
74 \setmonofont[Scale=
0.87]{inconsolata
}
75 \setsansfont[Scale=
0.95]{Jost
}
78 \newfontfamily\titleface{Linux Libertine O
}
79 \newcommand{\titlefont}[1]{{\titleface\large\addfontfeature{LetterSpace=
6.0}\MakeUppercase{#1}}}
81 %% section heading font
82 \newfontfamily\sectionface{Linux Libertine O
}
83 \sectionfont{\sectionface\mdseries\normalsize\uppercase}
84 \subsectionfont{\sectionface\mdseries\normalsize\itshape}
86 %% don't indent paragraphs
87 \setlength\parindent{0em
}
89 %% omit itemize bullets, set more compact spacing
90 \renewenvironment{itemize
}{
92 \setlength{\leftmargin}{1.5em
}
93 \setlength{\itemsep}{0.25em
}
94 \setlength{\parskip}{0em
}
95 \setlength{\parsep}{0.25em
}
100 \setlist[enumerate
]{itemsep=
0.25em
}
102 %% month and year only
103 \renewcommand{\today}{\ifcase \month \or January
\or February
\or March
%
104 \or April
\or May
\or June
\or July
\or August
\or September
\or October
%
105 \or November
\or December
\fi%
106 \space \number \year}
108 %% various command definitions
109 \newcommand{\tla}{TLA$
{}^+$
}
120 \href{\siteurl}{\addfontfeature{LetterSpace=
2.0}\site}\\
121 \href{mailto:
\mail}{\mail}\\
123 \section*
{Summary of Qualifications
}
125 %% \begin{enumerate}[label=\raisebox{-0.25ex}{\textbullet}]
127 \item Experience with building software in diverse areas and for
128 various platforms, including GNU/Linux and Windows.
129 \item Passionate about applying scientific and engineering methods
130 while designing and building software systems.
131 \item Using formal specification techniques to find
132 specification-level bugs early in the design stage rather than
134 \item GNU/Linux system administration on both the client and the
136 \item Problem-solving and communication skills, honed through research
137 and teaching roles held in graduate school, as well as holding
138 tutorials discussing complex concepts with fellow students and peers
139 throughout undergraduate studies and high school.
140 \item Organizational and teamwork skills, strengthened thanks to
141 community service in form of volunteer activities including
142 organizing the EmacsConf conference and volunteer work for charities
143 such as the Free Software Foundation and St.~Brigid's Summer Camp.
150 \item Master of Mathematics in Computer Science, University of
152 % completed July 14, 2020
154 \item Thesis: A Comprehensive Study of Declarative Modelling
156 \item Supervisor:
\href{\nday}{Dr. Nancy~A. Day
}. \ GPA:
3.7/
4.0.
158 \item Bachelor of Science with Honours in Computer Science, York
160 % completed December 2017
163 \section*
{Research Interests
}
166 \item Formal Logic, Model Checking, Theorem Proving, Verification
169 \section*
{Publications \& Presentations
}
172 \item \href{\siteurl/mmath
}{\textsf{A Comprehensive Study of
173 Declarative Modelling Languages
}}\\
\href{\siteurl}{Amin Bandali
},
174 \textit{Master's thesis
}, University of Waterloo,
2020.
175 \item \href{\pubs{DBLP:conf/re/AbbassiBDS18
}}{\textsf{A Comparison
176 of the Declarative Modelling Languages B, Dash, and
\tla}}\\ Ali
177 Abbassi,
\href{\siteurl}{Amin Bandali
},
\href{\nday}{Nancy~A. Day
},
178 and Jose Serna.
\textit{Proc. MoDRE@RE
2018}.
179 \item \textsf{The magic of specifications and type systems
} {\small{}
180 (
\href{\pubs{bandali-magic-lassonde-
2017}}{poster
},
181 \href{\pubs{bandali-magic-cucsc-
2017}}{slides
})
}\\
\href{\siteurl}{Amin
182 Bandali
},
\href{https://github.com/cipher1024
}{Simon Hudon
}, and
183 \href{https://www.eecs.yorku.ca/~jonathan/
}{Jonathan S. Ostroff
}.
184 Presented at the Canadian Undergraduate Computer Science Conference
185 2017, and at the
2017 Lassonde Undergraduate Summer Student Research
189 \section*
{Work Experience
}
191 \subsection*
{Free Software Foundation (FSF)
}
194 \begin{description
}[font=
\mdseries]
195 \item[spring
2020] Tech team intern
197 Working in a sysadmin role on a variety of tasks including
198 installation of the Sourcehut free software forge on the FSF
199 infrastructure for evaluation for the FSF forge project, as well
200 as a series of enhancements for
201 \href{https://www.gnu.org
}{www.gnu.org
}.
205 \subsection*
{Cheriton School of Computer Science, University of Waterloo
}
207 \item TA: Teaching Assistant, marking exams and assignments. IA:
208 Instructional Apprentice, holding tutorials and marking
210 \begin{description
}[font=
\mdseries]
211 \item[SE
465 (Software Testing and Quality Assurance)
] TA in winter
213 \item[SE
212 (Logic and Computation)
] IA in fall
2019, TA in fall
215 \item[SE
463 (Software Requirements Specification and Analysis)
] TA
216 in spring
2019 and
2018.
217 \item[CS
136 (Elementary Algorithm Design and Data Abstraction)
] TA
222 \subsection*
{Dept. of Electrical Engineering \& Computer Science, York University
}
225 \begin{description
}[font=
\mdseries]
226 \item[EECS
1012 (Net-Centric Introduction to Computing)
] TA in fall
231 \subsection*
{Software Engineering Lab, York University
}
234 \begin{description
}[font=
\mdseries]
235 \item[summer
2017] Research Assistant
237 Worked on an implementation of
238 \href{https://bertrandmeyer.com/
2014/
12/
07/lampsort/
}{\textsf{Lampsort
}}
239 in Eiffel. Extended the
240 \href{https://svn.eecs.yorku.ca/repos/sel-open/mathmodels/
}{\textsf{mathmodels
}}
241 library, implementing a
\textsc{rational
} class for working with
242 arbitrarily large rational numbers.
243 \item[summer
2016] Research Student
245 Worked on
\textit{Literate Unit-B
}, the verifier for Unit-B, a new
246 formal method focused on formal verification of reactive,
247 concurrent and distributed systems. From the Literate Unit-B
248 codebase (written in Haskell), decoupled the logic module and used
249 it to build
\textit{Unit-B Web
}, a web interface using Literate
250 Unit-B to do predicate calculus proofs. Unit-B Web, also written
251 in Haskell, supports the
\LaTeX{} syntax of the Unit-B logic,
252 renders user input on the page, and calls the sequent prover of
253 the logic module, which uses the Z3 SMT solver to check the
254 validity of user input.
256 Separated Literate Unit-B's type checker from its parser in a
257 large refactoring, allowing easier substitution of other type
258 checking algorithms, and in preparation for implementing
263 \subsection*
{Lotek Wireless Inc.
}
266 \begin{description
}[font=
\mdseries]
267 \item[summer
2016] Software Developer
269 Designed and developed an Employee Portal web application in C\#
270 and the MVC framework, used by employees for accessing various
271 data catalogs and archives.
272 \item[summer
2015] Software Developer
274 Designed and implemented various applications in C\# and C for
275 analyzing and testing a satellite pass prediction algorithm for
276 predicting the pass windows of Argos satellites, for scheduling
277 send times of data collected by the company's wildlife tracking
282 \subsection*
{Athlete Builder
}
285 \begin{description
}[font=
\mdseries]
286 \item[2013--
2014] Software Developer
288 Developed the Backend of Athlete Builder platform in C\# and MVC.
290 Key role in development of the platform core.
292 Developed the alpha version of Athlete Builder Android application
300 \item \textit{Programming Languages:
} Haskell, Python, C, Emacs Lisp,
301 Guile Scheme, Eiffel, Bash, C\#, Java, JavaScript.
302 \item \textit{Tools:
} GNU Emacs, Git, Alloy,
\tla, ProB,
\LaTeX,
303 continuous integration systems.
304 \item \textit{Platforms:
} GNU/Linux distributions, including Trisquel,
306 \item \textit{Languages:
} Persian (mother tongue), English (fluent), French
310 \section*
{Community Service
}
312 \subsection*
{EmacsConf Conference
}
316 \begin{description
}[font=
\mdseries]
317 \item[\href{https://emacsconf.org
}{2019--present
}] Chief organizer
318 and maintainer of conference infrastructure, including the
320 \item[\href{https://emacsconf.org/
2015/
}{2015}\phantom{--present
}]
321 One of the organizers and in charge of setting up and maintaining
322 vital pieces of infrastructure.
326 \subsection*
{Computer Science Club (CSC) of the University of Waterloo
}
329 \item Served as the CSC System Administrator in Winter and Spring
330 2020. Present member of the CSC Systems Committee, overseeing and
331 maintaining a large fleet of GNU/Linux servers for CSC members, as
332 well as running the CSC mirror for free software projects.
334 Notable projects include
335 \href{https://mailman.csclub.uwaterloo.ca/pipermail/csc-general/
2020-July/
000837.html
}{launching
336 the CSC web IRC client
} as part of an effort in bringing modern
337 user freedom- and privacy-respecting communication tools to club
341 \subsection*
{Free/Libre Software Contributions
}
344 \item Co-maintainer of
345 \href{https://www.gnu.org/software/gnuzilla/gnuzilla.html
}{GNUzilla
346 and IceCat
}, the GNU version of the Mozilla suite and the Firefox
347 browser respectively.
349 \href{https://www.gnu.org/software/emacs/erc.html
}{ERC
}, the
350 powerful, modular, and extensible IRC client distributed with
352 \item Committer and regular contributor to
353 \href{https://www.gnu.org/software/emacs/emacs.html
}{GNU~Emacs
} and
354 \href{https://guix.gnu.org
}{GNU~Guix
}.
356 \href{https://www.gnu.org/people/webmeisters.html#bandali
}{GNU~webmaster
}
358 \href{https://savannah.gnu.org/maintenance/SavannahHacker/
}{GNU~Savannah
362 \subsection*
{Volunteer Work
}
366 \begin{description
}[font=
\mdseries]
367 \item[spring
2013] Application Developer for VONICAL Inc.
369 Worked on development of the Employment Accessibility Resource
370 Network (EARN) portal using the Anahita social networking
371 platform, written in PHP and running on GNU/Linux.
374 \begin{description
}[font=
\mdseries]
375 \item[winter
2013] Mobile \& Web Developer for Hire Works Inc.
377 Worked on a variety of web and mobile development projects for
381 \begin{description
}[font=
\mdseries]
382 \item[summer
2012] Web Developer for St.~Brigid's Summer Camp
384 Redesigned and revamped the codebase for the photo gallery section
385 of the camp's website in PHP and JavaScript.
389 %% TODO? \section*{Recent Projects}
391 %% \section*{Achievements}
394 %% \item Was among the top 1\% incoming students in Carleton University's
395 %% undergraduate Computer Science program, and a top student in the
396 %% faculty of science.
397 %% \item Highest standing in Computer Science in grade 11 (92\%) and
398 %% grade 12 (100\%) at High school at Glebe~Collegiate~Institute.
399 %% \item Ranked in the top 25\% in the Canadian Senior Mathematics
400 %% Contest held by University of Waterloo, in 2013 (grade 11).
401 %% \item Graduated from high school with an average of 95\%; and
402 %% designated as an Ontario Scholar.