What’s in a job title?
Many companies have Software Engineers or Software Developers so what’s the difference?These terms represent a different mind-set, with development being used more often than it used to be. The original computer systems were created and maintained by engineers. In this instance the emphasis is on maintenance as well as creating the system in the first place. This is because systems were so expensive that they could not be replaced easily. Today, software systems can be created far more quickly so there is less emphasis on maintenance. Why would you bother to spend a great deal of time maintaining an old system when you can simply develop a new one in less time than it would take to fix the old system? When the goal posts keep moving it makes sense to use a development approach more than an engineering approach. The Engineering approach often seems like the safe option because you are re-using existing software but reusable software has proven to be very illusive. Perhaps it is safer to limit the amount of investment in a project if it does not yield some value.
The BBC has scrapped a £98m digital production system, which its director general said had “wasted a huge amount of licence fee payers’ money”.
As development tools have progressed and become more powerful it makes sense to update your technology and use the latest approach. It can be costly to maintain a system that is based on a framework that is no longer supported properly and will not integrate with new systems. The downside of all this ‘new’ technology is that there is a steep learning curve and developers are continually updating their knowledge base.
Although technology is continually changing it is important to understand the principles of creating good software, whether you consider yourself a developer or an engineer. Businesses will always need developers to push the envelope and be creative with technology and engineers are essential to ‘keep the wheels turning’.