X-Git-Url: https://git.shemshak.org/~bandali/cv/blobdiff_plain/8a25c428473c2538593fc35b3650194a7a3e5ea6..2acab84b10c38968b1021e9c23145637765c2737:/cv.tex diff --git a/cv.tex b/cv.tex index a0dc6e8..e773490 100644 --- a/cv.tex +++ b/cv.tex @@ -1,17 +1,17 @@ -% Amin Bandali - Curriculum Vitae +%% cv.tex +%% Copyright 2016-2017 Amin Bandali % -% Copyright (C) 2016 Amin Bandali -% https://aminb.org/ +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. % % Based on Jason R. Blevins's Curriculum Vitae template, % Copyright (C) 2004-2016 Jason R. Blevins % http://jblevins.org/ -% -% You may use use this document as a template to create your own CV -% and you may redistribute the source code freely. No attribution is -% required in any resulting documents. I do ask that you please leave -% this notice and the above URL in the source code if you choose to -% redistribute this file. \documentclass[12pt,letterpaper]{article} @@ -23,8 +23,8 @@ \usepackage{graphicx} \usepackage{fontspec} \setmainfont[Numbers=Lining]{EB Garamond} +\setmonofont[Scale=0.85]{Ubuntu Mono} \newfontfamily{\smallcaps}[RawFeature={+c2sc,+scmp}]{EB Garamond} -\newfontfamily{\bfseries}[FakeBold=2]{EB Garamond} \newcommand{\amper}{{\fontspec[Scale=.9]{EB Garamond}\selectfont\itshape\&}} %% Load Microtype with default settings. This will use the @@ -104,57 +104,71 @@ \section*{Research Interests} \begin{itemize} -\item Functional Programming and functional languages +\item Functional Programming and functional languages. \item Formal methods, especially type systems, proof systems, and automated - provers -\item Verification, Haskell, and Rust + provers. +\item Verification, Haskell, and Rust. \end{itemize} \section*{Education} \begin{itemize} + \setlength\itemsep{.75em} \item {\large B.Sc. Honours Computer Science}\, |\, {\small 2013--present} - \textit{York University}, Canada + \textit{York University}, Toronto, Canada \begin{itemize} - \item \textbf{GPA:} 7.9/9.0 - \item \textbf{Expected completion:} December 2017 - \item \textbf{Relevant courses:} System Specification \amper\ - Refinement, Operating System Design, Computational Complexity, Artificial - Intelligence \amper\ Logic Programming, Design \amper\ Analysis of - Algorithms. + \item Expected completion: December 2017 \hspace{1em} GPA: 7.9/9.0 + \item Relevant courses: System Specification \amper\ + Refinement, Software Requirements Eng., Software Design, Operating + Systems, Computational Complexity, Design \amper\ Analysis of Algorithms. \item Finished first year (2013-14) at \textit{Carleton University} with a GPA of 11.0/12.0 then transferred to \textit{York University} in Fall 2014. \end{itemize} - + +%% \item {\large High School Diploma}\, |\, {\small 2013} + +%% \textit{Glebe Collegiate Institute}, Ottawa, Canada + +%% \hspace{1.3em} Average: 94.3\% \end{itemize} \section*{Research Experience} \begin{itemize} +\item {\large Software Engineering Lab, } York University\, |\, {\small summer + 2017} + + \textit{Research Assistant} + + \begin{itemize} + \item I'm working on expanding and testing the \texttt{mathmodels} library, + collection of abstract mathematical collections written in Eiffel. I'll also + be modeling various pieces of software in TLA+. + \end{itemize} + \item {\large Software Engineering Lab, } York University\, |\, {\small summer 2016} \textit{Research Student} \begin{itemize} - \item Semester project: As an undergraduate research student, I - worked on \textbf{Literate Unit-B}, the verifier for Unit-B, a new - formal method focused on formal verification of reactive, concurrent - and distributed systems. + \item As an undergraduate research student, I worked on \textit{Literate + Unit-B}, the verifier for Unit-B, a new formal method focused on formal + verification of reactive, concurrent and distributed systems. From the Literate Unit-B codebase (written in Haskell), I decoupled the - logic module and used it to build \textbf{Unit-B Web}, a web interface using + logic module and used it to build \textit{Unit-B Web}, a web interface using Literate Unit-B to do predicate calculus proofs. \linebreak Unit-B Web, also written in Haskell, supports the \LaTeX\ syntax of the Unit-B logic, renders - user input on the page, and calls the sequent prover of the logic - module, which uses the Z3 SMT solver to check the validity of user - input. + user input on the page, and calls the sequent prover of the logic module, + which uses the Z3 SMT solver to check the validity of user input. - \item Volunteer work: I'm currently working on implementing subtyping for - Literate Unit-B. - \end{itemize} + \item Further, I separated Literate Unit-B's type checker from its parser, + allowing easier substitution of other type checking algorithms and in + preparation for implementing subtyping. \end{itemize} +\end{itemize} \section*{Professional Experience} \begin{itemize} @@ -238,16 +252,37 @@ \end{itemize} +\section*{Recent Projects} + +\begin{itemize} +\item \textit{Unit-B Web:} The web interface for Unit-B, as mentioned in the + \textit{Research Experience} section.\\ + Source code available at + \href{https://github.com/unitb/unitb-web}{https://github.com/unitb/unitb-web} + +\item \textit{tex2png-hs:} A tool for easily converting \TeX\ and \LaTeX\ to PNG + images. \verb#tex2png-hs# is a Haskell port of Xyne's \verb#tex2png# tool. It + is a wrapper around \verb#latex# and \verb#dvipng# and provides several + options for modifying its behaviour, such as cropping the whitespace around + the content, specifying the DPI, or inputting a full document.\\ + Source code available at + \href{https://github.com/unitb/tex2png-hs}{https://github.com/unitb/tex2png-hs} + +\item For more projects, visit my GitHub profile at + \href{https://github.com/aminb}{https://github.com/aminb}. +\end{itemize} + \section*{Miscellaneous} \begin{itemize} -\item \textit{Programming Languages:} Haskell, Rust, C, Python, Emacs Lisp, - \LaTeX, C\#, Java, JavaScript, C++. +\item \textit{Programming Languages:} Haskell, Rust, Eiffel, Python, C, Emacs + Lisp, C\#, JavaScript. \item \textit{Platforms:} Arch Linux, Ubuntu and other distros, Android, macOS, Windows. -\item \textit{Tools:} Emacs, Git, Mercurial, Zsh, CI Systems (e.g. Travis CI), +\item \textit{Tools:} Emacs, Git, Zsh, \LaTeX, CI Systems (e.g. Travis CI), Rodin, SQL DBs. -\item \textit{Languages:} English (fluent), Persian (native), French (beginner). +\item \textit{Languages:} Persian (mother tongue), English (fluent), French + (beginner). \end{itemize}