Arghavan Moradi Dakhel

(she/her) How to pronounce Arghavan

Ph.D. Candidate in Software Engineering for AI (#SE4AI , #SE4ML)

Department of Computer Engineering

Polytechnique Montreal

SWAT Lab

Hi!

I am a fourth-year Ph.D. student at Polytechnique Montréal University. I work under the supervision of Prof. Foutse Khomh and Prof. Michel C. Desmarais in collaboration with SWAT Lab and CALM Lab. My research is focused on but not limited to modeling the expertise of developers and exploring characteristics that impact their competence. To address this problem space, I dig into developers' codes and contributions in open-source environments. Also, I research ways to evaluate large language models for generating codes and the effects of such models on the proficiency and productivity of developers. My research interest stands at the intersection of machine learning/deep learning, software engineering, recommender systems, and human-computer/AI interaction.

Prior to my Ph.D., I received a Master’s degree in Software Engineering from Shahid Beheshti University. During my Master's education, I worked on improving the user experience by enhancing recommender systems on social networks. Also, I have a few years of work experience in software development and software project management in different companies.


Publications

* denotes equal contribution

GitHub Copilot AI pair programmer: Asset or Liability?

Arghavan Moradi Dakhel*, Vahid Majdinasab*, Amin Nikanjam, Foutse Khomh, Michel C. Desmarais, Zhen Ming (Jack) Jiang

(preprint arxiv version, Jun 2022)

In this study, we go beyond evaluating the correctness of Copilot's suggestions and examine how despite its limitations, it can be used as an effective pair programming tool.

[paper] [poster]

Dev2vec: Representing Domain Expertise of Developers in an Embedding Space

Arghavan Moradi Dakhel, Michel C. Desmarais, Foutse Khomh

(preprint arxiv version, Jun 2022)

In this study, we employ doc2vec and represent the domain expertise of developers in an embedding space from 3 different sources of information, repositories meta-data, issue resolving history of developers, and API calls in their commits. Our results indicate that our proposed methods outperform state-of-the-arts.

[paper]

Assessing Developer Expertise from the Statistical Distribution of Programming Syntax Patterns

Arghavan Moradi Dakhel, Michel C. Desmarais, Foutse Khomh

25th ACM International Conference on Evaluation and Assessment in Software Engineering (EASE 2021)

In this study, we focus on syntactic patterns mastery as evidence of knowledge in programming and propose a theoretical definition of programming knowledge based on the distribution of Syntax Patterns (SPs) in source code, namely Zipf’s law.

[paper] [talk]

(Best paper candidate in EASE 2021)

A Social Recommender System using Item Asymmetric Correlation

Arghavan Moradi Dakhel, Hadi Tabatabaee Malazi, Mehregan Mahdavi

In Springer Applied Intelligence, 2018

In this study, we focus on improving the performance of social recommender systems by exploring the effect of combining the implicit relationships of the items and user-item matrix.

[paper] [presentation]

Workshop

Copilot_poster_ver3.pdf

GitHub Copilot AI pair programmer: Asset or Liability?

Arghavan Moradi Dakhel*, Vahid Majdinasab*, Amin Nikanjam, Foutse Khomh, Michel C. Desmarais, Zhen Ming (Jack) Jiang

SEMLA Poster and Exchange session, July 2022

Other Projects

A Human-Centred study on Software Security Update

Arghavan Moradi Dakhel, Elaheh Astanehparast, Majid Rezazadeh

Software updates are released with the aim of improving the performance, stability, and security of the applications. But encouraging users to pay attention to and install them has been always challenging. This inattention results in many problems especially in terms of security. In this work, we present an interview and survey study focusing on the users’ attitudes on how often they prefer to receive updates and determining whether technical users and non-technical users have different preferences. Also, we find what characteristics should be considered for an update package so that the user is encouraged to install it.

[presentation]

Work Experience

Research Assistant

Polytechnique Montreal

(01/2019 to present)

Research and Development Intern

Airudi

(01/2021 to 12/2021)

  • Applied deep learning models to enhance the performance of online profile matching of applicants with the job posts.

  • Improved the performance of ranking applicants by expanding the search query of recruiters with Word Embedding and Document Embedding.

Junior Software Project Manager

Samsung Electronics

(04/2018 to 12/2018)

  • Successfully delivered three software projects built for analyzing the data collected for trade marketing and mobile retail sales. One of the projects was recognized as the best practice of the region and acknowledged as a solution to a long-standing problem in the gift redemption process.

Software Engineer

Ericsson

(04/2018 to 12/2018)

  • Developed and maintained a platform to automate more than 100 innovative reports and dashboards for network optimization and management. The application analysed and visualized the unstructured data of mobile network (2G/3G/LTE) statistics and helped optimization engineers to improve the performance of the network. (Using python, dotNet and highcharts, oracle database, SQL server database)