About Me

  • Full Name:Mohammad-Reza Daliri
  • Email:lastname@ualberta.ca
  • Address:2-21 Athabasca Hall, Edmonton, Alberta, T6R 2E8, Canada

Hi There!

I’m currently a graduate student and teaching assistant at the Department of Computing Science, University of Alberta. I am passionate about software engineering, distributed systems and the Internet of Things (IoT).

Prior to that, I have been in the IT and services industry for more than 5 years as a software engineer and web developer.

Most of my projects can be found on GitHub. If you’re interested to know more about my experience, make sure to check my LinkedIn profile.


Download my CV in PDF.

  • Experience

  • Teaching Assistant

    University of Alberta ~ September 2019–Present

    As a TA of File and Database Management undergrad course, I assist with the conduct and grading of weekly labs with 70 students, testing and grading of assignments, and providing students with informative feedback.

  • Software Engineer, Part-time

    FUMCloud ~ September 2018–August 2019

    Developed a cloud infrastructure based on OpenStack to provide on-demand cloud computing platform for scientific and general purposes.

    Moreover, I carefully designed and implemented a web service in Django and led a team of 4 backend developers to maintain high-quality code and accomplish project goals.

  • Full Stack Engineer, Part-time

    Cycass ~ June 2012–July 2019

    Developed an online hotel booking system in PHP which is used by top hotels in my home country and engineered RESTful APIs and applications in Django and Angular to monitor and visualize current state of hotel.

    Apart from coding, I was in charge of internship programs and coached 3 web developer interns.

  • Education

  • M.Sc. in Computing Science

    University of Alberta ~ 2019–Present
  • B.Sc. in Computer Engineering

    Ferdowsi University of Mashhad ~ 2014–2019

    Graduated with a cumulative GPA of 17.09/20
    and a degree project entitled
    “Optimized Task Allocation in Internet of Things using Mixed Integer Programming”.

  • Diploma in Mathematics and Physics

    Hashemi Nejad 1 High School (NODET) ~ 2010–2014

Personal Projects

NASA/CSA International Space Apps Challenge 2019


An interactive web site that demonstrates rate of harmful radiations across Canada based on data collected by Canadian astronauts at International Space Station and students on Earth.

This project won the first prize at the national-level competition.

Celebrities' reactions to CNN news


News related to specific topics fetched from CNN news feed and presented along with political celebrities' reactions on Twitter in a combined view. It consumes IBM Watson Tone Analyzer for analyzing emotions and tones in posted tweets and displays emotions in form of some stickers.

Final project of Information Retrieval undergrad course


Twitter Persian news tag cloud extraction (TPNT) is a tag cloud generator that extracts hot keywords from the Twitter page of a major Persian news agency in the topics of economics and socials for each month.

Final project of IoT undergrad course


ARchitecture for an even More Automated System (ArMAS) is location-based home automation platform built with ESP8266 and Raspberry Pi devices.

Its software has been developed based on Home Assistant project where devices communicate over MQTT and REST protocols.


Published in 2018 IEEE 22nd International Enterprise Distributed Object Computing Conference (EDOC)

Managing product lines variability in rich Internet applications

Rich Internet Applications refers to Web applications resembling desktop solutions with sophisticated user interactions, client-side processing, and asynchronous communications. Rich Internet applications have been evolved from traditional multi-page Web applications to single page applications which handle users' interactions without the need of full-refresh at each interaction.

Although many techniques, methodologies, and technologies have been proposed in the rich Internet applications literature, the need for managing variability has not yet been conveniently addressed in this domain. According to software product lines research and practice, handling variability and commonality plays an important role in decreasing the development time and improving the quality of final products. To this end, in this paper, we aim at employing the variability management techniques in the domain of rich Internet applications.

Let’s Talk

Have an interesting software engineering research idea? Want to hire an experienced software developer?

Contact me!