Universities Are Failing Software Developers
Why new software development grads are struggling to land jobs, and how universities can modify their curriculum to set students up for success.
Picture this: You’re back in school, taking an advanced computer science seminar at your prestigious university. You’ve spent the better part of a semester topping off your brimming knowledge of coding languages like C++, Java, and Python. Your professor confidently assures the class that the likes of Google, Apple, and Facebook would be lucky (and eager) to hire you with a comfortable six-figure starting salary. Your hours-upon-hours of heads-down coding are finally about to pay off, right?
Wrong.
The unfortunate truth is that aspiring software developers are being led astray by university programs that purport to set students up for success, but in reality, are failing to properly educate and empower students to succeed outside of the classroom. As both a university professor and the CTO of a software development company, I am deeply familiar with both sides of this equation.
First, universities need to re-examine their curricula -- and do so often, because technology, trends, and best practices move lightning-fast in our industry. You would think that the ever-evolving nature of software development is common knowledge, yet year after year, I meet with candidates who only know Python, Java, or C++. These coding languages are often taught because of existing school material, exercises, tests, and labs, but they aren’t as widespread in professional settings because, frankly, there are better languages with larger communities targeting a larger set of applications or devices. At my company, for instance, we prefer to primarily work with Typescript/Javascript, C#, and PHP, all of which come with great frameworks and libraries. In theory, software development or computer science is a very practical university major, with many obvious applications available immediately after graduation. But if universities want this to be true in practice, they need to do a much better job of teaching real, marketable skills that employers actually value.
In addition to updating the hard skills being taught to students, university leaders need to emphasize the importance of softer skills like critical-thinking, problem-solving, communication, and project management. Like many employers, my company asks our hiring candidates to complete an initial assessment to demonstrate their knowledge on a host of topics. We make this test moderately difficult because we’re more interested in observing the candidates’ thought process and problem-solving skills than we are in their ability to intrinsically know all the answers. A software developer will split their time writing code, troubleshooting, helping others, and managing code deliveries. Yes, the hard skills are important, but to be a true team player and an innovative developer, you need a well-rounded background -- and students don’t appear to be hearing this from their professors.
Finally, universities need to do a much better job of managing starting salary expectations. A starting salary is, well, a starting point. Newly graduated students who are entering the workplace need to understand it’s a marathon, not a sprint, and it’s unrealistic for new developers to command a six-figure salary without previous work experience. We hire because of potential and we reward experience. When you enter the workplace with little experience, you should reasonably expect an entry-level salary. To be sure, software development can be a lucrative career, but in many cases the starting salary is lower than what candidates have been told to expect. Like so many other fields, software development involves a great deal of professional growth over time. It’s a fantastic career path, and I would never discourage passionate students from pursuing it, but it’s crucial that universities set realistic expectations and teach students how to be well-rounded professionals, not just coding wizards.
I’ve been an adjunct professor at Linfield College in McMinnville, Oregon for several years, and no two years have looked the same from a curriculum standpoint. It’s been a great experience teaching students and getting feedback on where they end up working. I’m lucky to also have my finger on the pulse of the business community as the CTO of Buildable. I see first-hand that software development is constantly changing, and while I continuously learn new techniques, I (and the other faculty professors) also adjust my computer science courses. Students are paying good money for their advanced education, and they deserve to be taught the most up-to-date relevant skills and topics.
Max de Lavenne is the founder and CEO of Buildable, a custom software development company in McMinnville, Oregon. A software engineer and architect at heart, Max is dedicated to solving challenging technology problems and bridging gaps between users and software apps, through creative thinking, methodical user experience research, robust software engineering, and frequent communication. A master of all things software, Max has designed, built, deployed, and maintained hundreds of web apps, custom apps, and processes. He also teaches rising software development students at Linfield university.
About the Author
You May Also Like
2024 InformationWeek US IT Salary Report
May 29, 20242022 State of ITOps and SecOps
Jun 21, 2022