Email : firstname.lastname@example.org
Linkedin Id : linkedin.com/in/vidyasagar-gali-21890b297
Visa status : Green card
Sr. Java FullStack Developer
Around 11 years of Professional experience in all phases of Software Development Life Cycle (SDLC) including Requirement Gathering, Analysis, Design, Development, Windows system programming, Testing and Maintenance of web-based applications using JAVA/J2EE technologies.
Experience in Spring modules like Spring Boot, Spring DAO, Spring IOC, Spring security, Spring web flow, Spring MVC, Spring Cloud, and Spring AOP.
Experience in test driven development, pair programming, agile methodologies and waterfall methods including SCRUM and KANBAN.
Expertise in Core java concepts likes OOPS, Data structures & algorithms, Generics, Collections, Multithreading, Exceptional handling, I/O, Serialization and Java.Lang Package.
Experience in developing Microservice to provide Restful API utilizing Spring Boot with various data persistence frameworks such Hibernate, JPA and messaging engines.
sExperience in OOPS and OOAD concepts, Java, Java EE (JSP, JDBC, Servlets, EJB, JNDI), Jenkins, Log4J, JMS, XML, and web services like RESTful, SOAP, WSDL and Axis.
Experience in utilizing Java 8 features like Lambda expressions and Stream API for Bulk data operations on Collections which would increase the performance of the Application.
Experience building large-scale web services, Microservices based applications in the cloud environment.
Expertise in web and application servers like WebSphere, Web Logic, JBoss, Apache Tomcat and Glass Fish.
Skilled in using IDE tools such as Eclipse, IntelliJ IDEA and Spring Tool Suite.
Experience in various messaging systems like JMS, Rabbit MQ, Active MQ, Kafka.
Experience in workflow implementation using CAMUNDA BPMN processes implementation.
Experience in NoSQL databases including CASSANDRA, MongoDB for the cluster management with Apache KAFKA as messaging system.
Experience in relational databases like Oracle, SQL, DB2, PL/SQL, PostgreSQL, SQL*Plus, MySQL, procedures, and functions and created web service interface for Java based runtime environments.
Expertise in Swagger, AWS cloud platform which includes services like S3, EBS, VPC, ELB, EC2, AMI, RDS, Glacier, ELASTIC BEAN STALK, Route 53, ELK, EMR, LAMBDA, Cloud Front, Cloud Formation, Cloud Tail security groups and deploying applications in AWS as EC2 instances.
Enhanced user experience by designing new web features using MVC Framework like Express JS and Node.js.
Experience in working with MEAN and MERN stack technologies.
Expertise in Windows, UNIX, OSX operating systems and both Microservices and Monolithic based architecture.
Experience in working with different operating systems like Windows and UNIX/Linux.
Expertise in Process Improvement and Continuous Integration using Bamboo and Jenkins, and Code Refactoring and TDD (Test Driven Development).
Experience in reviewing the code by using SonarQube.
Experience in various cloud technologies like AWS, Azure, PCF.
Experience in writing build scripts using Ant, Maven, Gradle and CI/CD tools like Jenkins, Docker, Kubernetes.
Expertise in implementing Web services, Microservices, AWS, Docker & JMS for the synchronous and asynchronous connection between two applications running in different servers.
Experienced in using tools like Jasmine, Karma to create unit test cases and test individual functions/ modules for Angular applications.
Experience in using version control tools like Rational Clear Case, Tortoise SVN, CVS, Git, and GitHub.
Experience in using logging frameworks like Log4J and SLF4J for managing application logs and capturing runtime exceptions; monitoring and tracing through tools like Splunk, Grafana, Zipkins.
Expertise in end-to-end testing using Mockito, Junit.
Experience bug tracking tools like JIRA, QC ALM.
Experience in Existing Applications with a Redis Cache.
Expertise in using IntelliJ, Eclipse, MySQL Workbench, DBeaver, Postman, Curl, Swagger and VS Code for the complete development in the applications.
Diligent and highly enthusiastic professional with strong technical, analytical and communication skills
Excellent Written, Analytical Skills, Verbal Communication Skills with a customer service-oriented attitude and can quickly adapt to new environments & technologies.
C, C++, Java/J2EE, SQL, PL/SQL, Python
J2EE, EJB, Servlets, JSP, JSTL, JAX-RPC, JDBC, JNDI, JMS, JAXB, JUnit, Mockito, AWT, Spring MVC, Hibernate, Spring AOP, Spring DAO, Spring Core, Spring Security, Spring REST, Spring Boot, Spring Cloud, JPA, Log4j, Apache Kafka.
Spring, Hibernate, MEAN Stack
HTML5, XML, CSS3, Bootstrap, JSP, Ajax, NodeJS, Type Script, Express, ReactJS, AngularJS, ReactNative Angular 2/4/6/7/8/9/10/11/12, Redux, Flux, ECMA Script
REST, SOAP, WSDL
Apache Tomcat, WebSphere, WebLogic, Jboss
Eclipse, NetBeans, IntelliJ, IBM RAD, WSAD
Oracle, DB2, SQL, PostgreSQL, MySQL, NoSQL – MongoDB, Cassandra
Windows, MacOS, Unix, Linux (Ubuntu, Red Hat)
CVS, Clear Case, SVN, GitHub, Bitbucket
Agile, Scrum, Waterfall, TDD.
MS Office, MS Visio, Swagger, Postman, HP ALM, JIRA, Junit, Mockito, Log4j
Maven, Gradle, Ant, Jenkins.
Azure, AWS, EC2, S3, RedShift
Discover Financial, Riverwoods, Illinois Sept 2022 – Till Date
Sr java full stack Developer
Worked in a highly dynamic AGILE environment and participated in scrum and Sprint meetings. Participated in Iteration planning, requirements analysis, design, coding, testing, and documentation.
Implemented logging library using Angular 9 to share components and services between the libraries.
Developed http requests using Rxjs observables to communicate between server and client with Angular 9.
Used OOPS concepts like Encapsulation, polymorphism, collections, and multithreading.
Worked on reading and writing to/from the files by using newly introduced Java 11.
Used Java 1.8 Method References feature to point to methods by their names and used functional Interfaces.
Used Java 1.8 features like Lambda expressions and Stream API to support functional-style operations on streams of elements.
Used Web services for sending and getting data from different applications using SOAP messages.
Integrated Spring Boot Hibernate and JPA framework.
Converted a monolithic app to microservices architecture using Spring Boot using 12-factor app methodology. Deployed, Scaled, Configured, wrote manifest file for various Microservices in PCF.
Migrating existing application into micro services architecture using Rest APIs, spring boot, Spring Cloud config Netflix oss (eureka, zuul, hystrix) and AWS.Generated Metrics with method level granularity and Persistence using Spring AOP and Spring Actuator.
Developed application using Spring MVC, Spring Boot, JSP, JSTL (Tag Libraries) and AJAX on the presentation layer, the business layer is built using spring and the persistent layer uses Hibernate.
Used Microservices to ensure the scalability of application on cloud infrastructure.
All the functionality is implemented using Spring IO / Spring Boot, Thyme leaf and Hibernate ORM. Implemented Java EE components using Spring MVC, Spring IOC, Spring transactions and Spring security modules.
Led the design and implementation of Single Sign-On (SSO) solutions for multiple enterprise applications, enhancing user experience and security.
Collaborated with cross-functional teams to integrate SSO with third-party identity providers such as OAuth, SAML, and OpenID Connect, ensuring compatibility and adherence to industry standards.
Conducted performance tuning on Scala applications, identifying and addressing bottlenecks to achieve optimal runtime efficiency.
Utilized the Akka framework in Scala to develop highly concurrent and distributed systems, improving application responsiveness and scalability.
Developed web applications using the Play Framework in Scala, achieving improved development speed and enhanced scalability compared to traditional Java web frameworks.
Configured monitoring solutions using OpenShift metrics and Prometheus for real-time insights into application performance.
Implemented centralized logging using tools like Elasticsearch and Kibana for efficient troubleshooting and analysis.
Successfully transitioned from Java development to Golang, bringing a strong foundation in object-oriented programming and software engineering principles.
Led the design and development of scalable, high-performance applications in Golang, contributing to the modernization of the tech stack.
Architected and implemented microservices using Golang, breaking down monolithic applications into modular and independently deployable services for improved scalability.
Developed microservices based independent API using REST to connect with several databases like Oracle, Postgres, MonogDB (NoSQL).
Used MySQL database and written number of SQL queries for retrieving the data and validated that data against the business rules.
Orchestrated the deployment and management of containerized Java applications on Tanzu Kubernetes Grid, optimizing resource utilization and ensuring seamless scalability.
Architected and developed microservices using Spring Boot in a Tanzu environment, leveraging Tanzu Application Service (TAS) for streamlined development, scaling, and deployment.
Spearheaded the development of high-performance APIs using Golang, achieving low latency and efficient data processing.
Established end-to-end CI/CD pipelines for both Java and Golang applications, integrating Tanzu Build Service to automate container image builds and deployments.
Successfully integrated the Drools rule engine into a Java-based enterprise application, enabling dynamic and real-time decision-making capabilities.
Designed and implemented complex business rules using Drools to automate decision processes and improve overall system efficiency.
Led the development of a user-friendly rule authoring interface, allowing business users to define and modify rules without direct developer involvement.
Established rule versioning and management processes to ensure traceability and maintainability of rules over time.
Led the design and implementation of robust relational database schemas using PostgreSQL, ensuring data integrity and optimal performance.
Utilized tools like pgAdmin or DBeaver for database modeling, entity-relationship diagrams, and schema visualization.
Developed Java applications with seamless integration to PostgreSQL databases, leveraging JDBC or Hibernate for efficient data access.
Implemented connection pooling to enhance database connection management and optimize resource usage.
Conducted thorough analysis of database queries, identifying and optimizing bottlenecks to improve overall system performance.
Utilized PostgreSQL EXPLAIN and ANALYZE features to fine-tune query execution plans.
Successfully containerized Java applications using OpenShift, leveraging Docker containers and Kubernetes orchestration for efficient deployment and scaling.
Designed and implemented Kubernetes Deployment and Service configurations for seamless application lifecycle management.
Involved in installing modules and libraries using Node Package Manager (NPM).
Used MAVEN as a Build Process and used generating Documentation, Reporting, and adding Dependencies.
Implemented CI/ CD pipelines using Jenkins and build and deploy the applications.
Worked on Swagger API and auto-generated documentation for all REST calls.
Created a fully Automated Build and Deployment Platform and coordinating code builds, promotions and orchestrated deployments using Jenkins and GIT.
Designed and implemented complex workflows using Camunda BPMN, orchestrating seamless business process automation and improving overall operational efficiency.
Integrated Camunda BPM into Java-based applications, leveraging the Camunda Java API to facilitate communication between business processes and custom Java components.
Developed custom task listeners in Java to enhance event handling within Camunda BPMN processes, allowing for tailored execution based on specific business events.
Setup and built AWS infrastructure various resources, VPC, EC2, S3, Dynamo DB and RDS in Cloud Formation JSON templates.
Designed, developed, and deployed Java applications on Google Cloud Platform, leveraging GCP services for scalable and reliable solutions.
Integrated Java applications with GCP's Cloud Storage, Cloud Pub/Sub, and Cloud Functions to build robust and event-driven cloud-native solutions.
Collaborated with DevOps teams to orchestrate continuous integration and deployment (CI/CD) pipelines on Google Cloud Build, ensuring automated and efficient release processes.
Developed BDD tests using cucumber by writing behaviours and step definitions. Developed required selenium support code in java for cucumber.
Implemented automation using selenium webdriver, Java, selenium grid, Cucumber, maven.
Designed and built security architecture using AWS Lambda, AWS API Gateway, AWS Cognito and AWS STS.
Implemented AWS IAM for managing the credentials of applications that runs on EC2 instances. Creation of REST Web Services for the management of data using Apache CXF.
Using APIGEE configuration and generated proxies service discovery definition, telemetry definition, logging, and security.
Spearheaded the migration of a monolithic Java application to a microservices architecture on Amazon Web Services (AWS), leveraging services such as Amazon EC2, Amazon RDS, and Amazon S3.
Implemented scalable and fault-tolerant solutions using AWS Auto Scaling, Elastic Load Balancing, and AWS Lambda.
Designed and implemented distributed systems in Java, employing AWS technologies like Amazon SQS and Amazon SNS to enhance communication and decouple components.
Optimized system performance by implementing distributed caching with AWS ElastiCache.
Involved in System Testing, Integration Testing, and Production Testing on WebLogic Server.
Worked with Docker for creating Docker images using Dockerfile and DockerCompose file.
Restful Web services for other systems to interact with our system and secured the service with Spring-Security Oauth-2.0.
Implemented to reprocess the failure messages in Kafka using offset Id.
Developed integration modules for disparate clients using Apache Camel.
Development of Continuous FTP service of encrypted large files between distributed systems using Apache Camel.
Developed comprehensive test suites for validating rule behavior and ensuring the correctness of decision outcomes.
Implemented unit tests and integration tests using tools like JUnit to validate the integration of Drools within the application.
Created Docker container images by tagging and pushing the images and worked on the infrastructure using Docker containerization.
Worked with OpenShift platform in managing Docker containers and Kubernetes Clusters.
Involved in developing internal application connecting to MongoDB (NoSQL) and Elasticsearch.
Deployed the Spring Batch application on Pivotal Cloud Foundry (PCF) instance and bind the services like Java and PostgreSQL services.
Developed unit test cases using Mockito framework for testing accuracy of code and logging is done using SLF4j + Log4j.
Used POSTMAN to check the json data received from the services.
Worked on unit test cases using Karma and Jasmine on Client side.
Wrote comprehensive Unit test cases using Junit and used JIRA for bug reporting.
Developed story/task by following TDD/BDD and Pair programming concepts.
Environment: Java 1.8/11, Spring Batch, Spring Boot, Spring MVC, Microservices, AWS, Hibernate, JSON, RESTful, Eclipse, MAVEN, JUnit, APIGEE, Jenkins, Kafka, MongoDB, NPM, NoSQL, Agile Methodology, GIT, PCF, Docker, Kubernetes and Log4J, Swagger, Angular 9, HTML5, CSS3, JQuery, Node.JS, React.JS, ReactNAtive, TypeScript, AJAX, POSTMAN, Bootstrap, Mockito.
John Deere Inc, Moline, IL Jun 2020 – Aug 2022
Sr. Java FullStack Developer
Involved in all phases of Software Development Lifecycle (SDLC) using agile development methodology.
Actively participated in the daily SCRUM meetings with our team to produce quality deliverables within time.
Designed and maintained decision tables and templates in Drools Guvnor, facilitating the easy modification of business rules by non-technical stakeholders.
Conducted training sessions for business analysts on writing effective rules using Drools decision tables.
Developed user interface by using the React.JS, ReactNative, Flux for SPA development.
Implemented client-side Interface using React.JS.
Successfully incorporated Scala into existing Java applications, leveraging its concise syntax and functional programming features to enhance code readability and maintainability.
Implemented functional programming principles in Scala, such as immutability and higher-order functions, to enhance code modularity and support parallel processing.
Used React.JS virtual DOM instead of regular DOM for improved efficiency and performance.
Working with React Flux architecture for developing Single Page Applications SPAs.
Worked on responsive design and developed a single ISOMORPHIC responsive website that could be served to desktop, Tablets and mobile users using ReactNative, ReactJS.
Maintained Interface compatibility and concurrency in the project using Java 1.8 new features like default, static methods, and Concurrency API.
Implemented Kubernetes-native patterns for container orchestration, leveraging Tanzu Mission Control to manage clusters efficiently and ensure high availability of applications.
Implemented interoperability between Golang and Java components, optimizing the strengths of each language to achieve a cohesive and efficient application architecture.
Collaborated with DevOps teams to ensure seamless integration of Tanzu clusters and Golang applications into the CI/CD pipeline, fostering a culture of collaboration and continuous improvement.
Led the implementation of serverless components using Java and Cloud Functions on GCP, reducing infrastructure costs and improving overall system agility.
Developed data processing pipelines using Apache Beam in Java on GCP Dataflow, enabling real-time and batch processing capabilities for large datasets.
Implemented stored procedures and functions in PostgreSQL to encapsulate complex business logic and enhance data processing efficiency.
Utilized PL/pgSQL or other supported procedural languages to achieve database-side processing.
Led data migration efforts, importing and exporting data between PostgreSQL databases and other data sources.
Integrated Apache Spark with Scala for real-time data processing, enabling efficient and scalable stream processing for large datasets.
Designed and implemented microservices using Scala, promoting code reusability and facilitating the deployment of independent, scalable components.
Implemented comprehensive unit and integration tests using ScalaTest and other testing frameworks, ensuring the reliability and stability of Scala code.
Designed and implemented user task forms using Camunda Forms SDK, ensuring a user-friendly interface for task execution within the Camunda Tasklist.
Integrated Camunda BPM with external systems using REST APIs, enabling seamless data exchange and synchronization between Camunda processes and external applications.
Implemented event-based gateways in Camunda BPMN to model complex decision logic and improve the flexibility of process execution based on external events.
Designed and implemented ETL (Extract, Transform, Load) processes for seamless data integration using tools like Apache NiFi or custom Java code.
Collaborated with DevOps teams to define and implement continuous integration and deployment (CI/CD) pipelines for Java applications interacting with PostgreSQL.
Worked on versioning and migration strategies to manage database schema changes effectively.
Developed robust and efficient APIs in Golang, enhancing interoperability and facilitating seamless communication between different components of the system.
Leveraged Golang's concurrency features to optimize application performance, resulting in improved response times and resource utilization.
Successfully integrated Golang components with existing Java systems, ensuring smooth interoperability and minimal disruption to ongoing operations.
Used Java 1.8 features like stream and Lambda expressions.
Used microservice architecture, with Spring Boot-based services interacting through a combination of REST and MQ or Apache Kafka message brokers and leveraging AWS to build, test and deploy microservices.
Used Spring Core Annotations for Dependency Injection Spring DI and Spring MVC for REST API s and Spring Boot for microservices.
Played a key role in the migration of a monolithic Java application to a microservices architecture on OpenShift, improving scalability and resource utilization.
Implemented service discovery and communication patterns using OpenShift Services and Routes.
Led the containerization effort using Docker for Java applications and orchestrated them using Amazon ECS, enhancing scalability and ease of deployment.
Implemented continuous integration and continuous deployment (CI/CD) pipelines with AWS CodePipeline and AWS CodeDeploy.
Applied to the business modules integration using Spring Boot, Cassandra DB.
Worked with Cassandra Node Connector for database persistence to interact with Cassandra (NoSQL).
Used Node Package Manager (NPM) to manage modules & used it to install useful tools as Grunt, and Express.
Involved in using flux architecture in ReactJS for building client-side web application.
Developed critical components of the application including spring forms, Spring controllers, JSP views, and business logic and data logic components that include Hibernate Entities, Spring-Hibernate DAO and Spring models following MVC architecture.
Implemented microservices using Spring boot, and enabled discovery using Netflix eureka server.
Developed the application using industry standard design patterns like Service Locator, Singleton, Business Delegate, MVC, and Factory Pattern etc for re-usability.
Development to expose User Profile services to other departments users using RESTful webservices.
Configuring infrastructure for deployment of Middleware application through APIGEE.
Implemented CI/CD pipelines using Jenkins and build and deploy the applications.
Used Spring MVC Transaction Management, Spring/Hibernate Batch Transactions, Hibernate cache concepts.
Utilized OpenShift’s auto-scaling features to dynamically adjust the number of running instances based on application load.
Implemented and fine-tuned load balancing strategies for optimal distribution of traffic across application pods.
Developed data-intensive applications using AWS services like Amazon DynamoDB for NoSQL databases and Amazon Aurora for relational databases.
Implemented data streaming solutions using Amazon Kinesis for real-time processing of large datasets.
NodeJS has been used for developing I/O intensive web applications like, single-page application.
Implemented features like logging, user session validation using Spring-AOP module.
Made use of Gradle and Maven for building applications and written structured pom which can be consumed by Jenkins.
Extended Drools capabilities to microservices architecture, allowing decentralized rule execution and enhancing the flexibility of the overall system.
Implemented RESTful APIs for seamless communication between microservices and the Drools rule engine.
Created Unit testcases for CAMUNDA BPMN processes to test the workflow.
Implemented tool to migrate CAMUNDA BPMN processes from one version to another version.
Implemented backend service using Spring, Hibernate and CAMUNDA BPMN workflow engine, UI using angular5 and material design.
Worked on multiple modules and wrote controllers, services, models, dto's, repositories and test cases.
Implemented exception handling in Java Spring boot for REST API.
Research the REST APIs of Azure and Office 365 and integrate them with current code.
Prepare the Azure cloud infrastructure Azure Resource Manager Templates.
Used Azure Functions to integrate applications and run backend process according to schedules without managing the servers.
Designed and implemented ETL (Extract, Transform, Load) processes, utilizing DataStage to seamlessly integrate data from diverse sources into a unified and accessible format.
Collaborated with data architects and business analysts to understand data requirements and implemented scalable solutions in Java within the DataStage environment.
Added Swagger API for Restful services to ease customers interaction with the remote services.
Implemented microservice architecture using spring boot.
Deployed application using Pivotal Cloud Foundry (PCF) CLI and with Pivotal Cloud Foundry, the service binding details are injected from the deployed cloud platform itself.
Involved in Unit Testing and Bug-Fixing and achieved the maximum code coverage using JUNIT test cases.
Gradle build tool is used to deploy the application on the web server.
Implemented to reprocess the failure messages in kafka using offset Id.
Implemented Kafka producer and consumer applications on kafka cluster setup.
Experienced with partition of kafka messages and setting up the replication factors in kafka cluster.
Experienced with Docker container clusters managed by Kubernetes linux, Git, Docker.
Utilized Kubernetes for the runtime environment of the the CI/CD system to build, test deploy.
Developed MySQL queries to implement the select, insert, update, and delete operations.
Used Jenkin pipelines to drive all microservices builds out to the Docker registry and deployed to Kubernetes,
Created pods and managed using Kubernetes.
Wrote unit test cases using tools like Jasmine, Karma to create unit test cases and test individual functions/modules and used material design for UI.
Collaborated with DevOps teams to implement CI/CD pipelines for Golang applications, automating the build, test, and deployment processes for faster and more reliable releases.
Worked closely with cross-functional teams, including frontend developers, DevOps engineers, and QA specialists, to deliver end-to-end solutions.
Demonstrated a proactive approach to learning Golang, staying updated on language features, best practices, and industry trends.
Provided clear and comprehensive technical documentation for Golang code, APIs, and integration processes, ensuring knowledge transfer and facilitating future maintenance.
Implemented CI/CD pipelines using Jenkins and build and deploy the applications.
Leveraged popular functional programming libraries in the Scala ecosystem, such as Cats or Scalaz, to implement common design patterns and ensure code consistency.
Installed, configured, and hosted the Tomcat app servers and Oracle/MongoDB database servers on physical servers (Linux, Windows), and Amazon AWS virtual servers (Linux).
Used Scalable data design for MongoDB and Redis, Caching in MongoDB with Redis Cache using SpringBoot.
Worked on developing Restful endpoints to Cache application specific data in in-memory data clusters like Redis and exposed them with Restful endpoints by using Redis Cache.
Used GIT to push and commit the changes into the codebase and Source tree as a GUI tool on top of it.
Hanover Insurance, Worcester, MA Dec 2018 – May 2020
Sr. Java Developer
Developed business module applications using J2EE technologies.
Developed code in Java which creates mapping in ElasticSearch even before data is indexed into.
Design the Elasticsearch configuration files based on number of hosts available, naming the Cluster and Node accordingly. Using Curator API on Elasticsearch to data back up and restoring.
Build Rest services using NodeJS and ExpressJS and used a full complement of Express, AngularJS, NodeJs, and MongoDB to store and present assessments.
Designed and developed the UI using spring view component, JSP, HTML, CSS, JQuery and AngularJS.
Used JQuery Mobile with HTML5 & CSS3 for laying out pages and reducing scripting.
Developed queues using AWS SQS with JMS for services to subscribe and listen events. Implemented logic to listen and to subscribe events.
Configured and customized the Camunda Cockpit for monitoring and managing deployed processes,