Complexity (Jan 2022)

A Comprehensive Skills Analysis of Novice Software Developers Working in the Professional Software Development Industry

  • Imdad Ahmad Mian,
  • null Ijaz-ul-Haq,
  • Aamir Anwar,
  • Roobaea Alroobaea,
  • Syed Sajid Ullah,
  • Fahad Almansour,
  • Fazlullah Umar

DOI
https://doi.org/10.1155/2022/2631727
Journal volume & issue
Vol. 2022

Abstract

Read online

Measuring and evaluating a learner’s learning ability is always the focus of every person whose aim is to develop strategies and plans for their learners to improve the learning process. For example, classroom assessments, self-assessment using computer systems such as Intelligent Tutoring Systems (ITS), and other approaches are available. Assessment of metacognition is one of these techniques. Having the ability to evaluate and monitor one’s learning is known as metacognition. An individual can then propose adjustments to their learning process based on this assessment. By monitoring, improving, and planning their activities, learners who can manage their cognitive skills are better able to manage their knowledge about a particular subject. It is common knowledge that students’ metacognitive and self-assessment skills and abilities have been extensively studied, but no research has been carried out on the mistakes that novice developers make because they do not use their self-assessment abilities enough. This study aims to assess the metacognitive skills and abilities of novice software developers working in the industry and to describe the consequences of awareness of metacognition on their performance. In the proposed study, we experimented with novice software developers and collected data using Devskiller and a self-assessment log to analyze their use of self-regulation skills. The proposed study showed that when developers are asked to reflect upon their work, they become more informed about their habitual mistakes, and using a self-assessment log helps them highlight their repetitive mistakes and experiences which allows them to improve their performance on future tasks.