Why Good Software Development Matters.
As a prolific user of technology and software (much like yourself I imagine), I want the technology I use everyday to just – well – work. Sometimes I don’t even care if it works well, as long as it doesn’t make my job any harder! And if it breaks I want it fixed – fast. I am much less concerned with how that software was developed, why should it matter anyway? I imagine you know what is coming -of course how software is developed and maintained is really important. It is akin to car manufacturing. A well made car is reliable, easier to maintain, doesn’t break often – and makes driving easier (even fun). Well developed software works the same way, it is easier to maintain in the long run, can keep up with technology changes, and when stuff breaks – it can be fixed with relative ease.
At Ticketsolve, the development team is focused around two main goals: keeping the system current and abreast of technology advancements, and releasing new features. For example, every Monday the team focuses on security: ensuring good connection to servers for users, checking for any spikes or unusual connections, making sure there are no security flaws or breaches. Fridays are all about code improvement – developers get a half a day every Friday to improve an old piece of code. These two “in service” days ensure Ticketsolve’s security and reliability for customers, and keep us disciplined in maintaining the system.
An interesting feature about our development team is that they are distributed throughout Europe. So while we can’t do a birthday cake for Saverio in the conference room at 4:30, we do ensure the team can work as if they are in the same room. Using online workflow tools, Skype, as well as other agile team processes, the development team can communicate and work smoothly. For example, the team “gets together” (remotely) on a daily basis to do a “stand up” meeting. This is a daily meeting where developers discuss what they worked on the day previous, what they are working on currently and what help they may be need. This means even though our team is spread out across Europe, there are no real hindrances to the workflow.
I got a chance to talk to one of our developers (Saverio) about his work day – which focuses around modernising the infrastructure of Ticketsolve. This is a significant piece of work, as the team is moving the system from Ruby on Rails 2 to 3, and everything needs to be tested before the transition. The big question of course is why move at all. Saverio explained that updating the Tickesolve infrastructure makes the code cleaner and easier to modify. This in turn will improve the overall performance of the software overtime. As Saverio aptly put it – technology moves; so we have to follow.