f4351b305fe9b3108b24b5416cdf76d37b0ec82a
[~bandali/bndl.org] / bandali-cv.txt
1 curriculum vitae
2
3 Amin Bandali
4
5 ----------------------------------------------------
6 site: https://kelar.org/~bandali
7 email: bandali@kelar.org
8 bandali@gnu.org
9 bandali@uwaterloo.ca
10 phone: available upon request via email
11
12 this file: https://kelar.org/~bandali/bandali-cv.txt
13 last update: 2021-10-30
14 ----------------------------------------------------
15
16
17 SUMMARY OF QUALIFICATIONS
18
19 - Experience in building software for diverse areas and platforms
20 in various programming languages such as C, Python, and Haskell.
21
22 - Passionate about applying scientific and engineering methods in
23 design and implementation of software systems.
24
25 - Using formal specification techniques to find specification-level
26 bugs early in the design stage rather than implementation.
27
28 - GNU/Linux system administration on both the client and the server
29 side.
30
31 - Problem-solving and communication skills, honed through research
32 and teaching roles held in graduate school, as well as holding
33 tutorials discussing complex concepts with fellow students and
34 peers throughout undergraduate studies and high school.
35
36 - Organizational and teamwork skills, strengthened thanks to
37 community service in form of volunteer activities including
38 organizing the EmacsConf conference and volunteer work for
39 charities such as the Free Software Foundation and St. Brigid's
40 Summer Camp.
41
42
43 EDUCATION
44
45 Master of Mathematics in Computer Science,
46 University of Waterloo, 2020
47
48 Research focus:
49 formal logic, model checking, verification
50 Thesis:
51 A Comprehensive Study of Declarative Modelling Languages
52 Supervisor:
53 Prof. Nancy A. Day
54 GPA:
55 3.7/4.0
56
57 Bachelor of Science with Honours in Computer Science,
58 York University, 2017
59
60 Favourite courses:
61 System Specification & Refinement, Software Requirements
62 Engineering, Software Design, Operating Systems, Computational
63 Complexity, Design & Analysis of Algorithms
64 GPA:
65 7.84/9.0
66
67
68 RESEARCH INTERESTS
69
70 formal logic, model checking, theorem proving, verification
71
72
73 PUBLICATIONS & PRESENTATIONS
74
75 The complete bibliography of my publications is available
76 as a BibTeX bibliography file from
77 https://kelar.org/~bandali/bandali.bib.
78
79 PAPERS
80
81 A Comparison of the Declarative Modelling Languages B, DASH,
82 and TLA+
83
84 Ali Abbassi, Amin Bandali, Nancy A. Day, Jose Serna
85 8th IEEE International Model-Driven Requirements
86 Engineering Workshop, MoDRE@RE 2018
87 Copyright (c) 2018 IEEE. All Rights Reserved. Sadly.
88
89 pdf: https://p.bndl.org/modre2018-declarative.pdf
90 models: https://cs.uwaterloo.ca/~nday/artifacts/2018-modre/
91
92 THESES
93
94 A Comprehensive Study of Declarative Modelling Languages
95
96 Amin Bandali
97 MMath Thesis, University of Waterloo, David R. Cheriton
98 School of Computer Science, July 2020.
99
100 pdf: https://kelar.org/~bandali/mmath/bandali-mmath-thesis.pdf
101 hdl: https://hdl.handle.net/10012/16059
102 http: https://kelar.org/~bandali/mmath/
103
104 TALKS
105
106 Jami and how it empowers users
107
108 Amin Bandali
109 Presented at the LibrePlanet 2021 Conference, March 20, 2021.
110
111 slides: https://p.bndl.org/bandali-jami-libreplanet-2021.pdf
112 slides with notes:
113 https://p.bndl.org/bandali-jami-libreplanet-2021-with-notes.pdf
114 http: https://kelar.org/~bandali/2021/03/20/libreplanet-2021
115
116 The Magic of Specifications and Type Systems
117
118 Amin Bandali, Simon Hudon, Jonathan S. Ostroff
119 Slides presented at the Canadian Undergraduate Computer Science
120 Conference 2017, University of Toronto, Canada, June 15-17,
121 2017.
122 Poster presented at the Lassonde Undergraduate Summer Student
123 Research Conference, York University, Toronto, Canada,
124 August 15, 2017.
125
126 slides: https://p.bndl.org/cucsc-2017-slides.pdf
127 poster: https://p.bndl.org/eecs4080-poster.pdf
128
129 Introducing YULUG
130
131 Amin Bandali
132 Slides introducing YULUG -- (GNU/)Linux User Group at York
133 University -- presented at a Computing Students Hub (CSHub) tech
134 talk at York University, Toronto, Canada, February 12, 2015.
135
136
137 WORK & RESEARCH EXPERIENCE
138
139 Savoir-faire Linux
140
141 fall 2020-present | Free Software Consultant
142 | Consultant en logiciel libre
143
144 I am part of the Jami core development team at Savoir-faire
145 Linux, where I get to work on various parts of Jami as a Free
146 Software Consultant. These include working on and maintaining
147 the GTK-based jami-gnome client application written in C++ and
148 C, and packaging Jami for various GNU/Linux distributions and
149 other platforms. I also serve as a community liaison between
150 the Jami core team and the wider free software community around
151 Jami, with the goal of helping facilitate the communications and
152 relations between the two.
153
154 Free Software Foundation (FSF)
155
156 spring 2020 | Intern
157
158 Working with the FSF tech team in a sysadmin role on a variety
159 of tasks including installation of the Sourcehut free software
160 forge on the FSF infrastructure for evaluation for the FSF forge
161 project, as well as a series of enhancements for www.gnu.org.
162
163 Cheriton School of Science, University of Waterloo
164
165 winter 2018-spring 2020 | TA, IA, RA [*]
166
167 SE 465 (Software Testing and Quality Assurance):
168 TA in winter 2020
169 SE 212 (Logic and Computation):
170 IA in Fall 2019, TA in fall 2018
171 SE 463 (Software Requirement Specification and Analysis):
172 TA in spring 2019 and 2018
173 CS 136 (Elementary Algorithm Design and Data Abstraction):
174 TA in winter 2018
175
176 [*] Teaching Assistant (marking exams and assignments),
177 Instructional Apprentice (holding tutorials and marking),
178 Research Assistant (doing research for/with supervisor)
179
180 Department of Electrical Engineering & Computer Science, York
181 University
182
183 fall 2017 | Teaching Assistant
184
185 EECS 1012 (Net-Centric Introduction to Computing):
186 TA in fall 2017, running labs and marking labs and exams
187
188 Software Engineering Lab, York University
189
190 summer 2017 | Research Assistant
191
192 Worked on an implementation of Lampsort in Eiffel.
193 Extended the mathmodels library, implementing a rational
194 class for working with arbitrarily large rational numbers.
195
196 summer 2016 | Research Student
197
198 Worked on Literate Unit-B, the verifier for Unit-B, a new formal
199 method focused on formal verification of reactive, concurrent
200 and distributed systems. From the Literate Unit-B codebase
201 (written in Haskell), decoupled the logic module and used it to
202 build Unit-B Web, a web interface using Literate Unit-B to do
203 predicate calculus proofs. Unit-B Web, also written in Haskell,
204 supports the LaTeX syntax of the Unit-B logic, renders user
205 input on the page, and calls the sequent prover of the logic
206 module, which uses the Z3 SMT solver to check the validity of
207 user input.
208
209 Separated Literate Unit-B's type checker from its parser in a
210 large refactoring, allowing easier substitution of other type
211 checking algorithms, and in preparation for implementing
212 subtyping.
213
214 Lotek Wireless Inc.
215
216 summer 2016 | Software Developer
217
218 Designed and developed an Employee Portal web application in C#
219 and the MVC framework, used by employees for accessing various
220 data catalogs and archives.
221
222 summer 2015 | Computer Programmer
223
224 Designed and implemented various applications in C# and C for
225 analyzing and testing a satellite pass prediction algorithm for
226 predicting the pass windows of Argos satellites, for scheduling
227 send times of data collected by the company's wildlife tracking
228 products.
229
230 Athlete Builder
231
232 2013-2014 | Software Developer
233
234 Developed the Backend of Athlete Builder platform in C# and MVC.
235
236 Key role in development of the platform core.
237
238 Developed the alpha version of Athlete Builder Android
239 application in Java.
240
241
242 SKILLS
243
244 Programming languages
245 C, C++, Haskell, Emacs Lisp, Guile Scheme, Python, Eiffel, Bash,
246 C#, Java, JavaScript
247
248 Tools
249 GNU Emacs, Git, Alloy, TLA+, ProB, LaTeX, continuous integration
250 systems
251
252 Platforms
253 GNU/Linux distributions, including Trisquel, GNU Guix, Debian
254
255 Languages
256 Persian (mother tongue), English (native proficiency; IELTS: 9.0),
257 French (beginner)
258
259
260 COMMUNITY SERVICE
261
262 EmacsConf conference
263
264 2019-present
265
266 Chief organizer and maintainer of conference infrastructure,
267 including the streaming servers.
268
269 2015
270
271 One of the organizers and in charge of setting up
272 and maintaining vital pieces of infrastructure.
273
274 Computer Science Club (CSC) of the University of Waterloo
275
276 Served as the CSC System Administrator in Winter and Spring 2020.
277 Present member of the CSC Systems Committee, overseeing and
278 maintaining a large fleet of GNU/Linux servers for CSC members,
279 as well as running the CSC mirror for free software projects.
280
281 Notable projects include launching the CSC web IRC client
282 as part of an effort in bringing modern user freedom- and
283 privacy-respecting communication tools to club members.
284
285 Free/libre software contributions
286
287 Co-maintainer of GNUzilla and IceCat, the GNU version of
288 the Mozilla suite and the Firefox browser respectively.
289
290 Maintainer of ERC, the powerful, modular, and extensible
291 IRC client distributed with GNU Emacs.
292
293 Committer and regular contributor to GNU Emacs and GNU Guix.
294
295 GNU webmaster and GNU Savannah hacker.
296
297 Volunteer work
298
299 spring 2013 | Application Developer for VONICAL Inc.
300
301 Worked on development of the Employment Accessibility Resource
302 Network (EARN) portal using the Anahita social networking
303 platform, written in PHP and running on GNU/Linux.
304
305 winter 2013 | Mobile & Web Developer for Hire Works Inc.
306
307 Worked on a variety of web and mobile development projects for
308 Hire Works.
309
310 summer 2012 | Web Developer for St. Brigid's Summer Camp
311
312 Redesigned and revamped the codebase for the photo gallery
313 section of the camp's website in PHP and JavaScript.