Post Job Free

Resume

Sign in

Senior System Manager Project

Location:
Mississauga, ON, Canada
Posted:
February 28, 2023

Contact this candidate

Resume:

Peter (Gang) Wang

email: advmo1@r.postjobfree.com,

A dedicated software professional with 20 experience, fully hands-on while in high-level leadership roles, providing architecture, data modeling, software engineering, and hands-on development.

SKILLS

●20+ years software develop/architect experience using Java, Java EE, Spring (Core, IoC, MVC, Security, Aspects, Batch), Spring Boot, JavaScript, JAX-RS(REST), OAuth2, JWT, JAX-WS(SOAP), Scala, JSP, JSF, JMS, JDBC, MQ, Kafka, JUnit, Mockito, Hibernate, JPA, Microservices, jQuery, XSD, XML, JSON, HTML, CSS, Angular, Node.js, Maven, Ant, SVN, Git, AWS, WebSphere, WebLogic, JBoss, Tomcat, shell script(Bash, ksh, csh), python

●Deep knowledge and experience in Agile methodology, and tools such as Git, confluence, Jira, participated in daily meeting, sprint and release meetings, contributed experience.

●Excellent experience in designing and implementing Java application with Java, data structures (List, Set, Map), algorithms, low latency, concurrency and performance tuning with jvisualvm, jstack, GC

●More than 20 years experience on RDBMS, such as Oracle, Sybase, MS SQL Server, MySQL, Informix, and object-relational database PostgreSQL, No-SQL (MongoDB) PL/SQL, queries, stored procedure, function, T SQL, SQL Loader, PSQL

●Extensive knowledge and hands on experience of financial instruments (IR Swap, Currency Swap, FRA, Quanto, CDS …) trading, booking, pricing(calculating), clearing, settle, risk management, Capital Market and financial protocol, FIX, STAMP, K2

●Thorough understanding and experience on AWS services (S3, EC2, ECS, SNS, SQS, Lambda, CloudTrail, AWS Glue), DevOps CI/CD tools (Jira, Jenkins, Git, GitHub), Docker. Kubernetes

●Excellent communication skills, analytical thinking, congenial team player, quick learner, trouble shooter

PROFESSIONAL EXPERIENCE

TD Bank Toronto, ON September 2020 –Present

Senior Developer

Project Description:

To read data from Kafka topic and Microservices, manipulate data and create new Microservices

●Parsed mainframe copybook, received data from Kafka, manipulate data.

●Map mainframe copybook to Java object, read binary data from Kafka topic and transform data to Java object.

●Created Ci, CD for new app, setup trigger from github, checked the job status.

Capital One, Toronto, ON August 2020 –August 2022

Senior Developer

Project Description:

To retrieve data from Auth Log history, create data feature, fraud rules

●Completed the data features of sum 150, chip auth and ACR(VIP, minor) data feature for transaction fraud rule as part of transaction fraud

●Analyzed fields from auth log for terminal velocity, store velocity and completed the data features, created PR for integration test.

●Implemented ‘FraudRateByCountry’ new feature from uploading csv file to S3 bucket, transforming to avro with scala, loading data into Hazelcast, reading and applying into feature.

●Tested the above new feature under different Jenkins pipelines, checked logs with Splunk,

●Integrated ‘FraudRateByCountry’ feature into fraud engine deployed on OpenShift

●Gathered data from MQ or other data sources, created Kafka mapper, generate new streams for down stream

●Deployed apps to OpenShift Container Platform,

●Created PageDuty alerts and Dashboard with Splunk.

Solution: Java EE, Java 8, SpringBoot, OpenShift, Spark, Scala, Hazelcast (similar as Redis), Kafka Stream, Gradle, SpringBoot, Microservices, REST, JUnit, Jenkins, SonarQube, CI/CD, JSON, Git, Jira, confluence, Docker, K8s, AWS, Splunk, Groovy(Unit Test), OpenShift

TD Bank, Toronto, ON Mar 2019 – May 2020

Architect/Senior Developer

Project Description:

To design the OFM migration from monolithic to Microservices, implement new feature (Standardized Approach Report) from GUI to Database

●Completed the architect and design for monolithic application OFM migration from Struts to Microservices architecture with JSP, JavaScript, Java 8, Spring Boot, Restful

●Implemented new feature Standardized Approach Report from front end to back end and integrated the new feature to the OFM application.

●Completed the Microservices with Netflix OSS Eureka, Hystrix, Zuul and Spring Cloud gateway, security, sleuth, zipkin

●Designed platform (DEV/SIT/UAT/PROD) independent log4j configure file and JNDI data source, build one WAR file deployed on different environments without any code change.

●Created Oracle hierarchy query, send proper data to front end to implement organization jQuery TreeTable

●Implemented multi-threading on large reports data retrieving, processing and generating to reduce user waiting time.

●Prepared Solution Implementation Plan (SIP) and run book for PAT and PROD deployment.

●Help junior developers to complete scripts to check and clean report directory disk space, run on autosys.

Solution: Java EE, Java 8, JSP, Angular, JavaScript, Spring Boot, Microservices, TDD, multi-threading, Restful, JUnit, Jenkins, CI/CD, JPA, JSON, XML, Log4j, Maven, Git, Jira, confluence, Eureka, Hystrix

Database: Oracle 12.2, SQL Server

Citi Bank (Mississauga) www.citi.com Feb 2018 – Dec 2018

Senior Java/Java EE Consultant

Project Description:

Build a periodic batch to run before the market closes, let senior management have a snapshot of the EOD report.

●Completed the periodic batch project design based on a new requirement, to let senior management to have limited exposure reports before the EOD batch.

●Designed and implemented the key part of the periodic batch enhancement, created new Restful API, implemented Java multi-threading with Callable to meet the business requirement such as start, pause, resume, stop during processing.

●Completed flash report Restful API designed, generated reports for user during the day, completed postman script to finish unit test

●Configured release tools (RLM) for the team to build code, implement CI and help other teams to deploy war on WAS.

●Figured out deadlock caused by multi-threading with JDK tools jstack and jvisualvm, adjusted heap size, garbage collector by analysis jvisualvm report and garbage collector log.

●Migrate citi repository to Artifactory by exporting public certificate, generating key, adding the key to trust store.

●Worked on a new Linux shell script to call a new periodic batch with date format consistency, java class path config and created email alert.

Solution: Java EE, Java 8, Spring Boot, Microservices, MQ, Restful, multi-threading, PL/SQL, JUnit, JPA, JAX-RS, JSON, Hibernate, Log4j, Maven, Git, JIRA, Agile, Jenkins, RLM, Bitbucket, AWS, CI/CD, Linux Shell Script

Database: Oracle 11.2

TD Bank (Mississauga) www.td.ca Feb 2016– Feb 2018

Solution Designer

Project Description:

Created new Restful API for a legacy Credit Offer Manager (COM) application, migrate legacy projects.

●Completed Liquidity Manager project architect and design, implemented PoC (Proof of Concept) API, included model, service, repository, entity,

●Completed legacy project ‘Credit Offers Manager’ Restful API design based on existing SOAP operations, let both run in parallel for old and new customers.

●Redesigned the data retrieving from host and processing with Java concurrency frameworks (multi-threading), improved the application performance.

●Implemented and config OAuth2 (JWT token), Logging, RAML validation, Schema validation, sanitization, external config, error handling

●Completed the monolithic application migration to Microservices by using Netflix OSS, Eureka, Zuul, Ribbon, Feign, Hystrix

●Implemented Kafka producer and consumer applications on Kafka cluster setup to process mortgage application data.

●Migrated legacy project replacing RAD with eclipse and ant script with maven pom.xml, still using WebSphere server and modified shell script to deploy war on Linux

Solution: Java EE, Java 8, Angular, JavaScript, Spring, Kafka, MQ, multi-threading, Angular, Shell Script(Bash), JBoss, Spring, Spring Boot, Microservices, JUnit, Restful, JSON, Postman, Hibernate, Log4j, Maven, Jenkins, Git, JIRA, Confluence, Agile, GitLab, Eureka, Zuul, Ribbon, Feign, Hystrix, Azure, Beanstalk, JMS

Database: Oracle 11.2

RR Donnelley, www.rrd.ca July 2015 – Dec. 2015

Senior Java/JEE Consultant, Architect

Project Description:

Designed and implemented a web-based application from scratch, import existing data from access, excel, flat file, and let user input/modify data, generate/print reports

●Created scripts to copy different format files (csv, fixed length, excel) into SQL Server, wrote functions to process data.

●Design and Implement LDAP repository which hosts customers, roles as well as shipment data

●Worked together with users, PM and other developers during daily stand-up meetings to design, implement the GUI based on user PPT file, emails, screen shot.

●Integrated Spring Security to new project to implement role-based application from back end to front end, database access level.

●Developed JPA based data retrieving application, using lazy loading and pagination technology to improve the performance

●Generated excel/PDF files with Jasper framework and Apache POI with multi-threading.

Solution: Java, JSF, multi-threading, Spring Security, Maven, JUnit, JPA, Hibernate, Glassfish, NetBeans, Restful, LDAP, JSON, JMS

Database: SQL Server

HSBC, www.hsbc.ca May 2014 – June 2015

Senior Java/JEE Consultant

Project Description:

Migrated a .Net based GUI to jQuery-based GUI, and make both old and new GUI look and feel unchanged

●Integrated our local .Net site to Java site by deploying (installing) standard portlet/servlet war file developed from another team to application server and Portal Server, transferring data (sensitive and non-sensitive) from our .Net site to Java site.

●Developed web service (bottom to up) from a jar file, tested and deployed on WebSphere application server, let our .Net code can talk to java code

●Deploy existing portlet/servlet on the WebSphere Portal Server and Application Server, configured and tested, build the connection between Canada site and others.

●Installation and Configuration of MQ and Message Broker on UNIX, Linux, AIX and Windows environments.

●Redesign and implement GUI with new technology, such as Node.js, jQuery make both old and new GUI look and feel unchanged.

●Handled the MQ queue managers in clustering for round robin and failover functionality.

Solution used below: JEE, Java, AngularJS, Maven, Ant, WebSphere v8, Portal Server v8, RAD, Team Concert, Web Service, WebSphere WMQ, WMB, JUnit, Log4j, Agile

Database: Oracle 11, PL/SQL

Scotia Capital, Enterprise Risk Management Solution March 2012 – March 2014

Senior System Developer

Project description:

Worked on an in-house developed online derivative trading application, tuning the application performance.

●Worked on scotia in-house developed online trading application K2 performance tuning, testing G1 GC by adjusting the GC pause time, region size, working thread numbers, make the balance of throughput and latency

●Implemented new enhancement for CDS (Credit Default Swap) upfront fee time discount

●Integrated the new CDS reports to existing report system, so the senior manager can access report easily from intranet

●Completed financial trades calculation by implementing Java Concurrency framework (multi-thread API).

●Generated template and new report based on business requirement with crystal report under Windows, stored procedure and i-net under Solaris from Sybase database.

Solution: Core Java, Java Swing

Platform: Solaris, Windows

Database: Sybase v15

Software: K2, Crystal Report, low latency

Buchanan Associates, www.buchanan.com Feb 2011 – March 2012

Senior Consultant

Project Description:

Implemented and integrated new features for the current PoS application

●Worked with the design team and business analysts with new feature on portal page designs, developed JSP, Servlet, Enterprise Java Bean

●Enhanced the credit card transaction processing when the server is down and resends the transaction when the server resumes.

●Designed business logic classes in Java, developed projects’ database persistence layer using JPA

●Extract data from database, created the new daily reports by using Java and Jasper Reports(iText)

●Designed the data structure and created an xml file to store the data, generated a transaction log viewer using Java swing and configuration xml file.

●Implemented new enhancement based on spec., such as ‘pump printer paper out’, ’EBT tender verification’, ‘halo override’ on both Windows and Linux.

●Reduced the EoD processing time by using java multithreading concurrency framework

Solution: Java, multi-threading, JSP, WebLogic, Hibernate, Eclipse, Maven, C/C++, XML

Platform: RedHat, Windows

Database: Oracle 10g

Software: POS (Point of Sale)

Scotia Capital (Toronto), www.scotiacapital.com Nov. 2009 – Oct 2010

Senior Java/JEE Consultant

Project Description:

Implemented new feature for financial instrument trades to send more info to scotia calculation center, and parse response.

●Supported FRS application month end running, pricing financial instruments from calculation server, checking user files loading, log files, and submitting status report

●Created the first excel/CSV file from FRS application GUI by using the Crystal Designer framework.

●Created brand new derived curve based on other existing curves and dumped data to an xml output file using Talend.

●Configured WebSphere resources like JDBC providers, JDBC data sources, connection pooling.

●Generated draft for any UAT/PROD release, wrote the built and deploy procedure for user, built and deployed new code on DEV and IST

●Fixed SSIS error, enhanced SSIS when connect to Moody’s MS SQL Server

●Loaded monthly liquidity cost charge data and other required data into the database.

●Enhanced existing SOAP web service to send new types of scenarios from application server to calculation server.

●Enhanced some CNET new features, such as liquidity charge cost undrawn, cache control, data purge, changes included jsp, java, database changes.

Solution: Java, JEE, EJB, JSP, WebLogic, Hibernate, Eclipse, Maven

Platform: RedHat, Windows

Database: Oracle 10g

Software: POS (Point of Sale)

Manulife (Toronto), www.manulife.com May. 2009 – Nov. 2009,

Business: Financial Service/Insurance

Position: Senior System Developer/Analyst

Upgraded the database to Oracle 8, and redesigned the batch job for different TZ.

●Redesigned the existing workflows to run the EOD jobs on two servers in parallel in order to reduce the overall running time and let the Asia deals can be put under the same Findur system.

●Enhanced batch job on Unix server to run the new parallel job

●Turning the Oracle SQL and Findur scripts to make the job more efficient and improved the performance

●Created the software instructions for end user

Solution: Unix Shell, Findur, Sybase

Platform: Windows

Database: Oracle

Software: Findur (Vendor fix income trading system), RapidSQL

TD Securities (Toronto), www.tdsecurities.com Jan 2004 – May 2009

Senior System Developer/Lead

Project Description:

Implemented derivative trades preprocessing, provide trades for risk engine to price (calculate)

●Completed all Calypso preprocessor and provided more efficient solution, improved the preprocessor performance with perl

●Read data from different sources, database or text file and processed to generate RiskWatch input files.

●Migrated the existing TD financial risk models (IR Swap, Currency Swap, FRA, CDS …) from RiskWatch3.2.8/4.02 to RiskWatch4.4.0, compiler from GNU g++ V3.2 to Sun CC V5.4 for both Market Risk System/Credit Risk System group, and Numerix library migration

●Created standalone test case for different financial models for test purpose and further development

●Integrated new TD customized financial models (CIF, PRDC, Asia Quanto) to the RiskWatch engine by getting code from the Quan team, developed with multi-threading, compared the result.

●Designed summit trading system preprocessor with object-oriented methodology, created a framework for other trading systems with perl, such as WSS, MUEQ

Solution: C/C++, Perl, Perl DBI, Java

Platform: Solaris, Linux

Database: Oracle, Sybase

Software: RiskWatch, Calypso

Bank of Montreal (Toronto), www.bmo.com July 2002 -- Jan 2004

Senior System Developer/Support

Project Description:

Migrate BMO house developed financial application operation system(from Solaris 2.5 to 2.8), C++ compiler (from 4.2 to 5)

●Analyzed, designed, implemented, tested the regression test software package using C++, shell script and SQL, stored procedure for Infinity team independently.

●Supervised the co-op students in developing and using the regression test software package

●Implemented the financial model using C++ according to the business requirement.

●Upgraded system for Infinity system, including operating system (from Solaris 2.5 to Solaris 8), C++ compiler (from 4.2 to 5.3), trading application software package, GUI development tools

●Gathered software requirement from traders, generated daily trading reports using Perl, shell script and SQL

●Designed the test case, prepared the test data, finished the unit test, integration test and UAT (user acceptance test) for the upgraded software

Solution: C++, Perl, UNIX shell script, and awk

Platform: Sun Solaris

Database: Oracle 8i

Others: Clear Case, Clear Quest, Rational Rose, UNIX schedule job, Fin++, and Infinity

E*Trade (Toronto), www.etrade.ca Feb 2000 – July 2002

Senior Software Developer

Project Description:

Implemented FIX protocol on both ETrade fix gateway and fix server.

●Designed and implemented FIX gateway software package which connect NASDAQ ECN (knight, island, Bloomberg, archipelago) from system level (TCP/IP, IPC) to business level using C++

●Implemented smart routing system based on business and technical rule and some statistic.

●Enhanced the FIX engine network communication component in order to improve the performance based on multi-threading programming,

●Analyzed the order entry simulator written by VC++, designed and implemented a new version under Solaris platform using Java Swing for FIX engine test

●Supported the existing software in a production environment over phone, e-mail, explained the protocol, and modified something to make the client and server consistent with each other.

●Designed the test case, prepared the test data, finished the test with other brokerage firms and ECN over phone, analyzed the test results.

Solution: C++, STL, Java Swing, Perl and shell script

Platform: Sun Solaris

Database: Sybase V12

Others: Clear Case, Rational Rose, UML, TCP/IP, FIX, STAMP, multi-threading, low latency

Education

●Master of Engineering

Dalian University of Technology, China, 1990-1993

●Bachelor of Engineering

●Wuhan Transportation University, China, 1984-1988



Contact this candidate