Amin Bandali

bandali@kelar.org | phone number upon request | also as pdf (source) and plain text

Education

Master of Mathematics in Computer Science | University of Waterloo | 2018–2020
Thesis: A Comprehensive Study of Declarative Modelling Languages
Research focus: formal logic, model checking, verification
Bachelor of Science with Honours in Computer Science | York University | 2014–2017
Favourite courses: System Specification & Refinement, Software Requirements Engineering, Software Design, Operating Systems, Computational Complexity, Design & Analysis of Algorithms

Work Experience

Software Engineer | Canonical | 2022–2024
As the sole maintainer of Firefox in Ubuntu Desktop, my duties included porting, debugging, and building the Firefox source code for the architectures supported by Ubuntu Desktop (e.g. amd64 and arm64) and triaging reported issues, to ensure new releases of Firefox with security fixes and new features are delivered to the millions of users who rely on Firefox as their default web browser.
I also worked on other aspects of Ubuntu and its desktop, including maintaining various GNOME applications and libraries in Ubuntu and upstream in Debian, and resolving package build issues to ensure the current Ubuntu development release continues to build and install correctly.
Software Developer | Savoir-faire Linux | 2020–2022
As part of the Jami core development team at Savoir-faire Linux, I worked on many aspects of Jami including maintenance and bug fixes for Jami's now-deprecated GTK GUI; maintaining packages of Jami and some of its dependencies for the Deb, Snap, and RPM package systems to bring the latest release of Jami to users across several GNU/Linux distributions including Debian, Ubuntu, Trisquel, Fedora, and openSUSE; and creating and maintaining Jenkins pipelines for continually testing, validating, and deploying various parts of Jami's code bases.
I also helped write, edit, and publish several technical articles on the Jami blog about the internals of Jami, worked on improving Jami's documentation, and served as community liaison between the Jami core team and the wider free software community of Jami users to help facilitate communications and relations between the two.
Systems Administrator Intern | Free Software Foundation (FSF) | 2020
Working with the FSF tech team in a sysadmin role on a variety of tasks including installation of the Sourcehut free software forge on the FSF infrastructure for evaluation for the FSF forge project, as well as a series of enhancements for www.gnu.org.
Research and Teaching Assistant | University of Waterloo | 2018–2020
Researched declarative behavioural modelling, with a focus on verification using model checking.
Research and Teaching Assistant | York University | 2016–2017
Researched using the Z3 SMT solver and Haskell for doing predicate calculus proofs.
Software Developer | Lotek Wireless Inc. | 2016
Designed and developed an Employee Portal web application in C# and the MVC framework, used by employees for accessing various data catalogs and archives.
Computer Programmer | Lotek Wireless Inc. | 2015
Designed and implemented various applications in C# and C for analyzing and testing a satellite pass prediction algorithm for predicting the pass windows of Argos satellites, for scheduling send times of data collected by the company's wildlife tracking products.
Software Developer | Athlete Builder | 2013–2014
Developed Athlete Builder's backend platform in C# and MVC, and had a key role in development of the platform core. Developed the alpha version of Athlete Builder Android application in Java.

Skills

Programming
Expert in C, Python, Bash, Emacs Lisp
Proficient in C++, C#, Java, JavaScript, Haskell, Guile Scheme, Eiffel
Tools
GNU Emacs, Git, Alloy, TLA+, ProB, TeX and LaTeX, Docker, continuous integration systems
Platforms
Deep and solid understanding of the GNU/Linux operating system structure and internals.
Expert in problem-solving of software package life cycle (install, update, and upgrade) issues of applications and libraries for various GNU/Linux distributions.
Proficient in software development on Windows.
Languages
English (native proficiency; IELTS: 9.0/9.0), French (classroom study), Persian (mother tongue)

Publications & Presentations

Papers

A Comparison of the Declarative Modelling Languages B, DASH, and TLA+ | MoDRE@RE 2018
Ali Abbassi, Amin Bandali, Nancy A. Day, Jose Serna

Theses

A Comprehensive Study of Declarative Modelling Languages
Amin Bandali, Master's thesis, University of Waterloo, July 2020.

Talks

State of the shared GNU infrastructure | GNU 40th anniversary celebration, 27 September 2023.
What's new in Jami | LibrePlanet 2023 Conference, 18 March 2023.
The Net beyond the web | LibrePlanet 2022 Conference, 20 March 2022.
Jami and how it empowers users | LibrePlanet 2021 Conference, 20 March 2021.
The Magic of Specifications and Type Systems | Canadian Undergraduate Computer Science Conference 2017, University of Toronto, Canada, 15–17 June 2017.
Introducing YULUG | Computing Students Hub, York University, Toronto, Canada, 12 February 2015.

Volunteer Work

Free Software Foundation & GNU Project
FSF SysOps team member, LibrePlanet Committee member
GNU maintainer, Savannah admin, assistant GNUisance, GNU Advisory Committee member
Debian GNU/Linux
Debian Developer (with full upload rights) | fall 2023–present
Debian Maintainer | winter 2023–fall 2023
Debian Contributor | fall 2020–winter 2023
Contributor | Trisquel GNU/Linux | 2020–present
Organizer | EmacsConf conference | 2015, 2019–present
Systems Committee Member | Computer Science Club (CSC) of the University of Waterloo | 2019–present
Community Contributor | Savoir-faire Linux | 2022–present
Application Developer | VONICAL Inc. | 2013
Worked on development of the Employment Accessibility Resource Network (EARN) portal using the Anahita social networking platform, written in PHP and running on GNU/Linux.
Mobile & Web Developer | Hire Works Inc. | 2013
Worked on a variety of web and mobile development projects for Hire Works.
Web Developer | St. Brigid's Summer Camp | 2012
Redesigned and revamped the codebase for the photo gallery section of the camp's website in PHP and JavaScript.