Expertise

AREAS

  • Big Data industrialization and acceleration
  • NoSQL data store and accelerated ETL
  • Hadoop ecosystem: HBase, Hive, Pig, HDFS and Map/Reduce
  • Real-time BI and advanced analytics
  • Cloud computing taxonomy and ontology
  • Cloud engineering and reference architecture
  • Cloud strategy and adoption
  • Cloud maturity and assessment
  • Cloud lifecycle and unified process
  • SOA and business process modeling/management
  • SOA strategization and operationalization
  • SOA adoption and implementation in industry
  • IT roadmapping and mobilization
  • Portfolio rationalization and optimization
  • SDLC process and governance
  • eCommerce system architecting and methodology
  • Pervasive/Ubiquitous computing architecture and modeling
  • Business intelligence and knowledge engineering
  • Meta-architecture and meta-engineering mechanisms
  • Service-oriented architecture strategy and pragmatism
  • High-performance data caching and dynamic data management
  • Software, web, systems, service, platform, and cloud engineering
  • Semantic web technologies, patterns and frameworks
  • Autonomic/Grid/Cloud computing and server/storage virtualization
  • Web/Cloud Services security, reliability and maturity
  • Application framework and rapid design tools

INDUSTRY APPLICATION/RESEARCH PRACTICE (Partial Listing)

  • Designed a methodical cloud opportunity assessment tool for systematic adoption of Cloud computing in large organizations
  • Led off portfolio assessment and roadmap for compliance, risk, quality, and criteria LOB in a big credit rating company
  • Directed the formulation of an IT strategic plan for a state government for technology migration, process roles and responsibilities, and initiative prioritization
  • Developed the architecture planning, roadmapping, validation and verification for DoD and DoJ programs
  • Led the development of a strategic roadmap to rationalize the portfolio of check processing and cash management in the No.1 bank
  • Contributed to the development of an innovative cloud offering from ground up in the largest IT firm
  • Designed a cloud service taxonomy to classify service beyond the SaaS/PaaS/IaaS levels
  • Constructed a methodical approach for cloud computing solutioning in a lifecycle manner – end-to-end strategization, operationalization, and mobilization
  • Developed a hierarchical process model for IT product development – 5-level hierarchy with activities and roles
  • Designed an end-to-end strategy and operating plan for adaptive portfolio and product line engineering for IBM
  • Devised a methodical approach to SOA roadmapping for industry verticals
  • Constructed a taxonomy on SOA standards to guide analysis and adoption of relevant specifications
  • Established a service registration program and service governance process in the largest bank
  • Developed a service specification template for service identification, definition, implementation, and rollout
  • Constructed a service engineering approach and a service spectrum – procedural steps for service realization and management
  • Designed a holistic reference architecture model for project implementations
  • Defined an adoption strategy for enterprise service bus and XML gateway – federated structure and inter-communications
  • Led the development of SOA strategy framework and multi-generation plan – work tracks and phased buildout
  • Designed a holistic approach to SOA from a practitioner’s perspective – pragmatic method for real-world execution
  • Advised the design of a data caching solution in a client information system – broaden the narrow-sighted proposal to fit the bigger needs
  • Directed the design of composable architecture and rule-driven user interface for Basel Risk project.
  • Constructed an architecture reengineering & technology strategy (ARTS) model for overarching technology management program.
  • Investigated the interoperability of key WS-Security implementations by running a hands-on POC.
  • Architected an intelligent knowledge management system for phased roll-out to minimize the initiative CapEx and reusing hardware purchased.
  • Directed a portfolio analysis and rationalization of check image capture domain architecture.
  • Established an application architecture process for the IT Operating Model.
  • Designed a comprehensive IT solution architecting mechanism.
  • Defined a pragmatic approach to domain-based architecture engineering and pattern-based application engineering process (CARE framework).
  • Advised project development teams on architecture design, modeling methodology, tools, standards, and product mappings.
  • Initiated and led proof-of-concept and proof-of-technology evaluations of emerging technologies, such as Ajax, portal, web application framework, and web services security.
  • Created/Critiqued various enterprise architecture standards and strategy documents.
  • Oversaw applications in portfolios to guide strategic technical directions and technology selections.
  • Established a comprehensive architecture certification process model and ran monthly architecture review meetings.
  • Designed Rapid Architecting Process (RAP) framework to guide the architecture design work in project.
  • Developed Pragmatic Architecture Certification Kit (PACK) for consistent documentation and architecture review board.
  • Created a 3-D pyramid Technology & Information Platform (TIP) model for systematic segmentation of IT concerns in solution development lifecycle.
  • Evaluated risk data strategy and repository model (large-scale data warehouse and business intelligence) for enterprise-wide data platform.
  • Contributed to a rigorous assessment of risk data repository platform selection via RFP and scorecards.
  • Rearchitected the technical model for inbound/outbound messaging services for next-generation email/IM/pager/fax communications.
  • Initiated a pattern-based development process and categorized banking applications into various application patterns for business process reengineering and architecting.
  • Created a hybrid methodology to design a logical service model, and construct a service-oriented architecture for the Internet channel for phased migration to SOA.
  • Evaluated the commercial off-the-shelf (COTS) and open source tools for lifecycle application development and established a toolset standard for a LOB IT.
  • Conducted an in-depth investigation of high-performance data caching technology, and recommended strategies and techniques for online banking applications.
  • Comprehensively compared predominant web application frameworks and made recommendations of the applicability, feasibility and usage guidance for near term and long term.
  • Converted a J2EE application to a web service using JAX-RPC and JAX-M for service invocations, WSDL for service description, and UDDI for registration.
  • Designed a message delivery engine in J2EE model with perimeter authentication SSO, rule-based decisioning, XSL rendering, JMS message queue input, and JDO/ODMG data layer.
  • Developed a customer profile system in application server using wizard-mode browser page flow, object-oriented navigation control, XSL presentation, servlet-based framework, and J2EE deployment.
  • Devised a dynamic pooling mechanism for various resource pooling like thread, DB connections, and https connections.
  • Initiated a customer portal front-end to consolidate information from different data channels with look-and-feel customization.
  • Formulated an eService platform based on open source technologies.
  • Created an object-oriented design pattern in replace of a structurally-designed module in a loan application. Developed several tools to automatically generate subclass code and interface stubs, and convert the original function-call code for new data mappings. This framework cuts at least 75% development time for implementation and leads to little chance of potential bugs and faulty coding. A much greater exception handling was built in the superclass, to make the application more resilient and fault-tolerant. (Abstract class, pure virtual function, Java interface, recursive file/directory management, and polymorphism).
  • Built a singleton log tool for generic logging of any Java classes, which is particularly useful for servlet debugging (similar to aspect-oriented programming).
  • Developed a C/C++ API wrapper to invoke a paging class on HP_UX platform. (Java, URL class, C library and HTTP).
  • Designed a session tracking algorithm for web-front application to overcome the statelessness shortcoming of HTTP protocol. (Java servlet, and HttpSession class).
  • Constructed a scheduler application that automatically kicks off an application at a preset interval. To avoid potential deadlocks, the program does auto cleanup in case the previously launched application was suspended. The scheduler may be used as a task manager, reminder, daemon process, etc. (Java multi-threading).
  • Built a robot application that periodically checks log files on dozens of servers to detect events of a particular interest. The program was extended to examine the change of any web page on the net, and may be used to, for instance, automatically check if new issues of online magazines are posted, or watch the stock price changes. (Java thread, file attributes, HTTP protocol command, and servlet).
  • Developed a generic routine to automatically check the heap stack and detect memory leaks caused by malloc or new in C/C++ programs. (C++ and Win32 API).
  • Designed a monitor alarm server that provides paging, email and NT popup messenger services. The server runs in either reactive mode where it listens for event notifications through standard HTTP protocol, or proactive mode where it at preset intervals checks every CITRIX server to detect possible events happened. All notifications are automatically logged in a standard XML data format. A web-based admin front-end is provided for system administrators to easily make changes and review the notification history. An additional multithreading module was developed to guarantee the delivery of notification message. (Java, JavaMail, servlet, Windows messaging service, DOM and SAX).
  • Constructed a log analyzer with a graphical user interface, which parses the application log records and converts the binary data into a hierarchy structure for easy viewing. A source code viewer was designed to link the source code file to the code section of the error log, which helps quickly narrow down the root cause. (Java Swing, JTree, Collection and sorting).
  • Developed a Java application for database conversion and table loading between releases (JDBC, thin driver, SQLJ, PL/SQL, Oracle functions like rtrim() and to_date()).
  • Designed a program that builds the initialization files from CIM configuration files for CIMPL processing. (VC++, DLL and API).
  • Initiated and designed a utility program to automatically generate CIM configuration files from COBOL copybooks, to eliminate error-prone and time-consuming manual conversion (XML parser, Java inner class, and recursive programming).
  • Built a network management application including a web server program, agent, and dynamic HTML classes. (HTTP communication, Java Management API, JavaBeans, Java RMI, JDBC, Java Native Interface, JavaMail, servlet, JFC/Swing, multithreading, Jar, Citrix SDK API, and C++/Java data conversion).
  • Performed technical research on business rule automation (Java rule engine, application server, EJB, and distributed computing architecture).
  • Designed a multi-document editing application for Microsoft Office Suite (Word, Excel and PowerPoint). Developed a unique-name generation algorithm and macros for auto-arrangement of MDI document view (Wind32 API, DLL design, Windows Hook, NT Services, Registry, and document read-only mode setup).
  • Conducted advanced research on data transfer between C++ and Java applications across network (Java Virtual Machine instantiation, JNI direct call from C++ to Java, CORBA, Inprise VisiBroker for Java/C++, XML, Serializable interface, AWT data transfer, and Java drag & drop).
  • Reverse-engineered an ODBC application that selectively extracts a subset of data from an Oracle database and replicates it to a new database, for creation of test data set from the production data. Constructed Java programs to filter the posted records via JDBC to minimize the duplicate record loading, and analyze the class relationships in C++ source codes to automatically generate the analysis documents in HTML format.
  • Developed a remote test module application for a heterogeneous system to issue test requests to and receive test results back from a nationwide telephone line test system installed in Indonesia (client/server, TCP/IP network communications, data streaming, tunneling, and embedded SQL database access programming).
  • Originated a brand-new GUI-based PC Client application, enabling users to launch phone-line tests and queries from Window 95/NT to a Unix host, and a web application with a universal QA interface (Winsock, Win32 API, ActiveX control, HTTP, HTML interactive form, Unix sockets, and multi-tier distributed computing architecture).
  • Built a Universal Access testing application for policy-driven load balancing and disaster recovery. (C/C++ and socket programming).
  • Designed and implemented a data load utility that allows customers to load bulk records of telephone circuit and customer information into a production database with a friendly user interface for online modification and reloading. Wrote the user’s guide and design specification, and conducted training workshops. (C/C++, ESQL/PROC embedded SQL, socket, and screen map).
  • Initiated a prototype design of a telephony interactive voice response system on NT/Unix (VC++, Win32 API, Winsock, TAPI/JTAPI and Dialogic products).
  • Strategized to integrate the various foreign data-exchange access methods into a unified interface protocol, and make the system open by adopting the industry standards like CORBA.
  • Re-engineered modules/subsystems of a large-scale telephony testing application.
  • Managed the installation, configuration, maintenance, training, and trouble-shooting of a voice-response unit (VRU) application with IBM DirectTalk.
  • Performed sustaining work, system admin and technical trouble-shooting of a telephony testing system.
  • Managed HP HP-UX and IBM AIX system hardware and software installation/setup, upgrade, conversion, maintenance and system administration (OS, modem, terminal server, TTY config, and other SCSI peripherals).
  • Installed and programmed Oracle/Informix DBMS server and PROC/ESQL compiler.
  • Devised a GUI front end to an originally character-based Unix application.
  • Designed applications for a large-scale fund-raising database system using embedded SQL in COBOL (reports, user interface, triggered procedures for auto input correction and pop-up listing for input).
  • Developed various data-centric applications, e.g. a health insurance claim processing system using Oracle DBMS.
  • Built an algorithm to analyze the transaction history to automatically detect conflicts in database transaction processing. (C/C++)
  • Constructed a physical structure for database internal storage (B+ tree).
  • Developed a GUI scheduling application for student course registration. (OO design).
  • Designed object-oriented simulations of a computer printing job queue and banking service workload (C++ event-driven technique).
  • Built a pre-processor utility that automatically removes the debugging statements in C source code after the program is tested and completed.
  • Developed a virtual reality model for fabric behavior simulation in OpenGL.
  • Designed an automatic email checker, an automatic email notification application, and a weather condition ticker application linked with a web page (prescheduled automatic updates).
  • Constructed various advanced data structures and algorithms for performance enhancements and optimization.
  • Created a new ART2 algorithm enabling supervised learning and real-time dynamic self-adjustment in neural-network pattern recognition.
  • Built a simple-grammar computer language compiler and parser for source code parsing, code-level quality inspection, and preprocessing.
  • Enhanced the Linux kernel system calls — improved disk and CPU scheduling, and caching for customized tasks and loads.
  • Developed client/server networking applications on Unix and Windows 95/NT (Java RMI, EJB, CORBA IDL & ORB, asynchronous communication via MQSeries and MSMQ, and IPC programming — named pipe, message queue and shared memory).
  • Designed animation in C++ and Java.
  • Built windows service applications, e.g. FTP daemon, and SMTP server. (VB, VC, VJ++ & VisualAge Java).
  • Constructed an encryption application to secure single or batch files, using ActiveX controls and later migrated to Java, for data protection for storage on unsecure public space.
  • Developed InterTalk application for two users to converse over Internet (pre-Instant Messaging era product for dial-up Internet connections via modems).
  • Designed web-based community forum applications (ground-breaking group scheduling applications and interactive query applications for online group activities).
  • Built a HTTP server and customized web browser to be embedded in business applications for tighter control on contents and navigation. (Java, HTTP, and socket).
  • Developed a math card game (24POINT) and interactive web-based brainteaser games, e.g. MatchStick. (Machine self-learning, recursive exhaustive depth-first search, and web-based interface).
  • Designed a software metrics tool in Java (source code quality analysis and evaluation for sizing and productivity measures).
  • Constructed a utility for recursive file context replacement for automated data change in all web pages on a large website.
  • Built a Windows screen saver program for team logo presentation.
  • Developed an email delivery service with customizable “from” address for marketing campaigns. (JavaMail).
  • Designed a file compression utility. (Java, GNUZip format).
  • Created an algorithm to sort integer numbers in a sequence so that the sum of any two neighbor numbers is a perfect square. (Recursive function implementation in Java and breadth-first search).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s