IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
PROFESSIONAL HIGHLIGHTS
Strong object oriented analysis, design and software development skills
Experience with full SDLC, Software Development Lifecycle
• In depth skill in providing solutions using Java and J2EE technologies
• Comprehensive experience in Java Batch based Enterprise architecture, design and
development
Excellent defect analysis and Production support experience
Ability to perform very effectively as part of a team or independently
Business domain knowledge in telecommunications billing
Great disposition to learning and applying new technologies
TECHNICAL SKILLS
Application Tools: IBM Rational Rose, CVS, Subversion, IBM Rational ClearCase/ClearQuest,
AllFusion Harvest, BMC Control M Enterprise Manager, Syncsort, CruiseControl, jManage,
soapUI, SQL Loader, SOA Service Manager, SOA Repository Manager, Mercury Quality Centre,
Amdocs Extract tool, Toad.
Development Environments: Eclipse, Netbeans, Oracle JDeveloper
Operating Systems: Windows, UNIX AIX/Solaris/Linux
Application Servers: Weblogic, Apache HTTP Server, Apache Tomcat, Jetty
Database: Oracle, MySQL
Programming Languages: Java, C++
Technologies/Frameworks: J2SE, J2EE, Design patterns, Java Server Pages (JSP), Java Servlet,
Java Server Faces (JSF), EJB, JMS, Spring, Struts, Stripes, Spring MVC, PL/SQL, JDBC,
Hibernate, iBatis, Ant, Maven, JavaScript, JSON, JAXB, jQuery, Ajax, LDAP, Vaadin, Icefaces,
Web services, Axis, SOA, UML, XML, XLS/XSLT, XPath, xQuery, SOAP, CSS, JUnit, HttpUnit,
Cactus, Unix shell scripting
1
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
PROFESSIONAL EXPERIENCE
TELUS Communications
January 2007 – April 2013
Contract Java Developer
Projects undertaken:
Kenan Gateway for GENS (Government Enterprise Network Services) Project
May 2012 April 2013
Kenan Gateway was conceived to meet the need to manage large volume of service data required by
TELUS to bill for GENS products and services in Kenan billing system. It provides a gateway
through which GENS service data from BMC’s ITSM Configuration Management Database
(CMDB) is validated to ensure data integrity and accuracy before onward load to Kenan for billing
and Cognos for reporting. My accomplishments include:
• Designed Java applications to implement batch processes that enable data
extraction from ITSM CMDB and upload into Kenan.
• Designed and executed batch processes to create and retrieve Cognos reports using
Cognos SDK.
• Implemented batch process to upload the reports Documentum.
• Designed and developed Control M batch jobs to schedule and automate execution
of the batch processes.
• Performed end to end testing across DEV, AT, PT and Staging environments.
• Wrote design and operational documentation.
Technologies/tools used: Java/J2EE, UNIX shell scripting, BMC Control M, SQL, log4j, Maven,
iBatis, Spring, Oracle database, XML.
One Bill (Shaw) Project
June 2011 April 2012
TELUS wanted to offer its customers the ability to request a single bill for their mobile and wireline
services (landline, cable, and internet). To achieve this TELUS needed a system that would not only
2
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
consolidate customer information from all these services, but that would relay this information to its
customer service representatives quickly and seamlessly, to allow them confirm the service while
still on the phone with the customer. To consolidate its customers across its wireless and wireline
billing systems I, along with a team of three developers:
• Interacted with the clients to gather business requirements
• Developed web services to:
Validate and format customer billing address for bill presentment
o
Consolidate billing name/address and bill cycles across wireline Amdocs
o
Enabler and wireless Amdocs Knowbility (Ensemble) billing systems.
Add bundle discount to qualified consolidated customers
o
• Modelled business processes using OSB proxies and business services.
• Exposed the webservices to the Enterprise Service Bus using Oracle OSB.
• Customized the OSB services for deployment to AT, PT and Staging environments
• Set up and configured Weblogic JMS modules for asynchronous messaging
• Deployed the web services onto Weblogic Server
• Deployed the ESB services to Oracle OSB server
• Tested the ESB and web services using soapUI and Service Manager
Technologies/Tools used: J2EE, JUnit, SOA, SOAP, XML, XPath, XLS/XSLT, xQuery,
ESB/OSB/ALSB, JAX WS, Axis, Spring, log4j, iBatis, JMS, JAXB, LDAP, PL/SQL, EJB, Maven,
Oracle weblogic, Oracle database, nCode webservices.
SNAPP
June 2009 – September 2011
This is a lightweight, small footprint web application that provides a single, convergent view of a
customer’s billing information allowing Production support and QA teams the ability to quickly
respond to billing related problems. I designed, developed and maintained the application using
Vaadin framework and executed it inside an embedded Jetty server.
Technologies/Tools used: J2EE, JUnit, Vaadin, Icefaces, Jetty, log4j, SQL, CSS, H2 database, JDBC,
Oracle database, XML
Project Imagine
January 2007 – June 2011
3
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
Project Imagine is a TELUS initiative to redesign its systems and processes to enhance its
operations and profitability within the Telecommunications consumer market. Part of this
transformational change included the upgrade of its Billing system to Amdocs Enabler. Being a
huge project that spanned over 5 years I was involved as a Java developer and Production support
lead for a couple of sub projects/applications.
Financial Gateway (FGW)
Amdocs Enabler out of the box General Ledger (GL) implementation failed to meet
TELUS’ journaling needs so Financial Gateway was created to fill the gap. Financial
Gateway provides a common gateway through which Amdocs Enabler billing/Accounts
Receivable (AR) records can be transformed and summarized for classification and posting
to SAP.
• Provided impact assessment of proposed code changes and fixes to defects
• Worked closely with Business primes to elicit business requirements
• Engaged in build and continuous integration management
• Implemented new change requests, (CR) to support new application
features
• Maintained and extended the rule engine to capture complex business
rules required to transform and summarize billing extracts from Amdocs Enabler
• Conducted defect root cause analysis and recommended solutions
• Participated in defect triage and change management meetings
• Designed and implemented batch workflows using Control M job
definitions
• Created and extended Control M batch jobs as part of EOD (End of Day)
map
• Designed and developed Control M batch jobs and scheduled them to run
automatically as part of EOD/EOC (End of Cycle) job map
• Fixed code defects and provided Production support
• Performed end to end system tests
Technologies/tools used: J2EE, JUnit, Syncsort, UNIX shell scripting, Control M, PL/SQL,
SQL Loader, log4j, Amdocs Extract tool, Maven, iBatis, Spring, Oracle database, XML.
HSIA Usage Rating
4
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
This project’s objective was to track high speed internet access (HSIA) over usage on
TELUS network and allow TELUS to bill clients for over usage as well as make informed
decisions to address network capacity issues.
My responsibility was to build a batch application that will run daily to retrieve customer
and product information from billing operational databases and identify and report billing
accounts that have reached their usage limit. To accomplish that I:
• Retrieved billing account information from customer database
• Retrieved high speed internet product information via EJB
• Merged product and billing account information to retrieve data relevant to
the application
• Developed, tested and scheduled the application as a batch job that runs
daily as part of a job map
• Provided production support – through defect analysis and resolution
after the project went live
Technologies used: J2EE, JUnit, Syncsort, Maven, UNIX shell scripting, Control M, iBatis,
Spring, log4j, Oracle database, XML and EJB.
Financial Gateway Error Management
Errors encountered while transforming billing records in Financial Gateway’s RuleEngine,
prior to Imagine project phase 2, were written to file and required manual modification to
fix and re process. This manual process was error prone and didn’t meet SOX compliance.
A web based GUI error reporting and management application was therefore proposed as a
solution.
Along with another developer I:
• Developed and scheduled a batch job to load billing error records to
database
• Exposed database CRUD operations as EJB services
• Developed and scheduled a batch job to retrieve corrected error records
from database.
• Designed, implemented and tested the web application
• Enhanced Financial Gateway RuleEngine in order to reprocess corrected
billing error records.
5
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
Technologies/Tools used: J2EE, JUnit, Syncsort, Maven, UNIX shell scripting, Control M,
JSP, Struts, iBatis, Spring, log4j, JDBC, JNDI, PL/SQL, SQL Loader, Oracle database,
Weblogic, XML, CSS and EJB.
Canpages Billing
The purpose of this project was to enable third party billing by TELUS of one time
monthly directory advertising charges for Canpages, a directory service provider. This
allowed TELUS to bill its business customer directly for Canpages advertising usage. It
required building an application that will serve as a file transfer hub between TELUS
External SFTP Gateway server and its Mainframe servers in British Columbia and Alberta.
To realize this I:
• Wrote file watch scripts to monitor and alert the availability of
Canpages billing files on the SFTP Gateway server
• Modelled and developed a workflow process to encapsulate the
handshake communication required between the servers.
• Integrated the workflow process with Control M for automated
scheduling and execution
Technologies/Tools used: J2EE, JUnit, UNIX shell scripting, Control M, Maven, XML,
Spring.
JJPeople Inc. Vancouver, BC.
August 2006 – November 2006
Java Developer
Projects undertaken:
Homes for you Struts Web Application
A Real Estate Agency needed to provide their clients and vendors the ability to view available
properties, schedule property viewings, report viewing results and edit property details and
information via the Internet. The "Homes for you" web application enables the customers and the
vendors to manage the properties efficiently.
The system is deployed on two separate servers. The primary server is located behind a firewall and
hosts both the database and web application used by the staff of the agency. The second server hosts
the web application available to the public. The public application uses web services to connect the
6
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
middle tier of the staff application. As part of a team, in order to deliver on these requirements I
was responsible for the following:
• Use case diagrams, application architecture and database design.
• Class diagrams for persistence, service and presentation tiers.
• Database schema and the DAO class design.
• Unit test cases.
• Custom tags and JSP for the presentation tier.
• Web services that the public application uses to connect the middle tier of the staff
application in order to interface with the database
• Servlets that stream property images to the public application.
Technologies/Tools used: J2EE, Struts, Hibernate, JSP, Java Servlet, XML, UML, log4j, MySQL,
Apache Axis, Tomcat.
Document Management System
This document management system is a web based application that provides a user friendly
interface and enables the users to manipulate files on the remote server easily and securely. The
system is built on the Struts framework and uses JDBC to talk to the database. The system is
secured by granting users different roles. As part of a team of developers, I was responsible for the
following.
• Designed and implemented the file management system, which is hosted on
Apache web server.
• Grouping users into different roles with different privileges (e.g. read, write,
backup files etc.)
• Securing the resources in a central location, and using Servlets to stream them to
the client.
• Using custom tags to represent the resources in a hierarchical tree structure.
• Writing unit and integration tests.
Technologies/Tools used: Struts, Java Servlet, JSP, JDBC, JNDI, XML, JavaScript, JUnit, Apache
HTTP Server, log4j, MySQL.
Bycast Inc. Vancouver, BC
Sep 2005 – Dec 2005
7
IKECHI AGBAKURU
E mail: ******@*****.***
Mobile: 778-***-****
Java Developer
Designed and developed an online supervisory and data acquisition application that collects data
from Bycast StorageGrid MultsiteTM – a grid based fixed content storage software that stores,
transmits and enables remote access to heterogeneous and geographically distributed medical
modalities within an enterprise and across multi site facilities – and make them available onscreen
for management and control.
• Interacted with company staff to elicit software requirements.
• Created a Software Requirements Specification document from the elicited
requirements.
• Analyzed the requirements and modeled the system using UML.
• Designed the system as a Java based web application using Struts framework.
• Interfaced to Bycast StorageGrid MultsiteTM and extracted business data using
AJAX screen scraping techniques.
• Implemented and stored retrieved data by means of XML.
• Developed the different tiers of the application using Servlets, JSP, Javascript and
CSS.
• Performed unit, functional and integration testing using JUnit, HttpUnit and
Cactus.
• Documented a user manual for the application.
• Packaged and deployed the application on Tomcat Web server.
Technologies/Tools used: Java, Javascript, Struts, HTML, JSP, Java Servlets, Tomcat, XML, UML,
CSS, AJAX, JUnit, Cactus, HttpUnit.
EDUCATION
Jan 2005 – Aug 2006: University of British Columbia, Vancouver, BC, Canada
MSc, Software Systems
Nov 1997 – Dec 2003: Federal University of Technology, Owerri, Nigeria
BEng, Electrical & Electronics Engineering
8