Digital Ecommerce
Architected/Developed a Digital ECommerce Website using CDNs, 3-tier caching and complex search algorithms for one of our clients in the Entertainment Industry.
It was great experience working on implementing the new Digital Ecommerce strategy for a website that gets more than a Million hits/day. The challenge was not only the deadline but also creating an architecture that is scalable without having much flexibility in choosing the stack. The original stack was Asp.NET 2.0 with C# and VB code plus Sql Server, which was later moved to the then latest version of .NET 4.0.
Creating a digital strategy involves a lot of challenges. Security is a big challenge and it opens the website up for attack from all parts of the world esp if the website is that popular and now supports Digital Ecommerce. It may not be that lucrative for a hacker to attack a website that takes orders, processes the order offline and then deliver something in few business days. Simple reason, it could be a lot of effort and if, at any point of time, it's identified that it was a fake order the hacker can land in trouble as the shipment is most probably going to be delivered at his/her address.
However, this does not apply for Digital Ecommerce. The moment the hacker enters the account, he can download the product be it a software, game, music or anything digital. So, security was a very important part of this application for us. Refactoring the legacy code was another big problem. We, at Ria, love refactoring code and applying the best design patterns and practices to reduce technical debt.
We came up with good source control and continuous integration strategies, dealt the standard legacy problem of dll versioning mismatch and moved all the code over to C# from VB.NET.
Next task surely was going to be performance. I am sure you've heard about Google and Amazon's cases for performance. If not, here they are. Amazon claims that just an extra 1/10th of a second on their response times will cost them 1% in sales. Google says half a second increase in latency caused traffic to drop by a fifth. So, in an Ecommerce scenario performance hit means loss of revenue. We dealt with performance in few different ways - the complete discussion though is not inside the scope of this article. However, one of our Principal Consultants, a Microsoft MVP with Masters in Computer Science, did an amazing job on the server side algorithms plus the data-layer queries.
Rest of the team came up with 3-ties caching strategies (at the data, server and UI layer). They also introduced CDNs. The project is very successful and reportedly generated tens of millions of dollars in revenue for the client.