Graduate’s Recruitment

Open positions for Grad Students with Dr Vidoni at ANU CS. Please, follow each step.

General PhD Information:

I’m looking for excellent PhD students. If you’re interested in working with me, please be sure to read this first. Please don’t contact me until you have read this page. Applications that do not follow the steps outlined here will not obtain a response.

What: If you work with me, your PhD will be in Software Engineering, in the intersection of technical debt for scientific software, and leveraging mining software repositories and mixed-methods. These are not positions to develop software, you will become a researcher, not a software developer (although software developing skills are needed).

Duration: A PhD requires 3 years full-time to complete. You need to ensure you can stay for that period and complete your candidacy.


  • The candidate must be admissible with a fee waiver, otherwise you will not be able to apply for scholarship. Please carefully read the information provided by our College before you do anything else. In the section Pre-application process > Step 1, you will find a self-assessment of eligibility. If you are eligible, then read the rest and continue on this page.

  • You must be able to move into Australia for commencement.

  • If the above two apply, then please continue reading. Anybody is welcome to apply. However, female candidates (or female-identifying) are especially encouraged to submit.

Available PhD Positions:

I currently have a fully funded position available to work under my supervision for a PhD in Software Engineering applied to Scientific Software. Please read below for application conditions. This PhD will work on Algorithm Debt, which corresponds to sub-optimal implementations of algorithm logic in the scientific software. Thus, you can expect to work with both Python and R code, and also with practitioners’ surveys and insights to define algorithm debt, uncover its causes, and see how it changes in different subdomains. Please read below for the steps to apply.

Note: although everyone is welcome to apply, women, non-binary and female-identifying people are especially encouraged to submit.

How to Apply:

In the body of your email (my email is on the homepage), you will need to show that you have some understanding of what I do, demonstrate that you’ll bring something interesting, and that you’ve identified something in the offered topics that particularly intrigues you. Briefly summarise your academic background and work experience, describe highlights such as the courses that you found most inspiring or challenging. To signal to me that you have read this carefully, start your subject line with “[PhD Application]”, and include the word planipennate somewhere in the email body.

You will have to include the following documents about you:

  • A current resume, including publications (if existent) and GitHub/GitLab (if existent).
  • Two academic letters of recommendation, including contact details (if you are successful, you’ll need 3 people for the application).
  • Evidence of your English level (if you have it).

Additionally, you will have to include the following documents about the project:

  1. Attach a 1-2 page essay (11pt Arial font) discussing your thoughts about Algorithm Debt as presented/discussed in the following two papers (if you cannot access the PDF, write me an email for a copy): TechDebt in Deep Learning Frameworks and SATD in R Programming.

  2. Select only one of the following open-source datasets. Wrangle the data (in either Python or R), and create one single plot to rule them all (elaborated, meaningful, clear, aesthetic). Your document must have the plot, discuss the information presented, and why it is relevant (1-2 pages only). The datasets are not related to the papers above, so don’t try to cross them. Datasets: Option 1, Option 2, Option 3, Option 4. Note that you can use either Python or R to analyse this dataset.

  3. Optional, but encouraged. Pick a fiction book you have read and love. Discuss, in 1 page, what you don’t like about that book. It doesn’t matter if the book is old, not translated to English, or not mainstream; I don’t care about the book’s genre as long as it is fiction. If you cannot pick a book, then comics, visual novels, animated series, TV series, even story-based games will do. Why to do this? It is difficult to be critical of things we love, and art is especially subjective. In research, critical thinking is a fundamental skill. Besides, if I read the book (or watched the series), this will be a great icebreaker.

If I hear from you, my first consideration will be whether you are genuinely interested in my research. I will also note whether you’ve taken the time to carefully read these instructions. Please don’t expect a response if you have not.

These requirements may sound onerous, but remember that a PhD is an enormous commitment, both for you and your advisor. Taking the time to carefully and thoughtfully engage with prospective advisors is an investment that is sure to pay off greatly as you embark on this academic adventure.

Undergrad’s Recruitment

Open positions for Undergraduate Students with Dr Vidoni at ANU CS. Please, follow each step.

Open Honours Positions:

I am looking for Honours Students to work at ANU in 2022. Please, contact me via email with a detailed resume, and your comments (1 page only) on why you are interested in on of my open projects.

Privacy and Software Engineering

  • Project: Privacy and Technical Debt. You will conduct a systematic literature review to understand what privacy means for software development when analysed through the lens of TD. You will have to read a large number of papers, synthesise their content, and produce a taxonomy of privacy debt and its most addressed smells. You will have to summarise information, create visualisations and thorough, in-depth analysis. Read more at ANU CECS.

Insights on Devs

  • Project: How do data scientists use GitHub? You’ll analyse a wide range of version control operation and GitHub usages, including conducting an anonymous, online survey. Read more at ANU CECS.

  • Project: Grey Literature Review regarding Developers’ Advice on Technical Debt. Co-directed with Dr Codabux (from University of Saskatchewan, Canada). Read more at ANU CECS

Software Engineering Research

  • Project: Exploring examples sections in Roxygen documentation for R packages. You will mine GitHub packages, analyse their documentation (only the example section), and survey developers. Read more at ANU CECS.

  • Project: How Developers Discussion on Software Design Impact Quality. You will mine GitHub packages and run a number of static analysis tools to obtain metrics per version. Co-directed with Dr Codabux (from University of Saskatchewan, Canada). Read more at ANU CECS

If you have an idea derived from one of my papers that is not listed here, just send your comments (1 page only) of one of my latest papers (2020+) that may interest you. You can find my publications here. If you have your own project, but it aligns with my research interests, do the same, and send me a 1-page commentary/idea, alongside the DOI of the paper.

Current Students

Current students working with me.

Undergraduate Research Students


  • Manas Prasad. Topic: “Security issues admitted in commit messages”. Type:: Honours, 2022. Co-Advisor: Dr Díaz-Ferreyra from TUHH, Germany. Awarded the ANU Co-Lab Grant.
  • Dominic Yang. Topic: “GitHub issues in the R/Python community”. Type: Honours, 2022.
  • Kevin Halim. Topic: “Gray Literature review on Software Engineering in Medium”. Type:: Honours, 2022.

Research Projects:

  • David Filing. Topic: “Advanced Topic-Modelling in BioConductor forums”. Type: Honours, 2022.
  • Linda Kwan. Topic: “Privacy and Security in MSR Research”. Type: Research Project, 2022. Co-Advisor: Dr Díaz-Ferreyra from TUHH, Germany.

Posgraduate Candidates

  • Zara Hassan, MsC. PhD Candidate studying Reproducibility on Scientific Software. Co-Advisor: Dr Zadia Codabux from USask, Canada

  • Shiqiao Zhou. Master, studying NLP on commit messages.

Former Students

Former completions (all levels).

Honours & Research Projects:


  • Richeng Zhang. Topic: “Analysing data science conversations in Twitter”. Type: Individual research project, S1 2022. Status: Completed (HD).

RMIT University

  • Pranjay Kumar and Davin Ie, Bachelor of Computer Science (Capstone). 2021. Topic: Mining CRAN Discussions from Stack Overflow, and Analysing SATD in R Packages to Uncover CRAN Smells. Status: Graduated (HD). Publications: at ICPC 2022 (Rank A)

  • Aparupa Mitra, Ken Russel Go, Sruthi Soundarapandian (Capstone). 2021. Topic: Mining Security Breaches in PyPi Projects. Status: Graduated (HD).

  • Sarah Sukamto, Bachelor of Computer Science (Hons). 2020. Topic: Quality Attributes in Intelligent Agent Systems. Status: Graduated, 810.

  • Sefira Karina, Bachelor of Computer Science (Hons). 2020. Topic: Maintenance goals performance in Intelligent Agent Systems. Status: Graduated, 910.