When Paul Young joined Australia's leading accommodation website, Wotif.com, as CIO four years ago, he was faced with a company whose explosive growth had rendered the incumbent enterprise architecture redundant. So he did what all qualified engineers are trained to do, he built his own solution, utilizing J2EE and open source software.
Today, the Wotif.com website, which acts as a last minute low rate-finding accommodation service, has over 65,000 user sessions a day and completes over 110,000 bookings for more than 7900 hotels per month. Previously, it was a different story.
Back in 2002, Wotif.com's enterprise architecture based on Microsoft's ASP.NET, was struggling to cope with the company's ballooning growth of nearly 40 percent per year. Locked in with proprietary software that had reached its critical mass and was now threatening to degrade user experience, Wotif.com decided to explore the path of open source.
"When I first came on board at Wotif.com, I stood back and thought we needed a platform that could scale for the next four to five years because the current one would just not cope with our growth," Young said. "The best way to achieve scalability and robustness was with an open source environment so we decided to go down the J2EE path."
"It's made a huge difference to the running of our site," Young said. "One of the main goals of the operation was for every user to have the optimal experience whether they are navigating the site at the same time as 80,000 users or 10,000, and we've achieved that."
Of the slew of open source software the company has deployed, the most pertinent have been the inclusion of the Java-based object-relational mapping tool Hibernate and an authentication module for java called Jpam.
"I'm a great exponent of open source software but it has to be good and it has to comply to open standards," Young said. "It's a point that is often lost because there's a lot of open source software that is poorly written, undocumented and unsupportive."
When Young's team of developers could not find a piece of open source software that met their demands, they wrote their own such as the popular in-process Java caching tool, Ehcache.
"When you're running a site that has over 65,000 user sessions per day and it's very busy for 20 hours of the day, the magnitude it handles could not be serviced by any of the caching products we looked at."
After the development team wrote and implemented Ehcache, it was released to the open source world where its popularity has made it one of the most widely used caching tools in the community, Young said.
To tie the development process with the aims of the business Young proposed that the company model its processes on agile programming methodologies. For a company that used to outsource software development and run on proprietary solutions, it was quite a big cultural change, but one that Young says the company has adapted to without any major hiccups.
"The only paradigm shift that we had to accommodate was the move to an agile methodology for doing all our development, because this requires the whole business to be in sync and work very closely with the IT team," he said.
He also warned of the inflexible nature of proprietary solutions that he said focused too much on consolidation and not enough on "being the right fit".
"In the commercial space, we are seeing more and more products become one. But for enterprise architecture, applications that are cohesive and easily coupled is much better than consolidation," he said. "It's all about using the right kind of components to fit into the different layers of the application."