Senior Java Developer Resume
Old Bridge, NJ
SUMMARY:
- Senior Java Developer and Innovative Application Analyst with more than Nine years of experience in delivering Distributed & Cross Platform development in banking related Financial based systems.
- Extensive experience in Technical & Business Requirement writing, Roll out plans, new product development and product deployment.
- Thoroughly involved in all stages of System Development Life Cycle (SDLC) including (RDBMS) relational database design (ERD), Object Oriented Design Patterns, Object Oriented Analysis, business analysis, requirements gathering, application integration, customizationand Design (UML) using Rational Rose tool includes (Use cases, Sequence/State/Activity/Physical diagrams).
- Highly Experienced in client-server and web-based application development, primarily in J2EE technology such as Java, EJB 2.0, JNDI, JSP/Servlets, XML, XSL, JAXB also worked with Velocity Templates, IBM Web Sphere, IBM Web Sphere tools (WSAD), SQL Server, Oracle/Developer2000, PL/SQL, Stored Procedure, Database Triggers, Report writer, C/C++, Struts and Spring Framework and also includes two renowned ORM (Hibernate and Toplink)
- Experienced with Strong Skills in complete software development lifecycle in Intranet and Internet applications using Web Servers like Java Web Server, Tomcat 6.0 and Web Sphere Server.
- Excellent working knowledge of different design patterns like MVC pattern, Business Delegate pattern and Session Façade pattern.
- Working experience of implementing database partitioning, clustering, Indexing, Database link, roles, Synonyms, Procedures writing for the backup and recovery, Scripts for initializing the database, Database Administration and working knowledge of LINUX and UNIX platform.
- Extensive experience of outsourcing projects to Middle East and USA, designing and development of distributed architecture for WebSphere and Java
- Experience in generating various complex reports using Business Intelligence Tools like Business Objects 5.1(Reporter, Designer and WI 2.5/2.6).
- Expertise in Toad (Tool for Oracle application Developers) and PVCS (Version Control).
- Experience in Integration of various data sources like Oracle, SQL Server, Flat Files, Foxpro files. Powerful background in PL/SQL with data migration techniques.
EDUCATION:
Pursuing MS-IS (Concentration in IT Financial Industry Track)
(15 Credit Hours Completed) Expected Completion
Masters in Computer Science
Bachelor in Computer Science
Certification:
IBM Certified Solution Developer DB2 9.0
SKILLS:
Languages: Java, C, C++, VB, SQL, PL/SQL, Developer2000
Web Technologies: Servlets 2.3/2.2, JSP 1.2/1.1, Struts 1.0/1.1, EJB, JDBC, RMI, XML, HTML, JavaScript, CSS, Java AWT, Java Swing, ASP
Databases: Oracle 9i/8i/8.0, DB2 7.2, MS SQL Server 2000, MS Access, Foxpro
Database Connectivity: JDBC 2.0, ODBC
Application Server: WebSphere 5/4, WebLogic 8, Tomcat 5/4.x
Web Server: Apache/Jakarta Tomcat, IIS, JavaWebServer
OOAD/Methodologies: UML, Agile
Tools/GUI/IDE: IBM WSAD 5/4, Borland Jbuilder 9, IBM Eclipse, Visual Studio, MS Office, MS Visio, Rational Rose, JUnit, Microsoft Visual Interdev, Dream Weaver, TOAD, Erwin, Oracle Toplink mapping Tool, DB Designer,
Operating System: MS-DOS, Windows 9x/NT/2K/XP, Unix/Linux
Report Writer: Oracle Report Writer, Crystal Report 8.5
Network: TCP/IP, SMTP
WORK EXPERIENCE
Confidential, NY, NY Oct 2005 – Present
Project: Conversion of Clearsum Application (04/2009 – Current)
Sr. J2EE Developer:
Clearsum has the clearing information of stocks purchased or sold and it also does care of any company’s merger. It has information of party’s involved, prior meetings between the Executives and Board of Directors or any event occurred before and after the deal. We need to make this application web based in this way that we can sell this product to other stock exchange.
- Analyzed existing system and designed/implemented the new application by choosing the best suitable enterprise architecture to be able to integrate strategically.
- Did Logical Process Modeling, Data Modeling, Workflow design, Object Modeling using Enterprise Architect Version 7.0.
- Faced different problems in implementing Acegi and Spring Framework for enterprise architecture.
- Used Velocity templates for rendering the data.
- Designed, developed and Integrated Toplink for the Object to Relational database mapping using oracle toplink tool. ValueHolders used, so data get loaded only when it is required.
- Written Service, Controller and DAO layer with proper naming convention and packaged them in this fashion that it can be understandable to all team members.
- Application has various modes. Each mode is kind of separate application which has features and sub features. Implemented complex features and sub features’ grants/revoke methodology.
- Used Spring framework wizards, for creating, deleting and updating users and their associated companies information etc
- Used DHMT/AJAX in most of the complex pages where users want to compare the data with different criteria with refreshing the page.
- Used branding through out the project so we can sale the project to other organization also used CSS files which get loaded through branding classes.
- Pagination, Sorting, Show All, Search criteria toolbar showed in all screens using data streaming.
Environment: Core Java,Eclipse, Spring Framework, Acegi Framework, Velocity templates, Toplink, Oracle Toplink mapping tool, CVS, Oracle 10G, DB Desinger, HTML, Java Script, ANT Script, Tomcat 6.0
Project: Oracle Migration project (04/2008 – 03/2009)
Sr. Java/Database Developer/Team Lead
This is a data migration project from Sybase to Oracle. We have an Insider Suite which has number of application running with Sybase database. I was responsible for all the data loaders to move to oracle and also maintaining all database script and smooth migration of data from Sybase to Oracle. Used hibernate for all database transaction. Actively work on ANT Script for generating application builds, to avoid any confusion between QA and Production deployable.
- Managed an offshore team of 2 people and assigned them the migration work.
- Also write rollback plan for every single module and create time line to assign work to developers.
- Removed extra processes in loading data and also get rid of extra tables, which save lots of coding at the time of migration.
- Actively involved in conversion of stored procedure
- Used hibernate ORM, in all transactions of every module. Also used HQL (Ansi Sql) for heavy data processing and for delta processing. Introduced several indicator on database level to avoid processing duplicate and already existing data.
- New dataloaders has designed that it can easily be restarted if it halted in the middle of dataloading.
- Each data provider has different format of sending data, like flat files, XML files, and fixed format. Written file parser to understand every medium of data using reflection APIs.
- Changes in the format of data files can be absorbed, as all formats is defined in the xml files and used DOM to load the file format at the starting of dataloading. Used SAX parser for bigger xml files.
- Created test beds to successfully test the migration process and also responsible for performance tunings of heavy queries, used partitions, clustered indexes, bitmap indexes, regular indexes where required.
Environment: Core Java, Eclipse, Tidal setup, Sax/Dom Parser, PL/SQL, CVS, Windows 2000, Oracle 10G, Hibernate 3.0, TOAD, Erwin, HTML, ANT Script, Oracle Sql Loader, BCP
Project: Hoovers Data Loader (09/2007 – 03/2008)
Sr. Java/Database Developer/Team Lead:
Hoovers is another data provider company which provides data about NYSE registered company’s executives and directors. We insert this data into an existing ASAM data in this fashion that GUI will not change and user will be able to see more information about the companies and individuals involved in any kind of trading.
- Marked data before hitting the final database to avoid long running jobs on server.
- Used heavy queries to avoid long processing on java level end.
- Also implement unit transaction mechanism, either all data gets loaded successfully or not even a single row, if we have any problem in the data file.
- Data process are very strong that if it gets killed in the middle of the processing then operation team can rerun the process without any cleaning, it keeps the committed point.
- It does delta processing on weekly basis, to update or insert only new changes about the companies their individuals and affiliation of the individuals with different companies.
Environment: Core Java, Eclipse, Tidal setup, PL/SQL, CVS, Windows 2000, Oracle 10G, TOAD, Erwin, ANT Script
Project: ASAM (Automated Search and Match) (02/2007 – 08/2007)
Sr. Java Developer/Team Lead:
This application is a reference tool used to retrieve information about companies, their subsidiary companies and people who are on the Board of directors for any of those companies. ASAM processes and stores the data provided by the Dunn & Bradstreet, Martindale Hubble, Standard & Poor and Who’s Who in oracle relational tables. The data is presented in a form of a hierarchy, which is a tree like structure.
- This application has lots of backend work as compared to front end.
- The whole backend is rule based architecture; rules are defined for cleaning the data, for matching the data on database level etc
- Efficient stored procedures have written which reads the rules and generate the sql on fly and compare the data with the help of generative sqls.
- Dynamic generation of queries has done before we invoke the matching rule engine, so later we can enquire why the person from one company has matched with other company.
- Used exec immediate for dynamic processing. Type and ODBMS concepts heavily used in stored procedure for data processing.
- Used heavy multithreading to load and match data in parallel. It opens six threads at a time four for data loading and two for matching data, used select for update command on oracle to avoid any row locking.
- There are different kinds of investigation in NYSE, this tool helps the analyst to deeply look, who has involved in the trading
Environment: Core Java, Eclipse, JDBC, Stored Procedure & Functions (Packages), PL/SQL, CVS, Windows 2000, Oracle 10G, TOAD, Erwin, HTML.
Project: Visual Analysis Framework for Market Data (04/2006 – 02/2007)
Sr. J2EE Developer
The application allows the user to analyze market data by cross correlation of anomalous data and/or interesting events. A high degree and ease of navigability through visual and semantically related models of very large datasets is available to the user. The system is an XUL like framework based on meta-models and model transformations to generate application artifacts in a plug-in architecture based on Model Driven Development and generative programming. Best practices and Design patterns are embedded in the generative models / templates and design quality is maintained in a simple and cost effective manner. High efficiency and low turn-around time from feature identification to design and delivery with extremely low defect rates.
- Be a member of the development team and now maintaining the application.
- Did lot of xml, xsd and xslt worked as it’s a client server application with Model Driven Architecture.
- Used multi-threading for getting data from multiple database sources within the same screen.
- Handling Minor/Major changes to the application through the entire system cycle.
- Mostly involved in integration kind of coding with other parallel application with smooth passing of parameters back and forth.
- Handling tickets through the concerned groups and coordinating with different groups to restore the application
- Wrote ANT scripts for building the deployment packages for Development, QA and Production environment with build tags.
- Coordinated delivery to QA and production, and post production maintenance
- Independently working most of the work of the project.
Environment: Java, Swing, XML, XSLT, XSL-FO, Schema, SwixML, JFreechart, Hibernate, Servlets, JSP, J2EE, IBM Websphere, Oracle 9i, Sybase, JUnit, CruiseControl, ANT
Project: Automated Financial Examination System (10/05 – 03/06)
J2EE Developer
A data query and analysis system that allows financial auditors to query and analyze stock trading data in order to determine potential areas for audit, prior to the start of the onsite examination process. The application captures large volumes of text delimited data, transforms the data into staging tables using XAware, and then uploads it to Sybase and Oracle databases and generates a metadata model using PL/SQL to enable end users to query the data.
- Developed the user interface with drill-down features using XML and the Struts framework to minimize JSP coding.
- Implemented a feature to filter inquiry results and display the results on multiple pages to reduce data overload on the client and server-sides.
- Used XML to integrate the front-end with the SQL database and call SQL queries and stored procedures.
- Implemented sorting on database side.
- Used the Singleton design pattern and a data manager to handle all SQL and stored procedures.
- Used sorting, paging, breadcrumb, and search capabilities of Actuate Reports to display inquiry results.
Environment: J2EE, XML, XAware, DOM, WASD 5.1.2, Struts, CVS, Oracle, SQL Loader, Toad
Confidential, Torrance,CA – (02/05- 09/05)
Confidential, Atlanta, GA - (02/05- 09/05)
Supply Chain Management Application
Java Developer:
A global supply chain management system that manages purchasing and shipments, tracks supply, manufacturing status, logistics, and distribution for large department stores, and allows data sharing with supply chain partners. The project was to enhance the application, improve performance, and implement reports using Crystal Reports Writer.
- Developed the middle layer using EJBs.
- Designed Oracle database tables to normalize the existing tables and to support added functionality using Erwin.
- Developed JSPs using JavaScript to support business rules validation.
- Rewrote Oracle and SQL queries to improve database performance.
- Used existing APIs to invoke Crystal Reports from a Java application.
- Deployed and tested various components and processes on the WebSphere Application Server.
- Resolved technical and application deployment issues on the WebSphere Application Server.
Environment: J2EE, WebSphere Application Server 5, WebSphere Studio Application Developer 5.0, EJB 2.0, JSP 2.0, JavaScript, PL/SQL, Visual Source Safe 6.0, Windows 2000, Oracle 9i, TOAD, Erwin, HTML
Confidential, Pakistan, Karachi – (06/03 – 12/04)
Responsible of supporting, maintaining old applications and also developed several new applications using RAD methodology. Main responsibility include of supporting/maintaining core banking application included deployments of jars, wars and ears on websphere. It’s a medium size foreign bank, which has development office in Dubai and Malaysia. It required lots of coordination with offshore developers and IT staff. Also responsible for providing MIS and data to higher management and help them in connecting the dots to do the deep analysis.
Back Office Credit Card Processing Application
A web-based back office application for processing check transactions applied to a credit card account. The application integrates with the core banking application using the Java Messaging Service API.
- Developed an HTML prototype based on preliminary business requirements.
- Developed rich graphical user interface with role-sensitive dynamic menus.
- Designed classes and an object model.
- Used Struts custom tag libraries for validation and data display.
- Used WSDL using WebSphere Studio Application Developer to invoke Web Services and establish communication between the application and the core banking system
- Wrote a SOAP client to insert data in a specified format into Oracle database.
- Used JMS service for asynchronous process to clear cheques, which ultimately hitting the core banking tables.
- Wrote indexes and refined query for faster retrieval and volume data analysis.
- Wrote complex reports using virtual pagination in Crystal Report 8.5.
Environment: J2EE, WebSphere Application Server 5, WebSphere Studio Application Developer 5.0, JSP 2.0, Struts, XML, JavaScript, SQL, JDBC 2.0, Visual Source Safe 6.0, Windows 2000, SQL Server 2000, JMS, PL/SQL, SOAP, UML, XML, Shell Script, CVS, Crystal Reports
Nostro Reconciliation Application
It’s a migration project of an existing Nostro Reconciliation application from COBOL to Java platform. The application enables the allocation of Nostro accounting entries for a bank to various customer bank branches/departments according to customer specified parameters. The application also reconciles bank statement books with FBL books. The Nostro account statements received from the respective foreign correspondents of the banks are converted using the application and the same is then fed into the system. The system analyses the transaction data and allocates it to the respective branches of the bank based on the predefined rules. Auto generated faxes / e-mails are used to communicate the transaction details to the respective branches.
- Conducted gap analysis of the existing COBOL application.
- Wrote a program to move data from COBOL flat files to an Oracle database.
- Used Business Delegate and Session Façade design patterns to develop business logic.
- Used JDBC for data persistence in the Oracle database.
- Mapped Entity Beans (CMP) which supported manual reconciliation on the Oracle transaction tables.
- Implemented session handling using Stateful Session Beans.
- Developed JSP and Beans for the Nostro Reconciliation architecture.
- Installed, maintained, configured, tuned, and stress tested the application.
- Wrote Oracle stored procedures for reconciliation of bank transactions.
- Developed the front-end using Dreamweaver, CSS.
- Wrote Oracle stored procedures to populate the Statement and FBL books form SWIFT application.
- Deployed the application on the WebSphere Application Server 5.
Confidential,Pakistan, Karachi – (01/00 - 05/03)
It’s one of the biggest banks, with branches through out Pakistan. I was responsible of development and maintenance of back office application.
Funds Management System
A web-based application that manages funds transfers between the central bank and its 1300 branches. When overall branch balances exceed certain limits the excess funds are transferred to the central repository and the branch is credited the amount. Similarly, when branches require additional funds to meet loan requirements, funds are transferred from the central repository back to an individual branch.
- Analyzed the existing systems for each individual branch using Oracle Developer and designed a framework using MVC that is efficient, robust and scalable.
- Designed the database using Erwin.
- Implemented the logic to debit and credit accounts.
- Created daily balancing logic.
- Developed standards for assigning codes to different accounts.
- Wrote stored procedures to load data from branch databases to the central database.
- Used XSLT to convert text files into XML files for distribution via email.
Environment: Java 1.2, Servlets, JavaScript, MVC, Apache Tomcat 4.1, Windows NT, JSP, Java Beans, Linux, Oracle 7.x, XML, XSLT
E-banking Service Application
An e-banking service that allows bank customers to access their accounts via mobile phone service implemented through WAP (Wireless Access Protocol) and SMS (Short Messaging Service).
- Developed an administration module in Visual Basic.
- Developed ASP and COM for the Internet banking architecture.
- Designed the front-ends using Microsoft Visual Interdev.
- Used COM technology to develop the business logic.
- Developed online forms using Visual Basic.
Data Warehousing and Consolidation System
A fully automated system for consolidating and storing data from 1300 bank branches on a daily basis via FTP and email, eliminating the need for data loading and verification. In addition, the system provides user email notifications and allows users to subscribe for email Daily Balance Sheet reports.
- Designed dataflow and classes diagrams.
- Designed database using Erwin.
- Wrote triggers on the database level for capturing daily transactions.
- Used multi-threading for loading the data from different branches, we get data from 1300 branches through email, FTP and cartridge
- It has implemented the consumer and producer threading concept to load the data.
- Create indexes for fast comparison of data.
- Coded KSH and Shell scripts for database backup and recovery using VI Editors.
- Developed a report module using XML, XSL and DOM parser lever.
Environment: Java, Servlets, Java Beans, Apache Tomcat, Linux, Oracle Server, Java Builder 3.5, XML, XSL, DOM, Threading