Big Data Solution Architect
2019 - PRESENTRBC Capital Markets- Create ETL pipelines for data ingestion and transformation.
Technologies: MongoDB, Apache Ignite, Solace, Spark, Spring, ScalaNiFi ETL Developer
2018 - 2019Scotia Capital- Supported a data ingestion platform called Streaming Architecture.
- Created data transformation components in NiFi.
- Contributed code fixes and improvements to Apache NiFi.
- Authored ETL data flows.
- Integrated with GCP PubSub and BigQuery.
Technologies: Elasticsearch, Apache Kafka, NiFi, Groovy, JavaSoftware Architect
2017 - 2018RBC Capital Markets- Created Request Management Framework as a foundation to migrate 20+ PEGA applications to Activiti BPM.
- Created a data management UI (Angular 2, Angular Material) for reference data management.
- Created Spark-based analytics for the FINRA audit data feeds.
- Implemented Kerberos-based SSO authentication with AD/LDAP interfaces.
- Created a Camel-based ESB for email and file processing flows.
- Implemented business flows using Activiti BPM.
Technologies: Alfresco, Activiti BPM, ECM, BPM, TypeScript, Scala, Angular, Spring Boot, JavaSenior Java Developer
2016 - 2017TD Wealth Management- Rewrote the application Wealth Client Onboarding (WCO) using Angular and REST.
- Integrated with external REST APIs using JWT tokens and with external web services using 2-way SSL.
- Supported and enhanced the existing WCO application.
- Promoted clear and simple design principles.
- Created code frameworks for integration tests and SSO API.
Technologies: JSF, WebSphere, JBoss, Bootstrap, AngularJS, JavaScript, Java, REST, Spring BootSenior Java Consultant
2015 - 2016Walmart- Supported the Time and Attendance system.
- Created and maintained business rules.
- Troubleshot production issues.
- Created frameworks for ETL data loads and maintained batch jobs.
- Promoted Agile principles and practices.
Technologies: Rapid Application Development (RAD), Spring, IBM Db2, WebSphereSenior Java Consultant
2015 - 2015Toronto Stock Exchange- Worked in a team of 25 developers to create NetOTC, a risk management system for OTC derivatives.
- Created a high-availability transaction processing gateway for the NetOTC.
- Created a message logging and replay module.
- Created REST endpoints for the Angular UI.
- Promoted TDD best practices and maintained test suites.
Technologies: REST, Bootstrap, AngularJS, JavaScript, ActiveMQ, IBM Db2, Hibernate, Camel, Spring, WebSphereJava Team Lead
2014 - 2015Ethoca- Maintained and enhanced the customer-facing online system.
- Promoted Agile principles and practices.
- Troubleshot system issues.
- Created and maintained test suites.
Technologies: Ajax, jQuery, JavaScript, Apache Struts, JMS, Enterprise Java Beans (EJB), Spring, IBM Db2, WebSphereSenior Software Architect
2010 - 2014SecureKey- Created, maintained, and enhanced a public federated authentication system.
- Managed the web security audit for OWASP vulnerabilities.
- Created and maintained internal card management systems.
- Promoted Agile principles and practices.
- Promoted TDD principles and managed testing frameworks.
Technologies: MySQL, Apache Tomcat, jQuery, JavaScript, Web Services, Hibernate, Spring, Scala, JavaDevelopment Team Lead
2009 - 2010CAA South Central Ontario- Supported the Caasco.com consumer web portal.
- Integrated with EIS services.
- Coached team members.
- Promoted best development practices.
Technologies: Ajax, jQuery, JavaScript, Hibernate, JBoss, SpringJava Technical Lead
2008 - 2009CIHI- Created an ETL interface for statistical data uploading.
- Managed and coached the dev team.
- Worked with the architect to determine application architecture.
Technologies: Oracle Application Server, PL/SQL, Oracle, Apache StrutsJava Team Lead
2006 - 2008TD Bank- Created a number of internal systems for the use of the anti-money laundering department.
- Worked directly with the clients to determine the system requirements.
- Designed and implemented system modules.
- Created and maintained unit tests.
- Created and maintained UI design and components.
Technologies: Apache Tomcat, Oracle, Hibernate, Maven, Eclipse, Ajax, jQuery, JavaScript, JSF, Seam, SpringDevelopment Team Lead
2000 - 2006Kraft Canada- Maintained and developed enhancements for the Kraftcanada.com consumer website.
- Coached team members and performed technical interviews.
- Promoted test-driven development practices and maintained test suites.
- Worked directly with the marketing department to design and implement enhancements.
Technologies: JavaScript, Apache Struts, Hibernate, Enterprise Java Beans (EJB), Spring, MQSeries, Oracle, IBM Db2, WebSphere