In 1968, NATO held a conference on the embryonic notion of ‘software engineering.’ The aim of the meeting was to essentially synthesize and rationalise the wide range of activities that poured energy into computing and software production. The very beginnings of an influential community of minds came out of this conference, and the profound effects can be felt today.
Fast-forward to last year, and the ubiquity of software engineering is best expressed in pure financial terms. By 2013, global software revenues had hit $407billion with household names like Microsoft, Oracle and IBM leading a pack of technology giants striding ever further forward.
However, despite the staggering figures and household brands, the software engineering industry faces myriad challenges, many of which have crystallised over the past decade. This article will explore some of those challenges and take a look at the wider industry picture as we head towards the 50th anniversary of the momentous NATO meeting of 1968.
Ten years is a long time in software
Software engineering is a developing, evolving beast. The 2000s were perhaps, then, the fastest-paced decade in this continual development. Why? For some commentators, the key factors reside in the relentless pace of change inherent in information technology, with the emergence of Google a totemic factor; the changing face of the operators involved in software development, from monolithic organisations to dazzling start-ups; and in the disruptive pattern of consumer behaviour and consumer geographies, with a globalised economy servicing emerging markets and widening the playing field.
Social media changes the rules
Social media has also shaped the changes software engineering has undergone in the past ten years. Here the vital interaction is between social media as a platform for new, emergent technologies and the broad audiences it reaches. With assets like Twitter and Facebook supporting the voices of little known tech whizzes, supportive online communities dip into their pockets to crowd-fund the software they fall in love with. In 2013, crowd funded software-driven tech gave rise to the vastly popular blogging platform, Ghost, and the web-designers favourite tool, Macaw.
A changing security landscape
Software development involves huge amounts of coding. With that level of writing, pushing towards a million lines of code, mistakes are inevitable, and it is these errors that attract the attention of hackers and cyber criminals. A great challenge for engineers, then, is how best to find a solution for errant code as cyber crime has risen exponentially over the past decade.
The NSA have been developing a new language to provide levels of coding within applications that can help limit the vulnerabilities inherent in our coding worlds. The Wyvern programming language is helping to re-orient security measures away from a purely network-minded protection approach, towards a wider, application focus that seeks to secure web pages and applications.
Will this signal a sea change in how businesses and institutions see their software security future? Time will tell, but for some commentators simply protecting the web, networks and enterprises is a false friend: it is time to look at how the software we all interact with can become a tougher nut for hackers to crack.
Choosing a career in the software engineering industry today
Becoming a software engineer is a career path facilitated by an educational sector packed with study opportunities. In the UK alone, over 100 universities offer computer science and IT degrees, varying from traditional, vocational engineering through to specialist subjects such as games development, computer science in the arts and in internet application development.
Servicing the careerist needs of these budding technologically focused minds is an evolving industry landscape. Pakistan, India and China are all simmering hotbeds of engineering talent, with Switzerland the place to be to pull in the big bucks. Engineers will find themselves working in Government, developing software for publishers, or working for manufacturers of computers or the ever-widening app development market.
The future for software engineering is seemingly bright. Increased emphasis on education programmes tailored towards cybersecurity is on the increase, mirroring industry needs in terms of talent-focus. However, that defining aspect of the very first steps that software engineering took as an industry – the work effectiveness of small, collaborative teams – is unlikely to change, and will if anything increase in prevalence as we move further forward into the coming decades.