Essay · Sciences
Reassessing Employability in Computer Science: An Analysis of Educational and Market Challenges
Keywords
Abstract
A degree in Computer Science has traditionally been associated with high employment rates. Recent shifts in the labor market, however, point to a different picture, with rising unemployment among graduates in the field. This article examines the internal factors (related to academic training) and external factors (associated with the market) that contribute to this phenomenon, and proposes strategies for aligning students’ education with the current demands of industry.
1. Introduction
For decades, Computer Science was regarded as one of the most promising academic paths in terms of employability and socioeconomic mobility. Since the beginning of the digital revolution, professionals with knowledge of software development, networking, algorithms, and systems engineering were in high demand among companies in every sector, especially those expanding in information technology.
In the 2000s and 2010s, the field became synonymous with stability and professional advancement: companies aggressively sought software engineers, systems architects, and database administrators. During the boom of startups and the digitization of services, hiring exploded and salaries rose. A 2018 report by Burning Glass Technologies showed that Computer Science–related jobs were among the fastest-growing in the United States, with average starting salaries higher than in other engineering fields [1].
In 2023 and 2024, however, this picture began to show signs of an inflection. Recent data released by the Federal Reserve Bank of New York and amplified by outlets such as Futurism revealed that the unemployment rate among Computer Science graduates had risen to 6.1%, above the 5.8% average for other majors [2]. The figure becomes even more significant considering that, just three years earlier, the rate stood at around 3.0%, according to data from the National Association of Colleges and Employers (NACE) [3].
This rise in unemployment among graduates of a field considered highly employable raises questions about:
- The effectiveness of academic curricula in preparing well-rounded professionals;
- The impact of external factors such as economic downturn and the advance of artificial intelligence;
- The saturation of the supply of professionals caused by the mass expansion of technical training through short courses, bootcamps, and emerging colleges.
Unlike other market cycles, this movement is not merely cyclical. The combination of technological, economic, and educational changes appears to be structural. The emergence of generative AI systems capable of automating tasks previously performed by developers — such as code generation, automated testing, and debugging — together with the adoption of these technologies by companies in pursuit of efficiency, creates a new paradigm [4].
It therefore becomes important to analyze in depth the factors that make up this new scenario. This article proposes a reflection organized around two main vectors:
- Internal factors, tied to the structure of academic training in Computer Science, including curricular content, the skills that are (or are not) developed, and pedagogical practices;
- External factors, arising from market dynamics, such as the advance of AI, the reconfiguration of demand for professionals, and the oversupply of technical labor.
Finally, we put forward possible courses of action based on recent academic studies, with the aim of reflecting on the educational model in light of the new market reality.
2. Internal factors: gaps in academic training
Although rising unemployment among Computer Science graduates is influenced by a number of external variables, a critical analysis of academic training reveals structural shortcomings that directly affect these professionals’ employability. Most undergraduate Computing programs remain heavily centered on technical development, focusing on programming languages, data structures, and algorithms. Important as these topics are, they are often taught out of context, with no connection to real software engineering problems.
According to Sridharan [5], technical training often neglects an understanding of the "why" behind engineering decisions, concentrating only on the "how." This produces a professional profile that carries out tasks but cannot justify them, communicate them, or adapt them in the face of business, time, or team constraints. This view is reinforced by a survey conducted by the McKinsey Global Institute, which found that more than 40% of employers do not consider recent graduates ready for the market, mainly because they lack skills that complement the technical ones [6].
Communication, negotiation, collaboration, empathy, and critical thinking are as essential as knowing how to program. Yet these competencies are largely neglected in university Computing programs. Many curricula include no courses dedicated to developing these skills, nor activities that place students in real contexts of collaborative problem-solving. In recent years, authors such as Sridharan [5] and Abrahão et al. [7] have stressed that the most valued professionals are not necessarily the most technical, but those able to work in cross-functional teams, argue clearly, understand the client’s context, and take part in continuous feedback cycles.
There is also a growing problem of technical egocentrism: students believe their solution is the best because it "works," even when it is inefficient, laborious to maintain, or poorly documented. When questioned, they tend to blame the failure of communication on the listener rather than on their own ability to convey ideas — the opposite of what Richard Feynman suggested when he argued that true mastery reveals itself in the simplicity of the explanation [8]. Another common limitation of traditional programs is the absence of practices that simulate the real working environment. Cloud computing, data engineering and data science, and advanced software architecture are, at many institutions, still peripheral topics or not addressed at all.
Studies such as those by Avgeriou et al. [9] and Araújo et al. [10] reinforce the importance of curricula that integrate practical experiences, such as real software projects, hackathons, and interdisciplinary collaboration. These experiences not only strengthen technical skills but also develop interpersonal and strategic competencies.
3. External factors: transformations in the labor market
The employability of Computer Science professionals does not depend solely on the quality of their academic training. External factors — economic, technological, and social — also play a decisive role. In recent years, a confluence of global phenomena has profoundly altered the dynamics between the supply of and demand for technology professionals. The popularization of the technology field, combined with competitive salaries and the widely broadcast idea that “learning to code is the path to the future,” fueled an explosion in the number of degree programs, technical courses, and short courses (such as bootcamps). As early as 2021, Code.org and the OECD were warning that enrollment in computing-related programs was doubling every five years in OECD countries [11].
This resulted in a significant increase in the supply of qualified labor, especially for junior positions, where competition intensified among recent graduates, technical-school alumni, and career-changers from other fields. With more candidates competing for fewer openings, selection criteria grew stricter, and the best-prepared professionals (including those with well-developed soft skills) stand out.
Easy access to free or inexpensive technical content through platforms such as YouTube, Udemy, Coursera, and Alura has also contributed to an even larger pool of professionals in training or in career transition. Tools such as GitHub Copilot, ChatGPT, Amazon CodeWhisperer, and other generative AI solutions have been directly affecting the nature of a developer’s work. According to a McKinsey & Company study, more than 30% of the time devoted to technical software development tasks can be automated with AI-based tools [12].
The impact is even more visible in entry-level positions, where tasks such as generating repetitive code, writing unit tests, and simple debugging are increasingly carried out by automated assistants. This reduces the need to hire junior professionals for such tasks, redirecting demand toward more senior profiles capable of handling complex problems and communicating with business areas.
As Martin describes [13], there are clear signs that AI is restricting recent graduates’ access to the market. This is especially visible in sectors under pressure to cut costs and increase productivity, such as banking, fintech, and digital retail. The global economic crisis triggered by factors such as the COVID-19 pandemic, geopolitical wars, and global inflation led companies to reassess their technology investments. Between 2022 and 2024 there was a series of mass layoffs at the leading big tech companies — such as Meta, Google, Amazon, Twitter (X), and Microsoft. In 2023 alone, there were more than 260,000 layoffs in the technology industry, according to Layoffs.fyi [14].
This contraction directly affected entry-level openings and internship and trainee programs, traditionally used to develop new talent. Companies began to focus on retaining senior talent, automating processes, and outsourcing development services. Another relevant external factor is the globalization of the labor market. Platforms such as Upwork, Toptal, and Fiverr, combined with the culture of remote work, have widened competition among professionals from different countries. For companies in the US and Europe, hiring a qualified developer in a country with a lower cost of living has become financially attractive.
Thus a recent Brazilian graduate, for example, besides competing with classmates and bootcamp alumni, also competes with experienced developers from places such as India, Pakistan, Eastern Europe, and Sub-Saharan Africa — many of them with hands-on experience, fluent English, and a strong presence in international technology communities.
4. Strategies for aligning training with market demands
If external factors are beyond the control of educational institutions, internal factors can and must be reformulated. In light of the new employability landscape in Computer Science, it becomes important to discuss curricular modernization in order to educate professionals who are not only technically competent but also able to navigate complex organizational environments, with the capacity for adaptation, communication, and critical thinking.
4.1. A curriculum centered on real experiences and continuous feedback
The study by Avgeriou et al. [15], published in Information and Software Technology, proposes a model for teaching Software Engineering based on empirical evidence and realistic experiences. The authors point out that conventional teaching, based on lectures and artificial projects, does not prepare students for the real challenges of industry. Among the proposed strategies, a few deserve emphasis:
- Project-based learning (PBL): assigning prior readings from the literature and use cases, sustaining continuous engagement in classroom discussion, and carrying out real projects with external stakeholders, in which students develop software under realistic requirements and deadlines;
- Continuous feedback: iterative assessments based on code review, presentations, and individual reflections;
- Integration of theory and practice: use of real industry tools (Git, Docker, CI/CD, GitHub issues) from the very start of the program;
- Development of soft skills as formal deliverables: client communication, documentation, scope negotiation, and retrospectives are treated as an essential part of the learning process, not as "optional" components.
This model seeks to align higher education with the reality of modern software engineering practice, encouraging interdisciplinarity, collaboration, and student agency.
4.2. A new curriculum built on four pillars
In the article “What Should a Modern Software Engineering Curriculum Include?” [16], authors from the University of Victoria, Canada, propose a modern curricular model divided into four pillars:
- Technical foundations: algorithms, data structures, operating systems, and networking;
- Professional practices: version control, testing, DevOps, modern architecture, and requirements engineering;
- Innovation and emerging tools: generative AI, Prompt Engineering, low-code/no-code, edge computing;
- Ethics, sustainability, and humanity: the social impact of technology, algorithmic ethics, diversity, and inclusion.
This model recognizes that technical training must coexist with a critical understanding of the software engineer’s social role. The proposal argues that emerging technologies — such as generative AI — should be addressed not merely as tools but as central themes of the curriculum. The authors further stress the need for programs to adopt a continuous assessment of curricular maturity, based on indicators such as graduate employability, evaluations by industry stakeholders, and results in practical projects.
4.3. Professional didactics: work as the object and the means of education
Professional Didactics is a French approach centered on real work as the object of teaching and learning [17]. Created by Gérard Vergnaud and developed by researchers such as Pastré and Mayen, this perspective starts from the premise that professional knowledge is situated and develops only when the student is placed before real problem situations — not merely simulated but actually lived, with all the ambiguities, pressures, and dimensions of the workplace.
In the context of Computer Science education, Professional Didactics proposes:
- Teaching situations built on analyses of the real activities of software engineers (observation, interviews, and shadowing of working professionals);
- Mobilization of action schemes – the student does not merely learn content but reconstructs internalized professional schemes through practice;
- Closer ties between university and market through the analysis of authentic situations (such as sprints, production incidents, and architecture decisions made under pressure).
Unlike approaches based on the transmission of knowledge or the solving of idealized exercises, Professional Didactics is anchored in real activity, treating the development of competencies as a process through which the learner is transformed in the face of complex, real tasks. It also connects with the pedagogy of alternance (e.g., the theory–practice duality) and has been successfully applied in engineering programs in France, particularly in continuing education and higher technological education [18]. It can be implemented through:
- Workshops analyzing real work with industry professionals;
- Partnerships for supervised internships with reflective mentoring;
- The creation of “simulated pedagogical situations” based on real events gathered in the field.
4.4. Complementary activities with curricular weight
Beyond structural changes to the curriculum, the literature also points to formally recognizing extracurricular activities alongside the familiar ones of knowledge transmission and assessment, such as:
- Participation in hackathons and programming contests;
- Mandatory contributions to open-source projects;
- Clear milestones and goals for publishing technical articles or blog posts about project experiences;
- Participation in mentoring programs, student leagues, and science fairs.
These practices, especially when treated as mandatory components of the educational path, foster the creation of a technical portfolio and a body of experience that complement the formal diploma — particularly in a market where employers look for concrete signs of initiative, engagement, and professional maturity.
5. Conclusion
The employability landscape in Computer Science is undergoing a significant transformation, marked by the combination of a tighter market and an academic education still poorly aligned with contemporary demands. The rising unemployment rate among graduates in the field, as recent studies indicate [2], makes clear how important it is to rethink not only the content of degree programs but also their methodologies and educational goals.
We observed a clear gap in academic training, such as the disproportionate emphasis on decontextualized technical content and the lack of development of interpersonal and critical competencies. Likewise, factors such as the saturated supply of professionals, the impact of artificial intelligence tools on basic technical work, the economic downturn, and intensifying global competition add even more challenging components to the issue.
In light of these vectors, three promising approaches emerged for reinventing Computing education:
- The evidence-based experiential curriculum, which proposes real projects, continuous feedback, and student agency as the backbone of learning [15];
- The four-pillar curricular structure suggested by Maurer et al. [16], which brings together technical foundations, professional practices, technological innovation, and ethical formation;
- Professional Didactics, a French approach that proposes real work as both the object and the means of education, guiding teaching through the analysis of authentic professional activity [17][18].
This last point represents a paradigm shift: it is no longer merely about teaching “what” to do, but about placing the student in real conditions to reconstruct their own action schemes in the face of the complexity of the world of work. Professional Didactics restores the centrality of human activity and treats competence as a situated construction, developed through confrontation with real situations and through reflective mediation.
The main contribution of this article, therefore, lies in evaluating proactive scenarios for systemic and methodological change in Computing education — change that goes beyond merely updating languages or frameworks. The focus must be on educating people capable of:
- Understanding complex, ill-defined problems;
- Making decisions under real constraints (time, resources, conflicts of interest);
- Communicating technical ideas clearly, adapting their language to the listener;
- Reflecting on their practice and learning continuously from experience.
Such an education will only be possible if educational institutions move closer to real working contexts — not merely through internships at the end of the program, but through continuous integration of teaching, practice, and reflection. For educational institutions, it is essential to incorporate models such as Professional Didactics into capstone projects and synthesis courses, using professional activity as the basis for developing complex competencies. It is equally advisable to establish partnerships with companies to gather and reconstruct real problem situations that can serve as teaching devices. Another essential point is to value the development of soft skills — such as communication, collaboration, and critical thinking — treating them as formal, measurable competencies that carry weight in assessment.
From the companies’ standpoint, it is strategic to support technical residency programs, supervised internships, and active mentoring initiatives, widening the bridge between academia and the market. Sharing real situations (even anonymized ones) with educational institutions helps enrich students’ education with authentic contexts of practice. Companies can collaborate actively in defining curricula, offering feedback on the competencies they expect and taking part in evaluating graduates’ performance against real criteria of professional practice.
Finally, it falls to students to take a leading role in their own education, seeking extracurricular experiences that let them engage in practice, receive feedback, and develop intellectual and professional autonomy. Taking part in real projects — such as contributions to free software, hackathons, or social initiatives that use technology — strengthens their portfolio and develops skills that go beyond traditional technical content. It is equally important to adopt a reflective stance toward practice, documenting lessons learned, the reasoning behind decisions, and the evolution of competencies in personal portfolios, as a way of consolidating and communicating their process of continuous development.
The necessary transformation will not be trivial, but it is entirely feasible. It requires cooperation among academia, the market, and students. If we want a Computer Science education to once again be a secure bridge to the world of work, we must abandon the logic of one-way content transmission and decisively adopt the logic of education through confrontation with reality — as Professional Didactics teaches us. The future of computing lies in our capacity to educate professionals who truly know how to act in the present.
References
[1] Burning Glass Technologies, “The Digital Edge: Middle-Skill Workers and Careers,” Burning Glass, 2018. Available: https://www.burning-glass.com/research-project/digital-skills-gap/
[2] N. Al-Sibai, “Learn to Code Backfires Spectacularly as Comp-Sci Majors Suddenly Have Sky-High Unemployment,” Futurism, May 2025. Available: https://futurism.com/computer-science-majors-high-unemployment-rate
[3] National Association of Colleges and Employers (NACE), “Class of 2020: First Destinations Survey,” 2021. Available: https://www.naceweb.org/job-market/graduate-outcomes/first-destination/class-of-2020/
[4] M. Martin, “AI is Keeping Recent College Grads Out of Work,” Axios, May 2025. Available: https://www.axios.com/2025/05/29/ai-college-grads-work-jobs
[5] C. Sridharan, “How to become a more effective engineer,” The Pragmatic Engineer, Nov. 2024. Available: https://newsletter.pragmaticengineer.com/p/how-to-become-a-more-effective-engineer
[6] McKinsey Global Institute, “Education to employment: Designing a system that works,” McKinsey & Company, 2013. Available: https://www.mckinsey.com/industries/public-and-social-sector/our-insights/education-to-employment-designing-a-system-that-works
[7] Abrahão, S., Grundy, J., Pezzè, M., Storey, M.–A., Tamburri, D. & Gonzales, S. (2025). Software Engineering by and for Humans in an AI Era. ACM Transactions on Software Engineering and Methodology, Vol. 34, No. 5.
[8] R. Feynman, The Feynman Lectures on Physics, Vol. I, Addison-Wesley, 1964.
[9] P. Avgeriou, N. bin Ali, M. Kalinowski, and D. Mendez, “Designing a Syllabus for a Course on Empirical Software Engineering,” arXiv preprint arXiv:2503.11291, Mar. 2025. Available: https://arxiv.org/abs/2503.11291
[10] A. A. Araújo, M. Kalinowski, and M. T. Baldassarre, “Embracing Experiential Learning: Hackathons as an Educational Strategy for Shaping Soft Skills in Software Engineering,” arXiv preprint arXiv:2502.07950, Feb. 2025. Available: https://arxiv.org/abs/2502.07950
[11] OECD, “The Digital Transformation of Education,” OECD Digital Economy Papers, No. 311, 2021. Available: https://www.oecd.org/education/
[12] McKinsey & Company, “The Economic Potential of Generative AI: The Next Productivity Frontier,” Jun. 2023. Available: https://www.mckinsey.com/business-functions/mckinsey-digital/our-insights/the-economic-potential-of-generative-ai
[13] M. Martin, “AI is Keeping Recent College Grads Out of Work,” Axios, May 2025. Available: https://www.axios.com/2025/05/29/ai-college-grads-work-jobs
[14] Layoffs.fyi, “Tech Layoffs Tracker,” 2024. Available: https://layoffs.fyi/
[15] P. Avgeriou, N. bin Ali, M. Kalinowski, and D. Mendez, “Designing a Syllabus for a Course on Empirical Software Engineering,” Information and Software Technology, vol. 160, 2023. Available: https://doi.org/10.1016/j.infsof.2023.107395
[16] A. R. Maurer, S. R. Kelly, and J. H. Humphries, “What Should a Modern Software Engineering Curriculum Include?,” arXiv preprint arXiv:2502.07950, Feb. 2025. Available: https://arxiv.org/abs/2502.07950
[17] G. Vergnaud, “A didática profissional e a teoria dos campos conceituais,” Revista Brasileira de Educação, vol. 12, no. 34, pp. 168–176, 2007.
[18] M. Pastré, “A didática profissional: bases teóricas e princípios para o desenho de situações de ensino,” Educ. Soc., Campinas, vol. 30, n. 106, pp. 1015–1038, 2009. Available: https://www.scielo.br/j/es/a/fzQFkCZQHBV7ddk3KZzRTLB/
Comments
Every comment is moderated before it appears here. Nothing is published automatically.
Loading…