• British Petroleum 
  • DELL 
  • Tokyo Electron 
  • Varsity Media 
  • Renaissance Systems 
  • Industries 
  • All Clients... 
  • .net architect blogs  

Reusable Architectural Framework used by multiple Energy Trading Applications

A large initiative to provide common application infrastructure across the board for the multitude of applications running inside British Petroleum.

Handling displays of huge amounts of data, persisting objects, capturing complex user interactions.

The challenge

  • With a company the size of British Petroleum, new applications were springing up on a monthly basis - with each application providing its own mechanism for security, logging, data access etc. A need for a cohesive standard framework was apparent.
  • The largest application to run on the common framework would be - to put it mildly - LARGE. With several gigabytes of data - several data feeds, several screens displaying grid-upon-grid of data and an end-to-end energy trading mechanism (from deal capture to settlement).
  • Several thousands of records (several MBs) of data would need to be displayed using advanced data grids providing real-time updates, insertions and deletions.

The Solution

Using the .NET framework and several open source components built around the framework (including spring.net, nHibernate, log4net...), I helped design and implement a solution which included:

  • A reusable UI framework consisting of CAB, SCSF and advanced Syncfusion UI controls.
  • A pluggable architecture using spring.net, object persistence using nHibernate, common logging using log4net, automated builds using CruiseControl.
  • Comprehensive unit tests written for both the business layer as well as the UI layer. Fully automated build process - encompassing entire framework with all its components.

The Result

  • An efficient framework used by British Petroleum's primary energy trading application.
  • Reduced time to market for new applications built using the framework.
  • A standardization of application architecture across a large company.

More details...

Highly Scalable, Internationalized Web Application - Dell Battery Replacement

Requiring a quick turnaround (3 months) and a HIGHLY scalable website (in 8 different languages), I helped DELL build a scalable, multi-lingual (internationalized) website to speed up the returns process.

The Challenge

  • Already Shipped Products: With affected batteries were already in use all over the globe - in over 40 countries - in every major continent  (Australia, Asia, Europe, South America, North America). The web application would have to support various languages as well as the different locales within a language (e.g. Canadian French, 'French' French, Taiwanese Chinese,Traditional Chinese).
  • Millions of items to recall: There were over a million affected laptop batteries  - the serial numbers of which would need to be verified across disparate databases.  An elegant solution requiring minimal database hits would be needed for handling the anticipated website traffic.
  • Laptops were in non-english speaking countries: The number of languages and locales to be supported could grow at any time. The solution needed to be flexible to support new languages - which may be discovered after deployment as well.

The Solution

Using the .NET runtime's globalization support, the first step was to isolate all resource strings, images and other UI elements that would be presented in the user's browser. These isolated 'language-specific' resources were compiled into individual satellite assemblies which were automatically loaded based on the language and locale detected in the user's browser. High performance, scalability and resilience were all key requirements - since the website was to receive hits from around the globe - (several hundred thousand hits per day). I helped design and implement a solution which included:

  • Application caching of large datasets - Serial numbers that were part of static lookups were loaded once into memory and kept there - to avoid unnecessary database roundtrips.
  • Server Farms - along with database based session management - to accommodate persistent sessions between different servers on the server farm.
  • Highly optimized web controls from Infragistics - offering sophisticated dynamic web controls for a better end-user experience.
  • Dynamic loading of individual language resources based on the user's chosen language and locale - with the flexibility to add more languages down the road.
  • Comprehensive unit tests written for each critical use case - fromverifying battery serial numbers to order placement.  Fully automated build process - encompassing entire web application including multiple language support - providing a perpetual ready-to-release option for the web application.

The Result 

  • An extremely successful production launch - which handled upto 100,000 hits hourly and upto 2000 simultaneous user sessions. 
  • An end-to-end user experience which was unmatched in both - user-friendliness as well as speed.
  • A solution which allowed additional languages to be added after the production launch - without any code changes! This helped DELL service other countries where they later discovered they had shipments of affected laptops (e.g. Brazil, Portugal).
  • An extremely successful returns program that served over a million affected laptop customers around the globe.

More details...

Corporate wide database migration

Moving from SQLServer to Oracle as part of a corporate wide strategy

Handling high transaction database, specific database objects, stored procedures

The challenge

  • Schema Object incompatibilities - Major incompatibilities between built-in schema objects in SQLServer and Oracle – including USERS, PRIMARY and FOREIGN keys, CONSTRAINTS, TABLES, STORED PROCEDURES, ROLES and PRIVILEGES.
  • Unicode characters migration - a key requirements - since existing data contained Kanji (Japanese) characters
  • Several million records (several GBs) of data would need to be migrated along with the schema objects
  • Database Drivers for code accessing database would need to be selected and optimized – OleDB providers, DataDirect, ODBC drivers for optimal, unicode data migration. 
  • Minimize production downtime during actual schema and data migration.

The Solution

  • Performing several trial migrations (using several tools including Oracle's Migration Workbench), ANUJ Technologies identified potential migration issues - including data type mismatches, schema object incompatibilities and database driver issues.
  • Based on results of the trial migrations, a two step phased migration was conducted - phase one involving just the schema objects in the various databases. This phase could work off the staging database and did not need to touch the production database (since the production schema was synchronized with the staging schema).  The second phase involved migrating the actual data from the production databases into the newly created Oracle instances. This step utilized an offline database transfer mode which had minimal impact on the existing production database load.

The Result

  • A comprehensive migration plan accommodating gigabytes worth of data as well as over a thousand schema objects. 
  •  A migration plan that minimized production database downtime.
  •  A standardization of database platforms across a large company.

More details...
 

Migration from Classic ASP to ASP.NET - Large Social Networking Website

A start-up faced with the 'good' type problem - an ever growing user base - called on Anuj to address their performance issues.

The Challenge

  • Bottlenecks in current ASP code and SQLServer database had brought the production site to a crawl.
  • The existing production code was extremely hard to maintain due to a mix of display elements and business logic in single ASP pages.
  • The existing production database was hard to maintain as it had never been correctly monitored since its default setup.

The Solution

  • 1) It was evident that significant cleanup was required at both the database level as well as the application code level.
  • 2) Starting with the SQLServer database, various bottlenecks were identified. These included - poorly designed queries, missing or incorrect indices, excessive memory usage and excessive disk usage causing high CPU Utilization.
  • 3) Transaction logs sizes were shrunk to manageable sizes, Each query was re-written, several new indices encompassing multiple columns were created. A maintenance plan encompassing re-building of fragmented indices, backing up and shrinking of large transaction logs was implemented.
  • 4) Code Cleanup - A lot of database access code was duplicated in various ASP files. These were all separated into a common data access layer - using efficient ADO.NET datasets and datatables.
  • 5) Common UI elements were identified and custom user controls were created. These common controls were then used across various web pages - allowing a significant performance improvement in page-load times.

The Result

  • Moved Varsity Media Group from a relatively slow performing community website to among the top 10 percentile (of all websites) – by identifying and cleaning up software related bottlenecks.
  • Provided a faster and cleaner web navigation experience for end users.
  • Increased monthly user subscriptions due to improved website performance.
  • Accomplished migration from ASP to ASP.NET without bringing down the production site.

More details...

Rich WinForms Client using SOAP based web services to enable full automation of insurance industry business workflows.

The Challenge

  • Insurance Brokers throughout the state of New York were maintaining all their business information on paper. Policies, Customer Data etc. were all paper-based - as were the processes used throughout the un-admitted insurance market.
  • Reporting: Getting detailed reports of sales (by year, month etc.), profit/loss, new accounts etc was a nightmare due to the paper-centric nature of the data.

The Solution

Anuj helped build a large .NET WinForms client application to enable insurance brokers to enter data (policy data, customer data etc.). This data (entered into an iSeries database), was then used to build sophisticated reports. In addition, various manual paper-based steps in the process were eliminated providing close to complete automation of the insurance workflow.

The Result

  • Automated several paper-based processes used throughout the un-admitted insurance market - including claim filing, claim processing, new customer creation, new policy creation etc.
  • Detailed Insight into Sales and Revenue Data: Provided detailed reports of sales (by year, month etc.), profit/loss, new accounts etc.

 

 

 
 More details
industries
Industries and Business Units that Anuj specializes in: 
  • Energy, Oil and Gas Trading:  Nominations and Scheduling of energy resources, Pipeline capacity management etc. See details...
  • Financial Markets  Equity Trading, Trading grids, trading systems, algorithms
  • Financial Services   Lease, Loans, Credit Bureaus, Credit Processing, Loan Applications etc. See details...
  • Retail, eCommerce, Returns Management: Please visit the clients section of this website or contact Anuj for more details.
  • Semiconductor
  • Please visit the clients section of this website or contact Anuj for more details.
  • British Petroleum Application Framework for Large Energy Trading Application: See Details...
  • DELL Worldwide Laptop Returns Management Application: See Details...
  • DELL Symphony Project (2003-2004): Customized Sales Application for DELL's business customers. See Details
  • DELL Financial Services - Lease and Loans Division (Jan 2002-Jan 2003):  See Details...
  • Harcourt Assessment (Pearson) Corporate-Wide Portal (2004-2005): See Details...
  • Tokyo Electron Database Migration Project (2004): See Details...
  • Renaissance Systems Inc./ELANY Insurance Application for the Un-Admitted Insurance Market (2006-2007): See Details...
  • Varsity Media Group - Social Networking Website Performance Tuning: (Feb 2006-April 2006) See Details...
  • Hoovers Online Customized Reporting Application (July 2005-Oct 2005):
  • Blue Titan/Momentum Software Web Services SOA Courseware Development (June 2005-July 2005):
  • Texas Association of School Boards eBoards (BoardBook) Project: (March 2003- April 2003):See Details...
  • Schlumberger - Drilling and Measurement - Automation of Parts Replacement for off-shore rigs (May 2001-Dec 2001):
  • Alistia Inc. Direct Marketing Application for matching list buyers and sellers (November 2000-May 2001):
  • INetProfit.com Information harvesting Web Application (Sep 2000-Nov 2000):