Catamaran Corporation (Milton, Ontario 2014)

Participate in building the great RxMAX health solutions.

Smooth Sailing ...

  Just Energy (Mississauga, Ontario 2005 - 2014)

Participate in design, development and maintenance of the company's core systems that serve all major business functions. Centralized around heavy-duty database servers, the functionalities are built with a plethora of web services, satellite applications and stored procedures, connecting operators, vendors and customers. Dynamically driven by scheduled jobs, events and user interactions, the integrated systems automate daily operations from enrollment, to usage, to billing, to retention, to service, across all parties. Here are some technical highlights:

  • Sales Channel Generic Web Service This service is designed as a gateway for customer enrollment and customer retention. It delivers potential lead and/or product data to Vendors, i.e. Call Centers, Agents with iPads alike, and process dispositions. Modeled after the original Xml-RPC of UserLand who pioneered the technology that eventually evolved into web service. A single generic method takes only 2 simple xml strings as parameters, RequestType and RequestData. The lowest common denominator assures the compatibility with different Vendors of hybrid platforms and diversified technologies. The request type and version info in the first parameter determine if the companion request data is needed. Their combination determines the data schema to be used for deserialization and the version of processors to be dynamically loaded for processing. A cache and relay mechanism is so designed that each server of the server farm can handle up to 50 requests per second. Any subscribers of existing version will still work until they adapt to the new version to use the new functionalities. Action Matrix pattern is implemented to use a combination of dispositioned factors to assign and dispatch actions for a given request in either random or a desired order. Customer records in the form of digitally signed contract images, sounding recordings, are imported, migrated and attached to the newly generated contracts.

  • Credit Checker Dual processing protocols, automatic or manual, are designed to check customer credit score via web requests to Equifax. A fuzzy logic is implemented to clean up customer address info that dramatically increased the matching rate. The pattern recognition is used to retrieve credit info from the response so no changes are needed while the Equifax proprietary response format is ever changing. A decision cubic is designed to recommend a given customer's current credit state.

  • Market Integrator System A unified xml schema is drafted to communicate generic request info between Integrator and central Data Stores. The request info is then further enriched, filtered and then translated into different file formats, text, xml, EDI, etc. It is then transferred to and from Energy Providers based on different transport protocols, communicating functionalities such as enrol/drop, consumption, billing, etc. By interfacing with EdiDev.com FREDI component via low level memory sharing, the processing max load has enhanced from < 3M to > 100M.

  • Billing and Settlement System Customer contracts and their states are maintained in large data stores. Billing is handled through calculate tariff based on product selected and monthly consumption. It facilitates bill generation, reconciliation and/or cancellation. The running balance is further categorized and general ledger distributed to different virtual accounts. Reports are generated thereafter. Extensive batching, slicing and indexing techniques are used to enhance performance.

  • Statement of Account Print Vendor Manager An automatic process is designed to collect and transfer transaction and billing info to third party printer vendor through complex xml package. This makes it possible for the vendor to draft a pixel accurate Statement of Account (SOA). Samples are then downloaded and matched to the original SOA item. Upon JE approval, a Release message is sent to Doculink, SOAs are printed out, sorted and mailed to customers. The SOA images are matched back to SOAs for archiving and investigation purpose, completing the whole printing cycle.

  • Tiered Fee Collector The system is designed to control the collection process of over-due outstanding balances using third party collection agencies. A decision cubic engine is developed to manage the different facets of collection processes: initiate, hold, drop and close. Based on preset criteria, several tiers of collection is determined. Corresponding info is transferred to the given tier agency, directing the work flow.

  • Customer Service Information System To this application designed for internal call center deal with customer service issues. Customer info is retrieved from different systems to enhance communication efficiency. New feature is added to provide CSR with data upon a click of button on iPad from the field. It saves CSR from typing and eliminates errors on the way. At the time of customer complaints and drop-out, dynamic offers are generated on the fly to retain customers. The new feature has led to a significant increase in customer retention rate and satisfaction.

  • Historical Usage Processing and Usage Forecasting All customer consumption data is mathematically analyzed against weather data. Regression model is built to forecast future usage expectations, helping to more accurately place option orders in energy market.

  • Campaign Management System The system is designed as a general purpose program facilitating customer retention. Toward the contract renewal dates, campaigns are created. Based on preset selection criteria, campaign contracts are created. The data are exported for agents to attempt retaining customers. Upon acceptance, the correspondences are imported. Corresponding renewal contracts are created in the source system.

  • Street Smart Project A scheduled job will generate a large batch of LocationInfoList of the existing JE customers. The information is grouped by account and address spot. Upon geo coding as altitude and longitude, an agent can now see a smart and dynamic map tied to his/her iPad GPS, at the proximity, of the existing customers, accounts, contacts, do not solicit info, recent activities, etc. It facilitates the sales, including cross-sell opportunities through intelligent decision making, and reduces complaints by respecting DNS in an informed manner. Due to high system resource usage to plough through millions of records, the project is designed with parallel computing capability and data caching technology, optimized to speed up processing from 200 hours to 3 hours on a 12 core server.

  • Demand and Response Pilot Program Web requests are used to communicate JSON messages back and forth, triggering an extraordinary weather based event. The thermometer of a contracted customer can be adjusted slightly higher, which in turn controls the cooling/heating devices, to avoid peak hour price spike. This process results in costing savings and leads to sharing of this saving among both customer and JE.

  • Marketing Portal More readable alphanumeric PIN is mapped to internal identifiers. Upon communicating to potential customers via different media as promotions. The interested party can then proactively respond to JE's existing sales channels.

  • Universal Web Service Caller This caller provides a common tunnel for calling any web services from any stored procedures on any type and version of databases. On a CLR enabled MS SQL database, create an assembly with a single SP. It calls out to an extremely light-weight proxy web service. The decoupling enable the proxy service entitled to full dot net framework functions like xml and uddi that is unavailable in CLR subset. Upon querying Uddi for endpoints, a target web service is called with pass-on parameters by this proxy. Any databases that can establish a linked server to this CLRHelp database can make two-way web service calls. Even for CLR enabled databases, this caller can also simplify the deployment as only this one assembly needs to be deployed once and for all. It is extensively used company-wise.

  • Data Warehousing Real time data from different market sources are extracted, categorized and summarized as a new data repository for reporting, analytics and ad hoc querying. When used in projects covering wide range of data from different heterogeneous sources, such as Street Smart Project, Campaign Management System, the consolidation not only dramatically increases process performance, at times also makes missions impossible possible for its centralized data access.

  • ... ...

  •   Ark e-Tail Services Inc. (Toronto, Ontario 2003 - 2005)

  • Appointment Booking System The front end C# desktop application talks to dot.net web services based on SOAP architecture. Users can get real time information on slot availability and are able to book single/multiple slots within a preset date range.

  • Bank Inbound-Call Processing Suite The integrated systems automate FTP leads download/upload, GPG encryption/decryption, data import/export, dynamic screen generation and user input manipulation. Built in C#, the platform includes scheduled daily events through console applications, asp.net web services across multiple web servers and extensive COM+ libraries.

  • Campaign Management System Based on Asp/MS SQL Server, the creation of campaigns makes extensive use of XML/XSLT transformation. With JavaScript and COM objects generating dynamic multi-division screens and composing standard XML feedback at front end per communication with back end portal. This later known as AJAX technology produces near instant responsiveness that is crucial for call center agents.

  • Network Administration Maintenance of server farms integrated with clustered Database Server, Exchange Server and Web Servers.

  • Process Automation Automation of report generation, data upload and script update with VBA, .NET and Java open source tools.

  • LAMP (Linux/Apache/MySQL/PHP) Maintenance of a web application for credit card activation and order taking system.

  •   Diginara Corp. (Toronto, Ontario 2002 - 2003)

  • Warehouse Shipping System Participation in design of a large order shipping platform. It integrates SQL server back end, ActiveX control/agent based business layer and browser/palm wireless/barcode scanner multiplex clients, with a central administration portal. For each assembly line starting from order barcode scanning, workers can insert goods, print invoice label, and tape pre-sorted and coded postage label in 5 seconds. The package is then ready to be scanned and shipped directly to postal sub stations.

  • TEC Label Network Print Server Development of MTS network print server. Impersonated ActiveX control manages TEC label printers on client machines. Central server parses and processes client requests, then print labels to the originating machine.

  • Palm Wireless/Barcode Scanner Implementation of webclient for Symbol palm wireless interface. The STI tag driven palm sets provide wireless device the access to server functionalities, including receiving, printing, waybilling etc.

  • System Integration Design of address verification web service based on winsock communication with StreetSweeper third party components. Non-standard mailing addresses are corrected on the fly so as to facilitate the delivery of postal packages.

  •   Softek/Nucleus Financial Network, Inc. (Mississauga, Ontario 2001)

  • Financial Stock Trading/Analyzing Systems Participation in design, implementation and maintenance of stock price change driven, SQL database backed, ActiveX control enhanced broker services. Development and assistance in development of front-end controls based on real-time Winsock and INet communications to and fro back-end transaction engines. Implementation of direct API based FTP protocol for faster file transfer.

  • Security Architecture Design and implementation of encryption DLL library providing dual interfaces for both VB and VC clients. Implementation of 128 bit VeriSign security.

  •   Antek Systems, Inc. (Mississauga, Ontario 2001)

  • File Management Task Automation Develop VB controller module to systematically deliver console scripts to serialize and automate tasks across Datagrabber and Alchemy packages, aimed at coordinating paper form data retrieval, storage and management in large quantities.

  •   ePod, Inc. (Toronto, Ontario 2000)

  • Multimedia Advertising System Participation in development and optimization of MTS components for multimedia content delivery and dual iFrame/Java Applet display. And fine-tuning SQL compound indexes that leads up to average 10 times increase in performance.

  • Shopping Cart Service Enhancement of a n-tier shopping cart.

  •   Axia Solutions, Inc./Agri Corp. (Waterloo, Ontario 2000)

  • Insurance Management Web Services Participate in development of insurance management system for Ontario Agricultural Industry. The project utilizes webclass front end, ActiveX business object middle tier and Oracle backend, together with Crystal report.

  •   Pride In Personnel (Toronto, Ontario 2000)

  • Human Resource Management System Total redesign of dynamic recruiter split-placement network. The MS SQL server database driven asp based web service distinguishes itself with advanced algorithm such as fuzzy logic and pattern recognition. It results in superior simplicity and usability.

  •   Choice (Medical) Systems, Inc. (Louisville, Kentucky 1999)

  • Cross Table Reference System The project uses MS SQL server as backend and VB application as front end, cross-referencing Fox Pro database. ADO, stored procedure and MTS are used for record management.

  • Q & A Tracking System Provided in both intranet and internet versions, intranet version uses MS Access as backend and VB front end through ADO connection. Internet version uses dynamic HTML and Asp technologies on IIS 4.0 and NT server. Two versions synchronize seamlessly with minimized database locking.

  • Materials Management System Design and implementation of an integrated Crystal Report module (reports + control program). The module covers Bar Code Processing, Purchasing/Receiving, Transfer Journal, Requisition and Vendor Information. More than 100 reports have been designed and centrally controlled by a VB module featuring multi-level search and sort capability using RDO access.

  • Purchasing Systems and EDI Communicator Systems Participation in design and implementation of a client/server based multi-protocol communicator program. Protocols include EDI, FTP, Email, Fax and Scheduled Messaging/Execution.

  •   University of Louisville (Louisville, Kentucky 1992 - 1998)

  • Computer/Instrument Interfacing & Data Processing A controller program designed with a proprietary language, including machine level command, is used to interface PC with infra-red spectrometer. It dynamically controls the data sampling process in situ. The spectra are further analyzed with various mathematical transformations. The combined effect gives rise to a level that absorbance changes of 10--4 (A) scale can be observed against strong CO2, H2O and montmorillonite background noise. Natural formation of conductive polypyrrole chain to and by catalytic centers in between clay layers is revealed for the first time, plus other subtle properties.

  • Molecular Modeling & Molecular Scaffold Design Extensive molecular modeling and data processing are performed on Silicon Graphics. Up to giga byte amount of data has been manipulated through ab-initio and energy surface calculation. The molecular scaffold of the model compounds is based on a new concept called macrotorial, born to macrocycle of chemistry and combinatorial of mathematics, at this internationally renowned peptide research laboratory of Derby city. The predictions have produced a few series of potential drug leads for Eli Lilly, Mayo Clinic and so on. One group synthesized according to the blue print, in particular, has demonstrated more than 1000-fold increase in potency as compared to any known prototypes published to date. >>>

  •   Selected Copyrights

  • Archiva Reference Management System with Integrated Thesis Processing for Microsoft Windows.
         Library of Congress (United States), TXu000916023 (1999)

  • aminoXpress (formerly AminoExpress) Multifunctional Biochemistry Software Package for Microsoft Windows.
         Library of Congress (United States), TXu000712392 (1995)

  • *It was also published as a web platform until Microsoft phased out embedded activeX technology. At its peak aminoXpress platform was once used by more than 600 research labs across 50 countries and areas.

      Selected Early Publications Re. Simulation

  • Construction And Performance Of Probe-Type Cells Connected In A Series Assembly
         Talanta, 39(8):1051-1055 (1992)

  • The Effect Of pH On A Multiprotonatable Quinidine Ion Selective Electrode
         Talanta, 38(11):1291-1296 (1991)

         * Talanta is "The International Journal of Pure and Applied Analytical Chemistry" published by Elsevier.

  • Selectivity Of Drug Ion Selective Electrodes With Hetero-poly Anion Site Toward Metal Ions
         Science (China, Series B) English Edition, 33(5):562-571 (1990)
         Science (China, Series B) Chinese Edition, (7):736-743 (1989)

         * This paper, published on China's No.1 scientific journal of all fields, features the first computer simulated 3D mesh plot from a series of multi-variants correlation analysis as referenced in the prelude.



  • Simulated correlation surfaces among response slope, selectivity and pH, generated by a program developed with BASIC on IBM-PC(XT) in mid 80s. This set of figures from thesis (Hunan University 1987) is published on: Acta Chimica Sinica 49(7):700-705 (1991)