Summary
Overview
Work History
Education
Skills
Languages
Timeline
Generic

Narayanan Saravanan

Surrey,Canada

Summary

I hold experience of 15 years in the Information Technology. As part of my assignments, I involved in Requirement Analysis, Application development, Web Designing, Functional and Automation Quality Reviews and Testing. I worked on projects for the Global Mobile Testing CoE R&D , JP Morgan Chase Bank, Lloyds Banking Group, Visa Europe as well as with Best Buy

Overview

15
15
years of professional experience

Work History

Assistant Consultant

TCSL Canada
07.2022 - Current
  • Project #1 - EDM Location
  • Title: Enterprise Data Management
  • Role: Team Member & Technical Lead
  • Tools: Spring Boot, Java8, Java 11, Javax Validation – Hibernate Validation Provider, Spring Data JPA, Hibernate, Open ID Connect, Oracle DB, GitHub, Gradle, Hibernate Envers, Kafka & Kafka Streams
  • Client: Best Buy
  • Description: The project EDM Location aims to store and maintain the location data across bestbuy. The application acts as a central hub for systems consuming the location data. The Location data includes the store and warehouse details. Details include persisting the open and close timings. The application also maintains metadata about the locations like Ship from store, Curbside pickup etc. The application also has an user interface built on React JS as a single page application. Authentication and Authorization is implemented using Open ID Connect. Users can also mass update the location data using Mass File Upload feature. The status of the uploaded files can be visualized in User Interface. The mass update can be done in user interface using Mass UI Apply feature. The Mass UI Apply fetches location data for multiple locations and data for multiple locations can be updated in one go. Built on Spring boot , the application exposes REST api endpoints as well as a variety of spring jobs scheduled at regular intervals. The jobs handles two different kinds of Files – Immediate & Future Files. Immediate files are scheduled for execution with immediate effect where as the Future files are scheduled for execution on a future date. Immediate & Future files are validated before execution using Javax Validation API with Hibernate Validation provider.
  • Project #2- Supply Chain Data Services
  • Title: SCDS
  • Role: Senior Technical Lead
  • Tools: Spring Boot, Java 11, Spring Data JPA, Spring Data Rest, Hibernate, Hibernate Envers, Oracle DB, GitHub, Gradle, Kafka & Kafka Streams
  • Client: Best Buy
  • Description: The project aims to centralize the more infrequently utilized data across the enterprise. The initiative aims to develop one stop solution to retrieve the infrequently changed foundation data across the best buy systems. Without the initiative, when foundation data is changed, the systems should publish large volume of core data even though it is not modified. The core messaging feeds published within best buy used to carry footprints of the foundation metadata. The process leverages fetching the different categories of foundation data from legacy systems. Once fetched, they are channelized via Apache Nifi to the newly modernized scds system. The scds system constitutes three sub components. First is internal kafka topic, second is the core engine consuming and updating aws Aurora database, third is to publish to an external kafka topic. Foundation data from the legacy systems are pulled via Apache Nifi and published to internal kafka topic. Once published, the core scds engine consumes it via Apache kafka streams and simultaneously publishes to an external kafka topic while updating the AWS Aurora database. Spring Data Rest is extensively leveraged to expose look up api for the best buy system to look up the most relevant data. Scds is designed in such a way that all the systems within best buy in need of foundation data can repoint their fetch mechanism to either fetch through Kafka or by using Look up api.

Associate Consultant

TCS India
01.2020 - 06.2022
  • Project - # EDM
  • Title: Enterprise Data Management
  • Role: Team Member & Technical Lead
  • Tools: Spring Boot, Java8, Javax Validation – Hibernate Validation Provider, Spring Data JPA, Hibernate, Open ID Connect, Oracle DB, GitHub, Gradle
  • Client: Best Buy
  • Description: The project aims to store and maintain the location data across bestbuy. The application acts as a central hub for systems consuming the location data. The Location data includes the store and warehouse details. Details include persisting the open and close timings. The application also maintains metadata about the locations like Ship from store, Curbside pickup etc. The application also has an user interface built on React JS as a single page application. Authentication and Authorization is implemented using Open ID Connect. Users can also mass update the location data using Mass File Upload feature. The status of the uploaded files can be visualized in User Interface. The mass update can be done in user interface using Mass UI Apply feature. The Mass UI Apply fetches location data for multiple locations and data for multiple locations can be updated in one go. Built on Spring boot , the application exposes REST api endpoints as well as a variety of spring jobs scheduled at regular intervals. The jobs handles two different kinds of Files – Immediate & Future Files. Immediate files are scheduled for execution with immediate effect where as the Future files are scheduled for execution on a future date. Immediate & Future files are validated before execution using Javax Validation API with Hibernate Validation provider. Individual Contributions include designing and developing Validation framework . Javax validation api is used in a more sophisticated and customized manner to achieve highly customizable validation components.
  • Project - # UGC
  • Title: User Generated Content Engineering
  • Role: Team Member & Lead
  • Tools: Spring Boot, Spring Data, Cassandra & Apache Solr, Memcache, Rabbit MQ, Docker , Gradle
  • Client: Best Buy
  • Description: The project aims to store the user content like reviews, comments, ratings, questions & answers from the .com website . It uses the third party vendor Bazaar Voice and Add Structure to regularize, filter & tune the content. It stores the data in Cassandra as well as in Solr . This exposes a rest api called Domain for downstream systems to consume the user content . Built on Spring boot , exposes a variety of spring jobs scheduled at regular intervals . The jobs in turn connect with various third party vendors like Bazaar voice & Add Structure and internal vendors like Magellan
  • Jenkins Pipeline Optimisation : Optimized the Jenkins pipeline for UGC Cloud to reduce the duration to 30 percent. UGC Cloud is a multi module gradle project which has around 72 sub gradle projects. The Jenkins pipeline for ugc cloud performs 5 step logic clean-build-test-publish-notify logic for all sub projects irrespective of the changes done to the repository The pipeline is optimized to apply the 5 step logic to only the impacted projects and their dependents. This gave us much better improvement in pipeline performance. The pipeline which took around 10 to 15 minutes currently consumes only 2 to 4 minutes. This accounted for 50-80 percent reduction in duration consumed by the pipeline

IT ANALYST

TCS Siruseri
08.2018 - 09.2019
  • Project - # ChatBot
  • Title: BestBuy Chatbot
  • Role: Team Member
  • Tools: Scala & SBT, FastOpt JS, Dialog Flow, Akka
  • Client: Best Buy
  • Description: This bot is developed on Scala and Dialog Flow . The bot is a supportive interface deployed in bestbuy’s .com website to intake and converse with the customers. Built on Scala with SBT,this bot has it’s user interface designed with FastOpt JS

IT ANALYST

TCS
04.2017 - 03.2018
  • Project - #VISA EUROPE
  • Title: Application Support
  • Role: Team Member
  • Tools: Unix,Java,DB2,SQL
  • Client: VISA
  • Description: As part of Application Support, We need to make sure the Visa Europe System is operational without issues .Visa Europe (VE) is a branch of Visa Inc ( VI alias Base II )which undertakes operations in European region . Transactions received in Visa Europe fall under two categories. 1. Payee and Recipient fall under VE 2. Either of Payee and Recipient fall under VI. Transactions under category 1 needs processing from VE end whereas transactions under category 2 will be processed by VI and VE has to honor it . Production like environments are maintained to monitor the estimated behavior of the system as well as to replicate issues . Feeds received from banking clients has to be processed as per the currency rates applicable .The processed feeds has to be delivered to the recipient banking clients with fees and charges applicable . Special Environments are dedicated to Banking clients for them to update and look for issues if any before even sending feeds to VE . Currency feeds will be received from BASE II ( VISA INC ) which is used during transaction processing . Regular reconciliation has to be undertaken to cross check the performance and hygiene of the system . Jobs has to be monitored on regular basis to check for failures . Region wise windows has to be checked for its closure and settlement . Workarounds has to be provided for warehoused and storehoused transactions .
  • Responsibilities: Addressing Client queries within the target deadline Addressing incidents and providing resolutions within the estimated timeframe . Make sure the system is in Business As Usual . Address queries from operations over call .
  • Individual Contributions: Voluntary and individual contributions include providing automated solutions to address requirements in comparatively less time and effort. Node JS File downloader , which downloads files from production like server to the local . This was needed to run an analysis of files for duplicates . This automated solution reduced the effort and time by 80%. Node JS ITF Scrubber , which scrubs the PAN data in the production feeds . Node JS UMF Large file scrubber , which replaces the existing java solution to scrub PAN data in feeds from files of size larger than 2 GB Above solutions are based on Node JS utilizing most of its parallel processing capabilities
  • Project - #CCTM XL
  • Title: Performance tuning in Fraud Monitoring
  • Role: Developer
  • Tools: RAD , Websphere 6.1 , Soap UI
  • Client: LBG
  • Description: In this project , we focus on performance tuning the Fraud Monitoring components of LBG collectively called CCTM . As a developer , we are supposed to follow SDLC process , support change requirements throughout its lifecycle. The CCTM platform relied on Fraud Monitoring Engine called Actimize for fraud detection. Every transaction from the customer has to undergo the fraud detection performed by Actimize. CCTM platform acts as a middleware which routes as well as stores the transactions initiated by end users. The Middleware is exposed as a java web service which does the routing and stores the transactions. The set of transactions initiated by the end user will in turn constitute the end user profile. Profiling is one of the key factors utilized by Actimize for fraud detection. As a java developer , my role lies in supporting changes needed in java soap web service component.
  • Individual Contributions: My individual contributions to CCTM were a Smoke test tool ‘ SOAP UI MADE EASY ’ and a Load test tool ‘ Load By Node , LyN ’. SOAP UI MADE EASY was named so as it automated the smoke testing done using SOAP UI from SmartBear which almost zeroed the effort , time and memory spent for simple smoke testing. ‘ Load By Node alias LyN was introduced when there was a requirement to load test at higher tps rates which can be hardly achieved by the existing Load test tool in CCTM i.e TxnReplay. LyN is a data driven Load testing tool , heavily relies on Node JS, the javascript server runtime and java for database communication. LyN is being used in Non Functional Testing and Performance testing in CCTM . LyN is developed in a futuristic & more generic fashion to address the data driven Load testing needs of almost any Soap Web Service. This was a larger value add for CCTM as it eliminated the need for licensed application server WEBSPHERE.

Senior Software Engineer

L&T Technology Services
03.2015 - 06.2015
  • Project - #1
  • Title: Swing To Eclipse RCP Migration
  • Role: Developer
  • Tools: Eclipse RCP Framework
  • Client: HALLIBURTON
  • Description: In this project , we focus on migrating the code from Java Swing based Interface to Eclipse RCP based User Interface . Also much support is extended to make the application defect free .

Associate

Cognizant Technology Solutions
12.2010 - 01.2015
  • Project – JPMChase Bank
  • Title: Tech Refresh
  • Role: Developer
  • Tools: Struts1 , iBatis , Springs IOC
  • Client: JPMORGAN CHASE
  • Description: In this project , we should support technical changes required in developed portals for JPMORGAN CHASE bank . Web pages utilizing plain servlet technology will be upgraded to follow struts1 framework and iBatis API . Also , web pages configured for weblogic server will be adapted to be compatible with TOMCAT 7 server . Also , With Eclipse PlugIn RCP Framework , the IBatis API is automated and provided as a plugin for the Eclipse IDE that the developers work on .
  • Product - mint PRO
  • Title: mint PRO
  • Application: Native and Web Automation
  • Team Size: 5
  • Role: Developer
  • Tools: Eclipse RCP , Java ,Javascript ,Selenium
  • Client: Global Mobile CoE Research & Development (Cognizant)
  • Description: In this project we create tools to automate testing of applications deployed in Android and iOS environments. I have worked in a tool called “mint PRO” and this tool is used to test web applications as well deployed in smart devices. Mint Pro is developed in the same lines as Eclipse IDE Framework and is configurable to both Android Framework and Apple Instrument Framework. For testing web applications we use Selinium APIs provided by Thoughtworks.com. It uses XML to store backend information. In this project we develop automation tools to perform different sorts of testing processes concerned with mobiles It automates Native as well as web applications developed on Android and iOS platforms The User interface is built using the Eclipse RCP Framework and it uses xml for data storage The tool identifies the elements in Native as well as web applications before automating the same. Automation of Native Android and iOS applications has been handled with Instrumentation frameworks provided by Google and Apple Selenium from ThoughtWorks.com is utilized to automate Android and iOS web applications . Also i have extended my support in identifying the web components in mobile web sites by adding customized user interfaces to Android and iOS Selenium web drivers. The Customized driver application would help identify the web elements in a web page while the user is interacting.

Education

Master of Technology - System Analysis And Computer Applications

National Institute Of Technology
Karnataka, India
01.2010

Master of Science - Mathematics

University Of Hyderabad
Hyderabad, India
01.2006

Bachelor of Arts - Computer Applications

Nagarjuna University
A.P., India
01.2004

Skills

  • Java 8, Java 11, Java 17
  • Spring Framework, Spring Data Jpa, Spring Jpa Query DSL, Spring Data Rest, Spring Validation, Spring Batch
  • Hibernate, Hibernate Envers, Spring Graph QL
  • Open ID Connect, OAuth2
  • Apache Kafka, Kafka Streams, Rabbit MQ, IBM MQ
  • Git, Gradle, Jenkins
  • Oracle, Cassandra, AWS Aurora DB, Postgre Sql
  • Node Js, Jsp, Servlets

Languages

Tamil, Telugu, Hindi and English

Timeline

Assistant Consultant

TCSL Canada
07.2022 - Current

Associate Consultant

TCS India
01.2020 - 06.2022

IT ANALYST

TCS Siruseri
08.2018 - 09.2019

IT ANALYST

TCS
04.2017 - 03.2018

Senior Software Engineer

L&T Technology Services
03.2015 - 06.2015

Associate

Cognizant Technology Solutions
12.2010 - 01.2015

Master of Science - Mathematics

University Of Hyderabad

Bachelor of Arts - Computer Applications

Nagarjuna University

Master of Technology - System Analysis And Computer Applications

National Institute Of Technology
Narayanan Saravanan