- 7+ years of experience in all phases of software development life cycle from requirement elicitation, analysis and design, development, testing and maintenance and full documentation and worked with waterfall, agile and scrum models.
- Expertise in object - oriented analysis, design and development.
- Expert in Core Java, Collections, Multi-Threading, Exception handling, File I/O, Design Patterns, OOPS Concept, Garbage collection, Reflection, AWT and Swings.
- Experience in application servers like JBOSS, Apache Tomcat and Glassfish.
- Expertise in developing and using J2EE frameworks like Struts, Spring, MVC architecture and hibernate.
- Experience in programming with Hibernate Framework, Hibernate Configuration, DAO Design, Object Relation Mapping (ORM).
- Proficient in programming with Spring Framework, Spring IOC Container, Spring AOP.
- Enhanced experience in using different IDEs like the Eclipse, Net beans, Spring Tool Suite, Brackets, Atom and Visual Studio Code.
- Proficient in developing Web Services and its related frameworks like: WSDL, SOAP and REST.
- Experience in developing REST based Microservices.
- Experience in solving software design issues by applying design patterns including Singleton Pattern, MVC Pattern, Factory Pattern, Abstract Factory Pattern, DAO Pattern.
- Expertise in implementation of application software in Web-based environment, distributed n-tier architecture and Client/Server architecture using Core Java, J2EE technologies.
- Strong in Cloud-based infrastructure tools and components like AWS, EC2, S3, Virtual Private Cloud (VPS), and Elastic Load Balancing (ELB).
- Having good experience in build tools like ANT and Maven and logging like Log4J.
- Good work experience on RDBMS like Oracle, MySQL and NoSql like MongoDB, Cassandra.
- Good experience in writing PL/SQL Stored Procedures, Functions, Triggers and Complex SQL's using Oracle, DB2 and MySQL databases.
- Experience in Test driven development (TDD) using unit testing frameworks such as Jasmine, Karma, JUnit, Selenium etc.
- Experienced in using the version controls like GIT, SVN and Bitbucket effectively.
- Used Continuous delivery / Continuous Integration (CD/CI) tools Docker, Jenkins to deploy the application to AWS and used GIT for Version Control of code for incremental development.
- Strong debugging and problem-solving skills with excellent understanding of system development methodologies, techniques and tools.
- Excellent communication, interpersonal and analytical skills and a highly-motivated team player with the ability to work independently.
- Excellent client interaction skills and proven experience in working independently as well as in a team.
- Ability to learn and adapt quickly to the emerging new technologies and paradigms.
Programming Languages: Java (1.8), SQL, PL/SQL, C, C++.
JAVA/ JEE: OOPs, Collections, Exception, String, Garbage collection, I/O, Multithreading, Reflection, JSP2.1/2.0/1.2, Servlets 2.x/3.x, JavaBeans, JDBC, Struts2.x, Hibernate3.x/4.x, Spring3.0/4.0, SOA, JMS2.0, DOM Parsers, AJAX.
Web Services: WSDL, SOAP and REST (JAX-RS, JAX-WS).
Databases: Oracle 9i/ 10g/ 11g / 12c, Teradata, MS Access, MySql, Microsoft SQL server 2005/2008, IBM DB2, MongoDB, Cassandra.
Java Frameworks: Struts 1.x/ 2.x, Spring, Hibernate, Fumigo.
Servers: Tomcat7.x, WebLogic 10.3/9.2/8.1/7.0 , JBOSS.
IDE: IntelliJ, Eclipse, NetBeans, Brackets, Atom, Spring Tool Suite, Visual Studio Code.
Version Control: CVS, SVN, GIT Hub and BitBucket.
Testing Tools: JUnit 4.x, PowerMock, Rest Assured, Jasmine, Selenium, Mockito.
UML Tools/ Build Tools: Gradle, Maven, Jenkins, Rational Rose ArgoUML.
Development/ Design Methodologies: Waterfall, Agile, Scrum, SDLC, RAD, RUP, J2EE Design Patterns.
Operating Systems: All versions of Microsoft Windows, LINUX, Mac, Unix.
Java Tech Lead
- Involved in analysis, detail design, development, bug fixing and enhancement in Agile methodology.
- Involved in daily scrum, sprint planning, retro and refinements.
- Responsible to create multiple microservices using Java, Scala, Spring Boot and Fumigo.
- Consumed Rest services using DataSourceRequest to build requests using BuilderDesign Pattern.
- Use Java 8 features like Functional Interfaces, Lambda expressions, Java Date Time API for processing and orchestrating data.
- Implement encryption and decryption algorithm when transferring data with vendors.
- Use CompletableFutures to achieve parallel processing.
- Implement CircuitBreaker to make the application fault tolerant.
- Responsible to work on new projects as well as migrate legacy services to Java 1.8 and Spring Boot.
- Represent API specs in Swagger and routing in FSM.
- Responsible in writing unit tests using Junits and PowerMock and integration tests using Rest Assured and Wiremock to cover every functional change with positive and negative scenarios.
- Execute L0 PES using JMeter. Identify issues and resolve them.
- Work closely with testing team to identify all the test cases and all the corner cases to test.
- Work with operations team to identify and resolve Production issues.
- Use Sumologic, tealeaf logs and/or DC/OS to analyze the defects.
- Generate SonarQube and Veracode reports to identify flaws, bugs and code coverage.
- Use Spring cloud gateway routing for routing in different environments or percentage based routing or guid based routing.
- Use BitBucket for versioning, JIRA to track stories, bugs, releases and epics and Confluence for documentation.
- Write apache rewrite rules for migration projects.
- Write proxy balancer routes for necessary instances.
- Write logs using Spring Boot LoggerFactory.
- Used ServiceNow for tracking production tickets, incidents and changes.
- Use CyberArk for password management and intergate it into code to avoid unnecessary code changes every single time.
Environment: Java 1.8, J2EE, Spring Boot, Fumigo 2/3, Swagger, FSM (Finite State Machine), Scala, Maven, Junit, PowerMock, Wiremock, Apache JMeter, Rest Assured, Sumologic, DC/OS, Marathon, SonarQube, Veracode, Veracode Greenlight, Rest API, XML, JSON, YAML, Spring Cloud, Apache Tomcat, BitBucket, SQLDeveloper, JIRA, Confluence, ServiceNow, CyberArk, Agile, Scrum etc..
Java Full Stack Developer
- Involved in analysis, detail design, development, bug fixing and enhancement in Agile methodology.
- Involved in daily scrum and sprint planning meetings.
- Implemented feature specific Angular modules and used lazy loading for improved performance.
- Worked with various Angular Wijmo components such as flex grid, flex chart, tree view etc..
- Configured routing in the application for components using Angular Router Module and developed forms using Angular Forms module.
- Worked with NGRX Store, Effects and created various reducers, actions for managing the state in the application UI.
- Created Router guards for role based authorization in the application using Angular Router guards.
- Responsible for designing page layout using HTML and CSS and adding dynamic functionality for each module.
- Responsible for developing and configuring the Spring Configuration classes for business and the persistence layers.
- Extensively used Dependency Injection (IOC) and Developed interfaces to communicate with mid-tier and Data Base.
- Developed new microservices with REST API using Spring boot, Spring webservices to serve customers.
- Involved in developing the persistence layer using Hibernate framework.
- Implemented features like logging and REST exception handling using Spring-AOP module.
- Used Oracle database and performed CRUD operations on the existing as well as new database tables and created connection pool.
- Worked with Apache Camel for messaging routing, http endpoints and used free marker to customize the rest responses.
- Worked with JMS RabbitMQ Queues for sending messages in point-to-point mode also implemented Spring JMS message listeners to create and consume messages across modules.
- Involved in Configuration and usage of Apache Log4J using Splunk for logging and debugging purposes also configured application flows, controlling logic and navigation.
- Performed Test Driven Development (TDD) thereby creating detailed JUnit tests for every single piece of functionality before writing the actual functionality.
- Worked with AWS S3 java sdk to perform operations such as create object, get object, copy object, delete object etc..
- Involved in moving the application to Production.
- Used STS IDE for Spring and Java development and Visual studio code for Angular and Typescript development.
- Developed scripts for build, deployment, maintenance, and related tasks using Jenkins, Docker, Maven.
- Used GitHub as a version control, and JIRA for tracking bugs.
- Configured and deployed the application on Tomcat application Server.
Java Full Stack Developer
- Involved in different stages of Software Development Life Cycle SDLC including analysis, designing, coding, and testing.
- Implemented all web applications with object-oriented principle and design patterns.
- Designed and Developed User Interactive (UI) Web pages using HTML5, React-JS, Bootstrap, CSS, JSX, Axios and Redux
- Created reusable components used across various modules using React-JS, React-DOM, Bootstrap and JSX.
- Developed various React Web UI components(Container and Presentational) using Atom IDE and made backend REST calls using Axios.
- Worked with Redux Forms library to store form state in redux stores and used redux thunk middleware to create action creators.
- Developed unit test cases for various react components using JEST, Enzyme and nock.
- Implemented Redux architecture in the application by developing reducer functions, actions etc..
- Used various webpack plugins and configured loaders in the webpack config for creating bundles.
- Used Bootstrap CSS for dialogs, tabs, date picker, model pop up's and advanced components to implement UI model.
- Create, edit and maintain sites implementing responsive design & themes using front-end development frameworks including Bootstrap.
- Developed routing components in the application using react-router module for various components and views.
- Developed the DAO layer for the existing applications using Spring, Hibernate and developed various business logic and reports using HQL and Hibernate Criteria.
- Consumed Restful web services using apache Http Client for the data coming from external systems.
- Used Spring Core Annotations for Dependency Injection Spring DI and Spring MVC for REST API s.
- Used Spring Boot for developing REST Microservices an used Spring Data Mongodb for data persistence.
- Repeatedly worked on AWS Cloud platform and its features which include EC2, VPC, AMI, RDS, SES, S3, Cloud Formation, Cloud Front, and Cloud Watch.
- Wrote NoSQL queries and procedures to fetch the data from MongoDB.
- Used JIRA and Log4J for project management, tracking and monitoring errors.
- Updated legacy Ant build infrastructure to new Gradle based build system, enabling more robust test, build and release procedures.
- Integration testing, bugs fixing, handling change requests and code reviews.
- Used extensively Eclipse in development and debugging the application.
- Created and configured the continuous delivery pipelines for deploying microservices using Jenkins CI server.
- Followed Agile Software Development with Scrum methodology.
- Worked on Angular JS to create single page applications (SPA) using its features like routers, Controllers, Services, Directives
- Used Angular JS to implement rich functionality in various pages: form validation, CRUD, grid, search, sort, pagination, multi-selection, tags-input, advanced directives, authentication, server-side proxy, unit tests, cloud integration, slide pages, users switch etc.
- Used AJAX call for front-page request handling and partial refreshing, also used JSON for data transform
- Developed Application using J2EE patterns such as Singleton, controller, factory, facade, DAO.
- Designed and Developed the entire application using Spring MVC framework and Spring AOP components for intercept function call.
- Extensively worked on wiring the application using Spring Framework. Used Object Relational Mapping tools for ORM such as Hibernate for Data Mapping.
- Used Hibernate Query Language ( HQL ) and Custom Queries to querying data from Oracle Database In DAO.
- Used JPA/Hibernate to communicate with data layer and XML/JAXB to read XML data.
- Implemented web-services using JAX-WS, also Restful web services with JAX-RS using Jersey framework
- Designed and implemented XML parsing for the XML's that are sent and received from the SOAP web services.
- Implemented Service Oriented Architecture (SOA) by invoking multiple SOAP based Web Services and generating client using JAX-WS .
- Implemented REST services, getting JSON response and parsing them to get the required information.
- Used RESTful network communication protocol to consume a web service, getting JSON response and parsing them to get the required information.
- Created tables, triggers, stored procedures, SQL queries, joins, constraints & views for Oracle database using TOAD .
- Built an application using Gradle and Deployed on JBoss application server.
- Developed Junit and Mockito test cases for unit testing in Test Driven Development( TDD )and u sed SVN for version control.
- Gathered and analyzed the requirements and converted them into User Requirement Specifications and Functional Requirement Specifications for the designers and developers to understand them as per their perspective.
- Involved in Analysis, Design, Implementation, and Testing of the project.
- Responsible to create and modify UML diagrams and flow charts.
- Responsible to develop java programs specific to client requirement.
- Responsible to develop front-end using Java AWT and swings, Object Oriented Programing concepts, multithreading, exceptions and collections.
- Developed web components using JSP, Servlets and JDBC.
- Coded JDBC calls in the servlets to access the MySql database tables.
- Responsible to create tables with required dependencies and write queries and stored procedures.
- Generate SQL Scripts to update the parsed message into Database.
- Involved in fixing defects and unit testing with test cases using JUnit.
- Developed user and technical documentation and r esponsible to prepare documentation.
- Developed stored procedures and triggers in PL/SQL.