Srinivas
Full Stack Java Developer
Employer details:
Ganesh
******@*******************.***
PROFESSIONAL SUMMARY:
Having 7+ years of professional IT experience with full project lifecycle development in J2EE technologies Requirements Analysis, Design, Development, Testing and Deployment of software applications.
Developed web-based applications using Java, J2EE, Servlet, JDBC, Hibernate, JPA, Spring, Struts, EJB, Web Services (SOAP and REST), MVC framework (Struts, Spring MVC, JSF), SQL.
Expertise in creating the pages using HTML5, CSS3, Web Pages, layouts and vast knowledge in usability and, accessibility concepts.
Expertise in client scripting language and server scripting languages like JavaScript, JQuery, AJAX, JSON, Bootstrap, AngularJS and NodeJS.
Extensive experience on implementing AJAX features using JavaScript and JQuery.
Experience with J2EE design patterns such as Front Controller and Data Access Object
Expertise working with different spring modules like Spring IOC (Dependency Injection), Spring MVC, Spring AOP, Spring Data (JDBC, ORM), Spring Boot and Spring Batch.
Experienced in implementing Service Oriented Architecture (SOA) with XML based Web Services (SOAP/UDDI/WSDL), JAX-WS using Top Down Approach and Bottom up Approach.
Expertise in developing REST APIs with Resource based URIs and HATEOAS techniques using Jersey and RestEasy implementations of JAX-RS and JAX-RS.
Managed Amazon Web Services like EC2, S3 bucket, ELB, Auto-Scaling, SNS, SQS, AMI, IAM, Dynamo DB, Elastic Search, Virtual Private Cloud (VPC) through AWS Console and API Integration.
Created and Configure Micro Service architecture for CDT Directory project and integrated with AngularJS application
Strong knowledge in cross browser compatibility issues and W3C standards. Good Knowledge in using Dojo Components and integrating back-end applications with AJAX driven web front-end using OO JavaScript framework.
Having experience with Collection for managing the dynamic data.
Experienced in developing Multi-Threaded/Concurrent applications and Unix Shell Scripting.
Experienced in solving issues in web browsers, following the W3C standards to maintain the website with defect free.
Having knowledge on different ORM tools like iBatis, MyBatis.
Strong Experience in database design using PL/SQL to write Stored Procedures, Functions, Triggers and strong experience in writing complex queries, using Oracle, DB2, SQL Server and MySQL, Postgre-SQL.
Extensive knowledge on Oracle, MySQL, DB2.
Experience in working with the NoSQL Database like MongoDB to manage extremely large data sets.
Experience in implementation of business applications using BEA WebLogic, IBM WebSphere and Portal Server (WAS/WPS), Apache Tomcat, JBoss, Glassfish.
Significant experience in web development tools like Adobe Dreamweaver CS3, Spring Tool Suite (STS), Eclipse, IBM RAD.
Experience in unit testing the applications using JUnit, TDD Framework and developed logging and standard mechanism based on Log4j.
Experienced working with different Software methodologies like Agile Scrum and Waterfall model.
Experienced with build tools like Jenkins, Maven, SVN, CVS and ANT.
Hands-on experience working with source control tools such as Git.
Strong experience in Creating Database Objects such as Tables, Views, Functions, Stored Procedures, Indexes, Triggers, Cursors in Teradata.
Experienced in developing enterprise application using Java 7/8 and JavaEE.
Experience on different IDEs such as RAD, Eclipse, Spring Tool Suite, and IntelliJ.
Experience in Agile methodologies such as Extreme Programming, Waterfall Model and Test-Driven Development.
Having experience in JIRA and Firebug to keep track of bugs and to manage the project.
Good in communicating with clients, customers, managers and other teams in the enterprise at all levels.
Effective problem-solving skills, outstanding interpersonal skills, good in written and verbal communication.
Ability to work independently as well as within a team environment. Driven to meet deadlines. Motivated to produce robust, high-performance software.
TECHNICAL SKILLS:
Languages
C, C++, Java, SQL, PL/SQL
Enterprise Java
JSP, Servlets, JNDI, JDBC, Log4J, Java security
Mark-up/XML Technologies
HTML, XHTML, DHTML, JavaScript, NodeJS, AngularJS, CSS, Bootstrap, XML, XSD, XSL/XSLT, SAX/DOM, AJAX, JQuery, JSON, GWT
Tools & Framework
Struts, Spring, Hibernate, MyBatis, Spring MVC, Spring Web Flow, Spring IOC, Spring AOP, Spring Data, Spring Boot, JSF, JUnit, Groovy
Web services
SOAP, RESTful, UDDI, WSDL, JAX-RS, JAX-WS, Jersey, RestEasy, JAX-B, Apache Axis2, Apache CFX, AWS (Amazon Web services)
Middleware Technologies
JMS, Spring Integration, Digest Authorization, OAuth
Web/App Servers
Web Sphere, Apache Tomcat, JBoss EAP, Web Logic, Glassfish
Database
Oracle, SQL-Server, MySQL server, TOAD, Mongo DB/ NOSQL, DB2
O-R mapping
Hibernate, MyBatis
Modeling/ CASE Tools
Rational Rose, MS Visio Professional
Testing Tools/ Others
JUnit, Mockito, Selenium, SoapUI, Putty, Rational Clear Quest, RTC
Version Control Tools
CVS, SVN, Rational Clearcase, Git, Checkstyle
Build-Automation Tools (CI)/Issue Tracking Tools
Maven, Gradle, Jenkins, Ant, JIRA, Pivotal Tracker, FireBug, Mantis
IDES
Eclipse, IBM RAD, STS, IntelliJ
OS & Environment
Windows, Sun Solaris, UNIX, Linux
Design Patterns
MVC, Front Controller, Factory Pattern, Singleton, Business Delegate and DAO patterns
Client: JPMC, Wilmington, DE Oct 2019 – Till date
Role: Full Stack Java Developer
Description: JP Morgan Chase is a leading global financial services firm with assets of $2.6 trillion and operations worldwide. The firm is a leader in investment banking, financial services for consumers and small business, commercial banking, financial transaction processing, and asset management.
Responsibilities:
Involved in various phases of Software Development Life Cycle (SDLC) such as requirements gathering, modeling, analysis, design, development, and testing.
Developed the functionalities using Agile Scrum Methodology.
Extensive work experience in designing and developing Enterprise Applications in J2EE using Core Java 1.8 and J2EE framework.
Developed the view-controller components using JSPs, HTML5, CSS3, JavaScript (jQuery).
Used Spring MVC framework for implementing Model-View- Controller (MVC) architecture at the Web tier level to isolate each layer of the application so that complexity of integration will be reduced, and maintenance will be very easy.
Used Spring AOP for solving crosscutting concerns like keeping logged data and transactions details etc.
Used Spring Batch for processing large amount of data like transaction management, job processing, resource management and logging.
Secured the API's by implementing Oauth2 token-based authentication/authorization scheme using spring security.
Used Hibernate ORM framework as persistence engine and wrote Hibernate Queries to automate the mapping between MariaDB database and Objects in Java.
Developed the monolithic application and involved in migrating existing monolithic application in to Micro Service Architecture based RESTful Service and deployments were done on AWS.
Designed and developed Micro Services business components using Spring Boot.
Developed Restful Micro Services using Spring Rest and MVC, for OSS services.
Worked on loading files to cache (JVM in-memory) and made application to consume that data through Restful endpoints.
Focused on Test Driven Development there by creating detailed JUnit tests for every single piece of functionality before writing the functionality.
Worked in Agile TDD environment using SDLC tools like GIT, Jira, Jenkins, Gradle for build packaging and deployments of the application components.
Used Log4j for debugging the application at all layers of application.
Used thyme leaf template to develop HTML5 pages.
Used EhCache framework in application to store and consume small amount of data through application to avoid unnecessary DB calls.
Good amount of work done on Reactive forms or Web Forms in Angular and their Validations
Environment: Java (JDK 1.7, 1.8), J2EE, HTML5, CSS3, JavaScript, CSS3, Angular JS, Spring Framework, Spring MVC, Spring Security, Spring Boot, Hibernate, JDBC, AWS, RESTful, OAuth, XML, MariaDB, JUnit, TDD, Log4j, Agile/Scrum Methodology, Maven, Gradle, JIRA, GitHub, SQL, EhCache.
Client: Cigna Healthcare, Windsor, CT Feb 2018 – Sep 2019
Role: Java Full Stack Developer
Description: One view is a web-based application helping Customer Services people to view Benefit Plan information for Customers, health care providers. The application helps to resolve; track customer queries online by reducing overall time. The current project is reengineering the old application by replacing outdated Cordiant service layer with Restful Services and Spring Integration framework improving performance and scalability.
Responsibilities:
Involved in various phases of Software Development Life Cycle (SDLC) of the application like Requirement gathering, Design, Analysis and Code development and understanding of business requirements and implement the process using Agile (Scrum) methodology.
Involved in Daily SCRUM meetings and SPRINT Meetings like Showcase, Retrospect and Planning meetings.
Used Java 8 Lambda expressions and functional interfaces, wherever possible.
Implemented the front-end using HTML 5, JSF, CSS3, Bootstrap, jQuery, AngularJS/Angular2 and ReactJS.
Created responsive web pages using Bootstrap and wrote client-side application in a clean MVC model using Angular JS.
Consumed RESTful Services with Angular JS $http Services.
Developed Micro Services based architecture to enable the application to be deployed on AWS.
Implemented the application using Spring IOC, Spring MVC, Spring Boot.
Involved in batch processing using Spring Batch framework to Import data to database, after receiving a file from different Processors.
Used Mybatis to manage persistence layer of the application.
Migrated existing monolithic application into Cloud environment using Amazon Web Services.
Worked on the application which was designed on Struts Framework.
Testing xml output using Advanced REST Client or POSTMAN.
Used GitHub as Version Control tool, Track it for tracking and STS as IDE.
Used Maven as build automation tool and responsible for Continuous Integration (CI) and Continuous Delivery (CD).
Performed GUI, Functional and Regression testing by automated using Selenium and Jenkins.
Implemented Core Java concepts like Multithreading, Concurrency, Exception Handling and Collections wherever necessary in the application.
Developed SQL Server Stored Procedures, Tuned SQL Queries.
Using Maven to build the application and Writing Test Cases for Unit Level Testing using JUnit.
Interacting and participating in the meetings along with product owner and clients to understand their needs and propose design to the team to implement the requirement.
Involved in Defect fixing and maintenance.
Environment: Java 1.8, J2EE, JSF, XML, HTML5, CSS3, JavaScript, JSP, Bootstrap, jQuery, AJAX, AngularJS/Angular2, ReactJS, Spring, Spring IOC, Spring AOP, Spring Batch, Spring Boot, Spring Security, Spring MVC, OAuth, SQL, Restful, Log4J, Amazon Web Services (AWS), Docker, Micro Services, Unix Shell Scripting, GIT, Jenkins and STS, Advanced REST Client, Junit.
Client: Avaya Communications, Dallas, TX June 2017 – Feb 2018
Role: Full Stack Java Developer
Description: Developed and maintained an online customer service system. This project involved implementing an online database for the users to enter technical problems and request service. The software allotted the requests to the technical staff depending on their area of expertise and recorded the amount of time required to service the requests. Online summary of the various requests and time taken for each were provided to facilitate faster response to future customer requests. The system allowed users to check the status of their requests using an online interface and provided notifications to the user via email once the request is satisfied.
Responsibilities:
Participated in all phases of development, analysis, design, program analysis, programming, debugging, testing, documentation, delivery, deployment, maintenance and implementation or coding.
Developed Spring Application using Spring Core, Spring AOP, Spring Batch, Spring Security, Spring DAO.
Extensively worked on Java server-side programming using Spring MVC, Servlets and JSP.
We used Multithreading for thread safe blocks in this application to improve the performance.
Used various Core Java concepts such as Exception Handling, Collection APIs to implement various features.
Extensively used spring core by configuring and using Spring Beans Filters, servlets and server-side programming.
Used Spring JDBC template to retrieve the data to connect and execute query and represented the data in the form of tree which has seven hierarchies and implemented drag and drop functionality to it.
Created branding in the web UI front end using CSS classes for web pages, including the design and layout.
Developed UI using HTML, CSS and JQuery to display the data on the client side.
Built HTML templates for high traffic and complex data driven websites and building blocks of HTML pages.
Designed and developed middleware application using spring core framework.
Used jQuery, Ajax for service calls on pages to interact with the server for information.
Involved in the creation of interface to manage Attributes Using JavaScript, jQuery for user interactions in pages.
Developed SOAP web services using Apache CXF web services and Spring framework and its core features.
Wrote SQL, PL/SQL and stored procedures, packages as part of database interaction and also Involved in developing SQL queries, triggers, functions, DML and DDL statements to accomplish select/insert/update/delete.
Developed and prepared test cases and performed unit testing with Junit and following Test Driven Development. Design, Analysis and Unit testing documents related to every Modules while Developing each module.
Used Jenkins for the automatic build process and also used for integration testing and deploying software.
Debugged all look and feel issues in the target browsers, in conjunction with quality assurance.
Used Maven for compilation, documentation, reporting, distribution and building JAR, WAR and EAR files.
Environment: Spring MVC, Spring Core, Spring AOP, Spring MVC, Spring DAO, Batch processing, Multithreading, Exception Handling, Collection API, JSP, Servlet, JDBC, JMS, JQuery, HTML, CSS, AJAX, SQL, PL/SQL, MAVEN, Jenkins, JUnit, JMS, J2EE, Apache CXF.
Client: Enterprise Rent-A-Car, St. Louis, MO July 2016 – June 2017
Role: Java Developer
Description: Enterpirse.com is rental car website where customer can make car reservation through online. It has more than 5000 locations in US and more than 3000 locations worldwide. This website is developed in multi languages English, French and Germany. Customer can reserve, modify and cancel reservation through online.
Responsibilities:
Involved in Requirement Analysis, Design, Development and Testing of the risk workflow system.
Involved in the implementation of design using vital phases of the Software development life cycle (SDLC) that includes Development, Testing, Implementation and Maintenance Support in WATER FALL methodology.
Created user-friendly GUI interface and Web pages using Struts, JSP, HTML, CSS, AJAX, JQuery and JavaScript.
Responsible for designing, coding and developed the application in J2EE using Struts MVC.
Implemented Struts framework (Action & Controller classes) for dispatching request to appropriate classes.
Used simple Struts Validation for validation of user input as per the business logic and initial data loading.
Achieved synchronization of multiple threads through Multithreading and Exception Handling.
Extensively used JSON to parse the data from server side to satisfy the business requirement.
Developed Struts Action Forms, Action classes and performed action mapping using Struts.
Developed batch job using EJB scheduling and leveraged container managed transactions for highly transactions.
Involved in developing Web Services to send XML request and reading the response SOAP UI from Java platform.
Used various Core Java concepts such as Multi-Threading, Exception Handling, Collection APIs, Garbage collections for dynamic memory allocation to implement various features and enhancements.
Consumed Web Services to interact with other external interfaces in order to exchange the data in different forms by using Restful service.
Established Database Connectivity using JDBC for Oracle.
Used Log4J for application logging and notification tracing mechanisms.
Developed the ANT scripts for preparing WAR files used to deploy J2EE components.
Analysis and Bug fixing of the production problems and defects along with enhancements.
Implemented JUNIT test cases for unit testing and Suites for end to end testing.
Used JIRA for tracking the Project Stories and bug fixing.
Used SVN to check-in and check-out and co-ordinate among team members for Version Controlling.
Environment: Java, HTML, CSS, AJAX, JQuery, JavaScript, JSON, XML, Struts, JDBC, IBATIS, Web Services, SOAP UI, Restful, HQL, SQL, JBOSS, Oracle, ANT, Eclipse IDE, JIRA, Tortoise SVN, and UNIX.
Client: NCR Corporation, Delhi, India April 2014 - July 2015
Role: Java Developer
Description: The SCM Release information website is to provide information about the available pre-release and release versions of APTRA components and aggregates as well as their older versions of the pre-release and release APTRA components and aggregates. With this administrator can add aggregates or components and their versions, can view the operations performed on the aggregates or components with details of administrators, can get the update of aggregate/component versions on spot (ad-hoc basis) and can add new administrators.
Responsibilities:
Developed the application using Struts Framework that leverages classical Model View Controller (MVC) architecture.
Designed the user interfaces using JSPs, developed custom tags, and used JSTL Taglib.
Developed various java business classes for handling different functions.
Developed controller classes using Struts and tiles API
Involved in Documentation and Use case design using UML modeling include development of Class diagrams, Sequence diagrams, and Use Case Transaction diagrams.
Implemented Business processes such as user authentication, Transfer of Service using Session EJBs
Backend application layer is implemented using EJB in JBoss environment
Developed PL/SQL queries, Triggers and Stored Procedures to check the integrity of the data and actively involved in tuning SQL queries
Used AJAX for dynamically updating the content
Developed UI pages using HTML, Java script, JSP & Tag libraries
Participated in design and code reviews
Developed JUnit test cases for all the developed modules. Used SVN as version control
Environment: Java, J2EE, JSP, Struts, JNDI, DB2, HTML, CSS, EJB, Web Sphere Application Server, Hibernate, XML, DOM, SAX, ANT, AJAX, Rational Rose, Eclipse Indigo, SOAP, Apache Tomcat, Oracle, LOG4J, SVN.
Client: TekStrom Inc., Bangalore, India June 2012 - Mar 2014
Role: Software Engineer
Description: The objective of this project is to implement a web based front end system which can be used by the employees, managers and higher-level management having specific role permissions for effective processing of day to day business activities in the company like leave management, project management and resource management etc.
Responsibilities:
Performed analysis for the client requirements based on the developed detailed design documents.
Developed Use Cases, Class Diagrams, Sequence Diagrams and Data Models using Microsoft Visio.
Developed STRUTS forms and actions for validation of user request data and application functionality.
Developed JSP’s with STRUTS custom tags and implemented JavaScript validation of data.
Developed programs for accessing the database using JDBC thin driver to execute queries, Prepared statements, Stored Procedures and to manipulate the data in the database
Involved in developing business tier using stateless session bean.
Used JavaScript for the web page validation and Struts Valuator for server-side validation.
Designing the database and coding of SQL, PL/SQL, Triggers and Views using IBM DB2.
Developed Message Driven Beans for asynchronous processing of alerts.
Used Clear case for source code control and JUNIT for unit testing.
Involved in peer code reviews and performed integration testing of the modules.
Environment: Java, J2EE, Struts, JSP, JDBC, EJB, ANT, XML, IBM Web Sphere, JUNIT, DB2, Rational Rose, CVS, UNIX, Clear Case.