Hi, I'm Asal 👋
(pronounced æsæl, means honey🍯 in Farsi)
I currently work as a backend developer at Certn. I love to code and here are the things I crave for the most being a developer:
- that satisfying feeling of knowing the users love something I've built 🥰👩‍💻
- writing code that reads so nice and clean! 🧼🪨
- that "aha" moment after wrestling with a stubborn bug 🪲🔫
- when them tests pass after a long day of debugging!âś…
- finally "getting it" when I learn something new and if first seems so difficult 🤓, and then I build something great with my new skill 🔧🧰
Skills
Languages and Frameworks
- Python
- Django
- FastAPI
- Flask(-RESTPlus)
- Java
- Spring Boot
- Javascrip
- Vue.js
- React.js
- SQL
Technologies, Tools and Libraries
- RDBMS
- Postgres
- MySQL
- NoSQL
- Elasticsearch (ELK stack)
- Redis
- Neo4j
- MongoDB
- Cloud
- AWS
- Visualization
- D3.js
- Plotly and Dash
- Machine Learning
- Pytorch
- Scikit-learn
- Airflow
- Docker
Resume
Experience
Intermediate Backend Developer
May 2022 – Present
Certn, Vancouver, Canada
- Team Crim and Team Canada (previous teams)
- Collaborated with the Product and UX teams to deliver feature requests
- Built the OneID product for API customers using the latest ID verification vendor at the time, leading to ~33% automation improvement
- Team Site Resilience Engineering (SRE) (current team)
- Increased the security of the internal tools using OAuth 2.0 and Okta
- Increasing the system reliability by resolving failures
- Collaborating on performance optimization projects with the SRE Team
Full Stack Engineer
Jul. 2021 – May 2022
SceneBox (Acquired by Applied Intuition), Vancouver, Canada
- Increased user productivity by integrating data labelling solutions into the company's data-ops platform
- Ensured data availability and flexible data schema by configuring data backup and migration workflows
- Reduced response time of the platform by ~30% via conducting scalability tests, API profiling, and caching
- Enhanced the dashboards with new features for a more feature-rich UI and improved UX
Research Assistant
Sept. 2019 – May 2021
DeepSense, Dalhousie University, Halifax, Canada
- Built a visual analytics framework for data mining and interactive visualization that helps airport staff with:
- Discovering hidden delay-related patterns in aviation ground handling logs
- Using the patterns to address performance issues at airports
Teaching Assistant
Jan. 2020 – Dec. 2020
Dalhousie University, Halifax, Canada
- Recorded and edited online lectures to make a better learning experience from home for students during the pandemic.
- Helped students with course material, homework and project, along with grading.
Helped undergraduate students with course material and homework.
Software Developer
Sept. 2018 – Jun. 2019
Shahid Beheshti University, Tehran, Iran
- Resolved reported bugs for the document repository microservice for the Food and Drug Administration
- Improved data integrity by implementing document validation checks for new schemas
- Added advanced document retrieval queries, filters and tables to the customer-facing website
Intern
Jul. 2016 – Sept. 2016
Iran Air IT Department, Tehran, Iran
- Demonstrated QlikView as the potential BI tool to analyze company’s IT expense statistics
- Created dashboard for an overview of expense records by department over time, region, and such
Teaching Assistant
Sept. 2015 – Dec. 2015
Shahid Beheshti University, Tehran, Iran
Discrete Mathematics
I assisted the chief TA by creating homework and quiz questions
Education
Masters of Computer Science
Sept. 2019 - May 2021
Dalhousie University, Halifax, Canada
GPA A
Courses:- Machine Learning for Big Data
- Visual Analytics
- Advanced Topics in NLP
- Deep Learning
Received full funding and stipend
Sponsored by the faculty to attend Grace Hopper Conference 2020
B.Sc. in Software Engineering
Sept. 2013 – Feb. 2018
Shahid Beheshti University, Tehran, Iran
GPA 17.73 out of 20 (3.71/4.0)
Certificates
Publications
A. Jalilvand, M. Neshati, “Channel Retrieval: Finding Relevant Broadcasters on Telegram”, Social Network Analysis and Mining, 2020
A. Askari, A. Jalilvand, M. Neshati, “On Anonymous Commenting: A Greedy Approach to Balance Utilization and Anonymity for Instagram Users”, 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval
Projects
Here I've listed the projects I've done back when I was a student.
- All
- Machine Learning
- NLP
- Visual Analytics
- Interactive Visualization
- Web Service
SeRViz: an Interactive Visualization Framework for the Analysis of Sequential Rules and Frequent Itemsets
* Masters thesis
Exploratory research on log of ground handling operations at Halifax Stanfield International
Airport collected by Assaia Apron AI
Objective: Finding delay-related patterns affecting turnaround performance.
Methodology: Using data mining and visualization of patterns with a novel matrix-based
approach
Evaluation: 1) Domain expert feedback on visual prototype 2) User test for measuring
workload with NASA-TLX tool for a set of analytical tasks with both plain-text and SeRViz
prototype. The NASA-TLX results for the two set of tasks are compared with paired t-test.
Results: SeRViz is a novel visual analytics tool for mining and exploring frequent
patterns. Based on our experiments it reduces the cognitive load of users for the said tasks
compared to the popular off-the-shelf data mining tool, SPMF.
Python
SPMF
Flask
Javascript
Vue.js
D3
Exploratory Data Analysis and Quantile Regression with LightGBM and Pytorch
Having learnt about quantile regression, I decided to try it myself and it resulted in
this Kaggle kernel. I did a series of exploratory data analysis steps to understand the data
better, then I tried two tree-based
and neural network models for quantile regression. I also performed linear regression assumption
check to see if it makes sense to use
quantile regression on this data after all. More detail is explained in the kernel.
Python
Pytorch
scikit-learn
LightGBM
Plotly
Acoustic Scene Classification
* Teamed with two other MSC students.
This project was done as the final project of Deep Learning course, summer 2020.
We built a CNN model to classify audio samples into different acoustic scenes (indoor, outdoor,
transportation).
We used data augmentation to generate more training samples and prevent the network from
overfitting. Furthermore, we used Grad-CAM, a visual
explanation technique, to analyze which parts of the spectrograms are most influential in CNN's
final decision.
We managed to outperform the DCASE 2020 Task 1 Subtask B baseline accuracy by 5.98%.
Python
Pytorch
Plotly
Extractive Text Summarization and Keyword Extraction
This project was done as the final project of Advanced Topics in NLP course,
winter-spring 2020.
In this project, we aim to improve off-the-shelf products for text summarization and keyword
extraction. These products use statistical
techniques such as Bag-of-Words, which fail when it comes to semantical relationships between
words. We tried to see if we can address this
problem with word vectors. The experimental results show that there is a trade-off between the
performance improvement of state-of-the-art
methods and the efficiency of the baselines.
Python
Gensim
Reuters Corpus text classification with Keras
This project was done as the final project of Machine Learning for Big Data course, fall
2019. The goal is to train a model to
classify news articles into topics. I used deep autoencoders for feature extraction and deep
neural network for classification. I
tried both TF-IDF and Glove word embeddings for text representation to find out which one
performed best with this dataset.
In the Reuters Corpus, each article has multiple topics, which was a chance for me to explore
both multi-class
(just take one topic per document) and multi-label (multiple topics per document)
classifications as well.
Python
Tensorflow
Keras
scikit-learn
Airbnb Recommender System
* Teamed with three other MSC students.
This project was done as the final project of Visual Analytics course, fall 2019.
It aims to construct a recommender system for Airbnb listings. This project consists of
two significant parts, machine learning, and visualization.On the machine learning side, core
implementation is a K-means clustering
algorithm to cluster listings. On the other part, some of the key features are maps, listing
details, and some analysis to ease the choice
among the options. Using the recommender system, the search space for the users will be
narrowed down to a select set of options to choose from among them.
Python
scikit-learn
Flask
Javascripts
D3
HTML
CSS
* Please be patient with the demo as it takes a while for the project to fully load.
Interactive RadVis and Star Coordinates with D3
RadVis and Star Coordinates are used for visualization of multivariate datasets in a 2D
projection. This interactive implementation
allows the user to select dataset of choice, change colours, move the anchors/axes and more.
Javascript
D3
HTML
CSS
Telegram Bot-Creator Bot
Bachelor's thesis project, Jan. 2018, Shahid Beheshti University.
Telegram is one of the most popular messaging apps in the world, and bots are one of its popular
features.
The goal of this project was to create a platform where ordinary people with no knowledge of
programming can create and customize their bot.
PHP
Laravel
MySQL
A fun wrap up!
Thank you for scrolling down this far!