Table of Contents
Enterprise Application Integration and Service-Oriented Architecture provide very challenging and rewarding career opportunities. I feel that my adaptability and willingness to learn are valuable assets in the information technology workplace.
Position: Principal Engineer
MTN Customer Management and Retail Billing (CMRB): Prepaid Customer Manamgement. MTN South Africa is part of the MTN Group, a leading cellular telecommunications company in Africa.
The MTN SA CMRB programme aims to establish a set of industry standard systems to support retail billing and customer management operations.
The Prepaid Customer Management project formed part of the overall CMRB programme with the aim of delivering customer management functionalities to the MTN prepaid call centre using Siebel CRM as the primary call centre agent interface. Phase 1 of the project went live in September 2012. My role and responsibilities included the following:
Role: CMRB Service Factory Team Lead
Detailed technical design of integration services to support customer management requirements.
Development of XSD and WSDL documents to to establish the functional contracts of the required integration services.
Establish a framework and guiding principles for developing integration services using Oracle SOA Suite 126.96.36.199.
Establish a framework and guiding principles to employ Oracle Service Bus 188.8.131.52 as primary service proxy and mediation layer to expose and manage integration services.
Development of integration services and service proxies using Oracle SOA Suite and Oracle Service Bus 184.108.40.206
Assisted in the performance tuning of the implemented integration services and the Oracle SOA Suite platform.
Assisted in the initial production deployment and support of the integration solution.
Vodacom SOA Governance. Vodacom is a leading African communications group providing mobile communications and related services to 39.6 million customers as at 31 March 2009.
Vodacom South Africa initiated a project to establish an SOA Governance software infrastructure employing Oracle technology, specifically Oracle Enterprise Repository (OER) and Oracle Service Registry (OSR). My tasks included the following:
Installation and configuration of OER 220.127.116.11
Installation and configuration of OSR 18.104.22.168
Creation of various service taxonomies to be employed in OER and OSR to perform service classification.
Customisation of OER asset types to accommodate Vodacom specific classifications and meta data.
Bootstrapping of OER and OSR with services deployed to Oracle Service Bus. This task involved the configuration and use of the Oracle Enterprise Registry Repository Exchange Utility (orrxu) and the integration of OSR and OSB.
MTN Uganda. MTN Uganda are a subsidiary of the MTN Group, a multinational communications and network access company, operating in Uganda.
MTN Uganda embarked on an SOA initiative to integrate various systems as part of a (MTN) group wide initiative to standardise on certain technology platforms. The SOA solution is built using Oracle Fusion Middleware 22.214.171.124. My tasks included the following:
The implementation of a flexible and web services ready socket adapter solution to facilitate low level TCP socket integrations. The socket adapter is used to integrate with the IFS ERP solution.
RTT. RTT is South Africa's largest and most successful privately owned distribution company. For over 26 years it has been the dominant force in 3rd party logistics and distribution and a leader in break bulk and express distribution.
RTT embarked on a project to implement Oracle EBS Financials. A requirement existed to implement a number of integration scenarios to facilitate interaction between existing billing/trading applications and Oracle EBS using an SOA approach. My tasks included the following:
Installation and configuration of Oracle SOA Suite 126.96.36.199 and Oracle Service Bus 188.8.131.52 in development, QA and production environments.
Create an EAI focussed SOA reference architecture.
Design and implementation of Business Services based on RTT integration requirements to facilitate:
Creation of Accounts Receivable (customer) and Payable (supplier) Invoices in EBS. (OpenInvoiceService)
Outstanding Customer balance updates. (OpenInvoiceService)
Creation of Customer Master records in EBS. (CustomerService)
Creation of Customer Contact records in EBS. (CustomerService)
Creation of Supplier Master records in EBS. (SupplierService)
Design and implementation of an XML (XSD) data model based on RTT integration requirements.
Design and implementation of the following service integration scenarios:
Informix Database (JDBC) -> OpenInvoiceService -> Oracle EBS
Informix Database (JDBC) -> CustomerService -> Oracle EBS
Magic (FTP) -> OpenInvoiceService -> Oracle EBS
Magic (FTP) -> CustomerService -> Oracle EBS
Oracle EBS -> OpenInvoiceService -> Magic (FTP)
Establish version control repository (CVS).
Establish build environment to compile and deploy SOA solution.
Establish Wiki to host all SOA related documentation.
Oracle Fusion Middleware product family installation, configuration and support.
Instructor for the following Oracle courses/products:
Oracle SOA Suite 11g (Building composite applications).
Oracle WebLogic Server.
Oracle SOA Suite demos and POCs.
Oracle Service Bus demos and POCs.
Oracle Service Registry and Enterprise Repository demos and POCs.
SOA reference architecture workshops.
Formulate and author (SOA based) solution architectures and implementation approaches in response to customer RFx documents.
Position: Solutions Architect/Principal Consultant
MTN SOA Infrastructure. MTN South Africa is part of the MTN Group, a leading cellular telecommunications company in Africa. The aim of the project is to establish an SOA infrastructure. My tasks included the following:
The creation of service taxonomies, to be deployed to Oracle Enterprise Repository and Oracle Service Registry, for the following:
MTN Specific Service Types
MTN Specific Service Lifecycle
MTN Specific Service Owner
The development of various utility services including:
Logging Service: A simple service to expose logging functionality as a service. The core classes of this service can be viewed at http://javatoolbox.sourceforge.net/api/toolbox/services/util/logging/package-summary.html
Mail Service: A simple service to expose mail sending functionality as a service. The core classes of this service can be viewed at http://javatoolbox.sourceforge.net/api/toolbox/services/mail/simple/package-summary.html
The installation and configuration of the following Oracle SOA products:
Oracle Service Bus
Oracle Service Registry
Oracle Enterprise Repository
MTN Nigeria Service Enablement. MTN Nigeria is part of the MTN Group, Africa’s leading cellular telecommunications company. The project is aimed at service enabling the operation's back end systems to facilitate enterprise integration through SOA. My tasks included the following:
Design and development of an Adapter and Web Service front end for SCAP and SCAPv2 using Ericsson's charging SDK versions 1.0 and 2.0. The solution is deployed on Oracle WebLogic Server 9.2. The Web Service front end was developed using the JAX-WS specification.
Telkom SA Enterprise Integration Broker (EIB) stability. Telkom SA's EIB platform is the largest deployment of Oracle WebLogic Integration 8.1.6. The project was aimed at providing stability and predictability to the EIB operational environment.
Providing knowledge on best practices with regards to the use of:
Programming WebLogic JNDI
WebLogic JMS and Messaging Bridges
Established tools and procedures for performing detailed thread analysis on the WebLogic Integration environment when unresponsive application servers were observed.
Developed a scheduling framework to enable the EIB operational team to schedule common tasks, like archiving and database clean-up, that impacted negatively on system performance when neglected.
Developed a data loading facility and web application front end to enable the EIB operational team to load reference data, required for lookups and transformations, quickly and efficiently. The reference data is stored as Excel spreadsheets and required manual intervention. This process is now automated.
Provided a scripted framework to manage the Java Keystores that store the EIB environment's security certificates. The scripts automate the certificate request process.
Established a Wiki to enable the EIB operational team to document operational procedures and tools quickly and efficiently.
GSSC Portal The GSSC (Gauteng Shared Services Centre) project is aimed at providing an Enterprise Portal for GSSC employees, business partners and Gauteng citizens.
Design of enterprise applications based on J2EE and the JES (Java Enterprise System) platform:
Designed, developed and implemented a notification client API to interface to a SOAP enabled bulk SMS service.
Designed, developed and implemented an API, based on JNDI, to interface to LDAP directories.
Designed, developed and implemented RDBMS schema and API to manage common governmental information e.g Departmental, Local Government, Government Services, etc.
Child welfare tracking application: Designed RDBMS schema and web application.
Online Item Analysis Statement Application. Application to enable GPG beneficiaries to obtain detailed online financial statements: Designed RDBMS schema and web application.
Installation and configuration JES Portal Server.
Customise JES Portal Server JSP display templates.
Create and manage JES Portal Server display profiles.
Installation and configuration of JES Portal Server Secure Remote Access.
JES Access Manager implementation/admininstration.
Customisation of LDAP schema
Design and implementation of Access Manager services.
Web Policy Agent installation and deployment.
AfroAidsInfo Portal. Implemented Java Enterprise System (JES) Portal Server 6.2 at the MRC (Medical Research Council) for the AfroAidsInfo initiative. Tasks included:
Installed and configured JES Directory Server
Installed and configured JES Access Manager
Installed and configured JES Portal Server
Created JES Access Manager Services. This includes modifying the LDAP schema and authoring XML documents to add additional attribute support in the JES Access Manager.
Developed various customisations using the JES Access Manager Java API.
Customised JES Portal Server JSP templates
Created JES Portal Server display profiles.
Internal Sales Forecasting Application. Developed Java based web application for sales forecasting within African Legend Indigo. The application is deployed on the Sun JES Web Server 6.1. My tasks included: Design and implementation of RDBMS schema(Mysql 4.0); design, development and implementation of Java web application.
UTi NextGen. UTi Worldwide is a broadly based, information-focused supply chain management business. The project was aimed at migrating all UTi applications from Oracle Portal to TIBCO Active Enterprise and Active Exchange.
Developed TIBCO Adapter to interface with the Sun JES Directory Server 5.2. UTi required late binding to the LDAP directory that was not provided by TIBCO Adapter for LDAP. Adapter was developed using JNDI and TIBCO Rendezvous.
Developed TIBCO BusinessWorks 2.0 based Web service to expose LDAP functionality as a SOAP service.
Developed Java web application to do LDAP provisioning through TIBCO BusinessWorks based SOAP service.
Developed Java application framework to interrogate the UTi Supply Chain Visibility RDBMS. The framework interrogates the Oracle 9 RDBMS using JDBC.
Developed TIBCO Hawk 4.2.0 rule bases to monitor TIBCO Portal 4.1.5, Sun JES Directory 5.2 and Web 6.0 servers and Solaris operating system performance.
Oracle WebLogic and AquaLogic (formerly BEA) product family installation, configuration and support.
Oracle Service Bus (formerly BEA AquaLogic) demos and POCs.
Oracle Service Registry and Repository (formerly BEA AquaLogic) demos and POCs.
SOA reference architecture workshops.
ILOG JRules demos and POCs.
Sun JES (Java Enterprise System) Message Queue 3.x(JMS) installation and configuration.
Sun JES Integration Server 3.0 installation and configuration.
Pre-sales presentations and demos on EAI (Enterprise Application Integration) using Sun JES Integration Server and Sun JES Message Queue.
Installation and configuration of Sun JES Messaging Server (E-mail server) and Calendar Server.
Position: Software Engineer
Investec Securities Monitoring. International specialist banking group. This was a follow-on from the 2001 project. Goal of the project was to integrate a signboard and TIBCO Hawk 4.1.0 notifications.
Developed Java application to send messages to a Polycomp bi-line signboard over a serial connection. This application was integrated with the existing TIBCO Hawk infrastructure to display Hawk notifications on the signboard.
Eskom POC. Eskom is an electricity company supplying 95% of South Africa's power and 50% of Africa's power.
Developed small B2B Demo using TIBCO BusinessConnect.
Dimension Data GSOA (Global Services Operating Architecture).
Supported TIBCO MessageBroker 2.5 and TIBCO Adapter for Siebel 3.x.
Migrated all TIBCO MessageBroker 2.5 Transforms to TIBCO MessageBroker 4.1.x
Support, maintenance and new development in GSOA integration layer.
Accompanied GSOA rollout team to Singapore, London, New York and Sydney Australia for GSOA upgrades in all regions.
Position: Junior Software Engineer/Software Engineer
iTouch Content Integration. iTouch is a media company that provides information, entertainment and messaging services to mobile users. Goal of the project was to integrate all content feeds into a single content repository using TIBCO Active Enterprise products.
Developed Java abstraction layer for TIBCO Rendezvous API. Abstraction layer provided XML configuration and Java classes to rapidly develop Rendezvous enabled applications/adapters. Client seeked more cost efficient alternative to TIBCO SDK. The abstraction layer was later packaged and sold as the Cinbel Development Kit.
Developed Java adapters to interface with media content providers. Flat files, HTTP, RDBMS
Developed TIBCO MessageBroker 2.5 Transforms to perform Rendezvous message transformations.
Developed Java Servlets to present content in WML. XML and XSL was used to generate the WML content.
Accompanied deployment team to Australia (2 weeks) and Israel (1 month) for deployment of TIBCO based content solution.
HealthBridge Medical Switch. HealthBridge is the top provider of IT transaction services to the medical industry in South Africa. Goal of the project was to replace old switch with TIBCO Active Enterprise solution.
Developed Java Based TCP server to accept transaction requests for the medi-switch. Converted the TCP data into Rendezvous messages.
Developed Java based TCP client to interface with medi-switch service providers. Accepted Rendezvous messages as input.
Developed TIBCO MessageBroker 2.5 Transforms to transform Rendezvous messages.
Developed Transact SQL queries and procedures in MS SQL Server 7 and 2000 for persisting the information traversing the switch.
Investec Securities Monitoring. International specialist banking group. Goal of the project was to create a monitoring and notification infrastructure using TIBCO Hawk 4.1.0.
Developed TIBCO Hawk rule bases to monitor RDBMS availability and Operating System performance.
Developed TIBCO Hawk rule bases and micro-agents to monitor the timely population of RDBMS tables.
Developed command line Java application to send SMS notifications via an SMS server to mobile phones. Application was incorporated into rule base actions.
|Matric with Math and Science||1999||Harrismith High School|
|iPlanet Fundamentals||2003||Sun Educational Services|
|JES Access Manager Administration||2005||Sun Educational Services|
|ILOG JRules for Developers||2006||ILOG Education Services|
|BEA WebLogic Integration: Developing Integration Solutions||2007||BEA Education Services|
|Oracle Identity Management Field Training||2008||Oracle University|
|Oracle SOA Blackbelt Training||2011||Oracle|
|Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert||2011||Oracle/Pearson VUE|
I am the author and maintainer of the Java Toolbox Framework ( http://javatoolbox.sourceforge.net/). I started developing API's to further my own knowledge and understanding of commonly used design patterns and practices in Java. The Java Toolbox Framework evolved as a result of this.
The framework has been used successfully to develop and deliver projects and components to support project deliverables at the Gauteng Shared Services, Clover South Africa, RTT, Telkom, MTN South Africa and White River Mills.
Redhat and Centos Linux
Solaris 8, 9 and 10
Mac OS X 10.x
MS SQL Server
Apache Derby Database
Development,Version Control,Build Tools,Documentation Tools
Java: JAXP, JDBC, Servlet/JSP, JavaMail, JMS, TraX, COMM, Apache XmlBeans, JAX-RPC, JAX-WS, JAXB, iText, FreeMarker, JAMon, Apache HTTP Components
CVS, Subversion, Perforce, ClearCase, Rational Team Concert
Apache Ant, Apache Continuum, GNU Make
JavaDoc, Docbook XML, UMLGraph, MultiMarkdown,Wiki markup,SQL SchemaSpy
Perl, Awk and shell scripting.
Application Servers and Infrastructure Software
Apache Web Server
Apache Tomcat Servlet Container
Oracle WebLogic Server
JES Web Server
JES Application Server
JES Directory Server
JES Access Manager
JES Portal Server
JES Messaging and Calendar Server
Integration and SOA Products
TIBCO Portal Builder
Oracle WebLogic Integration
Oracle Service Bus
Oracle SOA Suite
Oracle Service Registry and Repository
Sun JES Message Queue
Sun JES Integration Server
Apache Axis1 and Axis2
Markup and Templating