Scalable & Reliable Apps

Projects

QBurst has successfully built and deployed close to one hundred web applications using different MVC web app frameworks like Symfony, CakePHP, Django, Zend, Struts, Spring, Ruby on Rails, and .NET. We have extensively used one or more JavaScript and AJAX toolkits like ExtJS, Scriptaculous, Prototype, Dojo, JQuery, YUI and MooTools to bring richness and responsiveness to the UI. Most of these webapps are powered by MySQL database, though we have also used SQL Server, Oracle and Postgre as the database. But, we don't always use relational databases - we have used Google's BigTable in one of our app engine projects and Lucene in a few others where there is a lot of unstructured text data. These webapps are hosted in a variety of environments - shared, dedicated, virtual dedicated and of late mostly up there in the cloud (Amazon EC2, Flexiscale and Google). Read about some of our interesting projects:
Full-text Search Engine and Document Delivery System
This site delivers 10 million+ pageviews a month and has an Alexa worldwide rank of 1600. Our customer who owns this site started operations in 2004 and is now #1 in their space. The website primarily serves documents. There are more than 50 million documents stored in a MySQL database. Read-only replicas of this database allows distribution of load between multiple servers. The site has a powerful full-text search feature built on top of the open-source Lucene search engine. Lucene's indexer indexes the documents in the database and stores them in multiple index shards. Each shard or fragment is of a manageable size. Searches are parallelized and handled by around 10 search servers, each server handling a portion of the index. The results are merged, ranked and served by the web servers. System architecture is akin to and inspired by Google.
The site is also search-engine friendly with all 50 million documents in the site being spidered and indexed by Google. The data assets are monetized through Google AdSense and a document delivery system for paying customers. The site also offers features like saved searches, search-term alerts and portfolios. The site was developed using PHP, Symfony, Java, iBatis, Lucene and MySQL. Load balancing and high-availability was achieved by having a system with multiple web and search servers, and having read-only replicas of the MySQL database.
Operational Support Systems for a Wireless Broadband Services Provider
This customer is a provider of high-speed wireless broadband services for businesses in the UK. They started operations in 2006 and in order to scale their operations they needed a good Operational Support System (OSS). They selected QBurst for building a custom OSS to automate their operations. We are in the process of incrementally building this system. We have already created an intranet and customer portal. The customer portal currently has a help desk (ticketing system), knowledge base and live chat. Support Suite from Kayako was seamlessly integrated with the portal. The intranet currently has a team directory, discussion forum (phpBB) and wiki (mediawiki). Salesforce is used for tracking leads and opportunities, and Google apps is used for calendaring, managing meetings and email. QBurst has integrated SalesForce and Google Apps with the intranet. Users are provisioned from a single point - the admin doesn't have to go to the admin panel of each application to do that. Also, when the end-user signs in to intranet, they are logged into all other apps, thanks to single-sign-on. QBurst has now started building and/or integrating modules for traffic and network management.
Re-engineering Business Support Systems for a Residential ADSL Provider
This project was done for a major broadband provider in UK having more than 200,000 customers. Their entire system was built in-house 10 years ago and evolved over the years. The system could no longer adapt easily to accommodate new requirements. As a result, launching new products and reacting to competition and market conditions became a slow process. Even small changes would take ages to implement, given the level of testing involved.
QBurst provided resources to work with the customer's development team to undertake a major re-engineering effort. The team decided to go for API-driven subsystems. Subsystems would communicate with each other through APIs. Legacy subsystems were wrapped under APIs to effect a smooth transition. A new MVC framework was created so that development is streamlined. Permissions were managed within the framework so that developers don't have to worry about that. Technologies used include PHP 5, custom MVC and ORM frameworks, JQuery and MySQL.
Testing Services for the #1 Widget Platform Company
This customer based in Virginia has the most widely used widget platform in the Internet in terms of the number of widgets served. Their platform allows widget developers to create, distribute, share, track and monetize Internet widgets. Widgets can be built using Flash, images or HTML/JavaScript. The platform allows the widget developer to deploy their widgets into a number of popular social networking sites (FaceBook, MySpace, Hi5) and widget galleries like iGoogle. The number of permutations that needed testing is very high given that the customer needs cross-browser compatibility too.
QBurst was engaged to do QA for the widget platform. Given the fast paced environment, releases were made frequently and at least once in 2 weeks. This made testing a challenge since there isn't much time to manually test every combination. So QBurst has started working toward automation of tests. We have finished automating all the smoke tests, so we can quickly catch any major problems. We have now started automating the entire set of regression test cases. Once that is complete, regression can be done in a matter of hours instead of days. This will give developers faster feedback and will further shorten the development cycle. Most of the test cases were automated using the Selenium framework. However, Selenium cannot automate Flash application testing and this is a problem that we are now trying to solve.
Website for Private Flight Booking
We have developed a website that allows travelers in the luxury segment to find and book private jets. The site is owned by a former Royal Air Force Pilot. Many private aircraft operators and charter companies in Europe have registered and offer their services through the site. The system has data about almost all the airfields and even the small runways in Europe. The system is integrated with Google Earth and Maps, and was developed in J2EE using Spring, MySQL, AJAX and iBatis. Privatefly is also the winner of the 2007 Dragon's Den talent show of travel websites. Here is the news article on TimesOnline.
Personnel, Equipment and Vendor Management Systems for a Big Construction Company
This customer is a $350 million construction company having 1000s of employees and many more number of contractors. Headquartered in Dublin, CA, they specialize in heavy, highway and civil engineering construction. They needed a system to keep track of hourly rates, worker skill level and training, accidents, disability and insurance information, work and worker locations and equipment usage and rentals.
QBurst developed the system using Spring, Hibernate, Oracle database and Dojo for automating the personnel-management related requirements. The key feature of this system is that there is only one page. The different sections of that page are updated through AJAX calls. This makes it very usable since all the information about an employee or contractor is accessible from the same page, thereby improving the efficiency of supervisors. This system also interfaces with the other enterprise systems like Dispatch, Accounting and Payroll.
Content Market Place
This is a webapp connecting freelance journalists, copywriters, translators and photographers to media houses. Content creators and publishers can upload content (articles, news items etc) to the website, and other publishers and content buyers can login with their own accounts, search for content, and buy at the click of a mouse. Content owner can sell copyrights of their articles for specific regions. Content is displayed using Macromedia FlashPaper. The site was developed in ASP.NET (C#) and is powered by a SQL Server database.