Add Ons - DevSource
DevSource: Microsoft Developer Resource DevSource Home Sponsored by Microsoft Home Add Ons Architecture Languages Techniques Using VS Forums
Home arrow Add Ons arrow Page 2 - Programming Grads Meet a Skills Gap in the Real World
Programming Grads Meet a Skills Gap in the Real World
By Darryl K. Taft

Rate This Article: Add This Article To:

Programming Grads Meet a Skills Gap in the Real World - ' Programming Grads Meet a '
( Page 2 of 3 )

Skills Gap in the Real World">

IBM's Shah said "software development is now more into how people can work together to solve many seemingly common issues."

In other words, "software development is becoming much more of a group activity, and there is a lot of sophistication to that in the industry that isn't being replicated in a smaller closed environment like a college," Shah said. "Very often, they simply can't because of the time limitations of the semester-based programs."

ADVERTISEMENT

Moreover, Scherlis said the onslaught of open source technology has been a big benefit to students, as they are able to bet access to source code more easily and get students up and familiar with technology they are bound to see after graduation.

Byron Sebastian, CEO of SourceLabs, in Seattle, said many less experienced developers can learn necessary workplace skills by actively working on open-source projects in their free time.

"A developer with a Computer Science degree as well as hands-on experience in shipping software through an open source project has a running start in being successful in the workplace," Sebastian said. "They get experience working with complex and distributed teams, real 'ship cycles,' real customers, and real usage of their code. My advice to a student in a university studying software engineering would be to also actively work on open source projects to acquire more 'real world' skills they can apply when they enter the job market."

To read about why some IT professionals are second-guessing their career choice, click here.

John McMullen, professor of Information Systems at Monroe College, in Bronx, New York, said, "A gap exists for a few reasons. One is that colleges are mandated by accrediting agencies to teach theory and to not be 'training schools.' Most teach courses like 'Programming Logic Using Java (or C++, etc.)' to try to sneak in some practical work but students do not get intensive programming experience."

In addition, "The rapidly changing landscape of development languages and tools—Python, PHP, LSL [Linden Scripting Language, the language used in Second Life], etc.—make it really impossible for curricula to keep up with," McMullen said. "Colleges must teach would-be programmers to 'learn-how-to-learn' new languages and skills."

Eric Newcomer, CTO at Iona Technologies, in Waltham, Mass., said, "You would think that researchers in the universities would be on the forefront of technology, and while that is the case at some universities and with some professors, the universities are generally behind software companies."

Newcomer who has taught database design at the graduate level, said if you look at a typical computer science curriculum you see plenty of fundamentals—programming languages, algorithms, operating systems, database management, etc.

"But you do not usually see things like XML, Web Services, Ajax [Asynchronous JavaScript and XML, Ruby, OSGi [Open Services Gateway Initiative], Eclipse, open source, WCF [Microsoft's Windows Communication Foundation], BizTalk, SOA [Service Oriented Architecture], ESBs [Enterprise Service Bus], orchestration engines, integration strategies, etc.," Newcomer said. "And these are the topics IT departments are most concerned with, not the fundamentals. They want to know what new technologies to adopt and what they're good for."

Newcomer said he travels to universities to deliver guest lectures and has witnessed students complain about the skills gap. "I guess the summary is that the schools cover more theory than practice, and focus on teaching well established technologies rather than new ones," he said.

John Montgomery, group program manager for Microsoft's Popfly mashup tool, who has looked closely at the phenomenon of beginning developers as well as grooming developers out of college to work in his teams at Microsoft, said, by and large, the computer science curricula at the top-tier schools do a good job of graduating students with a basic understanding of things like data structures and computational algorithms.

"But it's rare that anyone gets hired to go and write a better bubble sort algorithm or that graduates are called upon to perform array arithmetic," Montgomery said.

For the most part, these are "solved problems"—the frameworks and tools that anyone would give a developer will have already implemented what's necessary to solve those problems, he added.

Yet, "Mostly, developers seem to be presented with ambiguous technical problems, complex development processes, and unfamiliar code bases to work with," Montgomery said. "They'll be likely to be handed some chunk of existing code and expected to add a new feature or resolve a bug. Some schools try to train in the abstract for this kind of problem set, presenting students with classes in development processes."

Page 2: Programming Grads Meet a Skills Gap in the Real World



 
 
>>> More Add Ons Articles          >>> More By Darryl K. Taft
 



HD VOIP Has Arrived (with Tony Konstner)

Play Video >

All Videos >

Google and blonde jokes?

Read now >

Favorite books!

Read now >

View Now
DevSource RSS FEEDS
XML Want an easy way to keep up with breaking tech news? And the Get DevSource headlines delivered to your desktop with RSS.