Nithish Reddy
Email: **********.*****@*****.*** Ph:+1-945-***-****
Professional Summary:
6+ years of hands-on experience in backend development using Java (8/11/17), Spring Boot, Spring Cloud, and RESTful services following Microservices architecture.
Proficient in Java Core concepts, including OOP, multithreading, exception handling, collections (HashSet vs TreeSet), and memory management with G1 GC and JVM tuning.
Extensive experience with Spring Framework features: Dependency Injection, AOP, Spring MVC, Spring Security, and Spring Scheduling using @Async and @Scheduled.
I am skilled in building secure and scalable REST APIs with JWT-based authentication, pagination, error handling (using @ControllerAdvice), rate limiting, and caching.
I worked on distributed Microservices with Eureka Service Discovery, Spring Cloud Config, and API Gateway with security, throttling, and load balancing.
Hands-on expertise in AWS cloud services: EC2, S3, Lambda, SQS, SNS, ECS, EKS, MSK, and deployment automation using Docker, Terraform, and Jenkins CI/CD pipelines.
Experience with asynchronous communication using Kafka (topics and partitions), RabbitMQ, and integration with Spring Boot microservices.
Well-versed in SQL (Oracle, PostgreSQL) and NoSQL (MongoDB, Cassandra) with complex query writing, ETL pipelines using PySpark, and Mongo Atlas Search integration.
Proficient in writing unit and integration tests using JUnit, Mockito, PowerMock, and EasyMock; practiced TDD and BDD with Cucumber and Selenium for UI automation.
Frontend development knowledge using Angular (v14+), React.js, TypeScript, HTML5, Tailwind CSS, and Node.js for creating responsive user interfaces.
Used VisualVM and JProfiler for heap analysis and optimizing application performance, familiar with memory leak resolution and GC analysis.
Built and deployed scalable applications on AWS ECS & Kubernetes using containerized services, CloudFormation, and Infrastructure as Code practices.
Demonstrated expertise in design patterns, including Singleton, Factory, and Builder; implemented DI patterns to handle cyclic dependencies in Spring applications.
Strong experience with Agile methodology, using Jira for sprint planning and task tracking, and Confluence for technical documentation and collaboration.
Certified Accenture Technology Architect with proven leadership in solution design, team management, and delivering enterprise-scale Java applications.
Deep understanding of RESTful API design principles, including HATEOAS, proper HTTP status codes, and idempotent operations.
Implemented custom annotations, compile-time and runtime annotation processing for cleaner, metadata-driven code.
Experience using Stream API for collection processing, filtering, sorting, and mapping with functional programming paradigms.
Handled cross-cutting concerns using AOP for logging, metrics, and exception tracking in distributed microservices.
Implemented advanced thread management using Executor Service, synchronized blocks, Reentrant Locks, and concurrent collections like Concurrent HashMap.
Configured and monitored application logs using ELK stack (Elasticsearch, Logstash, Kibana) and CloudWatch.
Built and deployed content management solutions handling document lifecycle in AWS S3 with metadata in MongoDB.
Integrated SQS and SNS for event-driven architecture in cloud-native systems, ensuring asynchronous processing and decoupling.
Developed and consumed APIs with pagination metadata and HATEOAS links for large dataset handling and client-side flexibility.
Optimized database access using stored procedures, triggers, and indexing strategies for high-throughput systems.
Technical Skills:
Programming Languages
Java (8, 11, 17), JavaScript, TypeScript, Python, SQL
Frameworks & Libraries
Spring Boot, Spring MVC, Spring Cloud, Spring Security, Hibernate, JPA, AOP, JUnit, Mockito, EasyMock, PowerMock
Web & API Technologies
RESTful APIs, HATEOAS, JSON, JWT, OAuth 2.0, API Gateway
Frontend Technologies
Angular (v14), ReactJS, HTML5, CSS3, Bootstrap, Tailwind CSS, NodeJS
Cloud Platforms
AWS (EC2, S3, Lambda, SQS, SNS, ECS, EKS, CloudFormation, MSK), Azure
CI/CD & DevOps Tools
Jenkins, Docker, Kubernetes, Terraform, Maven, Gradle, Git, SVN, GitHub Actions
Databases
Oracle, PostgreSQL, MongoDB, Cassandra, DynamoDB, Mongo Atlas Search
Messaging & Streaming
Kafka, RabbitMQ, JMS, AWS SQS/SNS, EventBridge
Monitoring & Profiling
VisualVM, JProfiler, CloudWatch, ELK Stack
Architecture & Design
Microservices, SOA, MVC, Singleton, Factory, Builder, TDD, BDD
Infrastructure as Code
Terraform, CloudFormation, OpenTofu
Project Management & Collaboration
JIRA, Confluence, Agile/Scrum, Sprint Planning
ETL & Data Processing
PySpark, SQL Joins, Stored Procedures, Triggers
Security
Spring Security, JWT, OAuth2, Role-based Access Control, Rate Limiting
Professional Experience:
M&T Bank - Buffalo, NY July 2024 - present
Role: Sr. Java/J2EE Full Stack Developer
Responsibilities:
Used Agile methodology throughout the software development lifecycle (SDLC).
Involved in Scrum, Sprint review, Retrospective, and Sprint Closure meetings as part of AGILE. Participate in daily SCRUM calls to post the latest information on the deliverables. Contributes process improvements and showcases work in demo/retro meetings.
Led the development and customization of chatbots tailored to specific business needs, incorporating industry-specific terminology, FAQs, and user personas to deliver personalized and intuitive conversational experiences.
UI Development via tools such as HTML5, CSS3, JavaScript and associated frameworks like Dojo, Angular 10
Developing Single Page Applications (SPA) using the JavaScript MVC framework Angular 10.
Defined and developed the application’s presentation layer in UI development with technologies like HTML5, CSS3, Bootstrap, JavaScript, and Angular 10.
Developing web pages using Angular Framework and working with various Angular directives and services, and Filters to build the Applications. Consumed HTTP services using Angular 10 modules.
Used Java 8 features like lambda expressions for communicating between the business layer and the database, stream API for Bulk Data Operations on Collections using both streams and parallel streams.
Used microservice architecture with Spring Boot-based services interacting through REST.
Working on Micro Services with Spring Cloud using Netflix Eureka, REST, and Netflix Feign Client.
Implemented REST-based web services using JAX-RS annotations, Jersey provider.
Used JQuery/JQLite to create drop-downs, status, progress, and menu bar, and other drag and drop components.
Experience in Building Web Service Contracts in SOA Service Manager, Orchestration, and performance tuning.
Implemented Spring Circuit breaker pattern, integrated Hystrix dashboard to monitor Spring micro services, configured Swagger-UI to register Microservices with Eureka server, and monitored service health check from Spring Boot admin console and Spring Ribbon for load balancing.
Upgraded Spring Rest Controllers and Service classes to support migration to the Spring framework.
Used multi-threading to overcome the errors in the process of transactions, handling all threads by the main thread process.
Implemented Authentication & Authorization with Site Minder and Spring Security.
Experience in end-to-end development and migrating the application to Cloud using the Amazon Web Services (AWS), availing services of AWS like EC2, Elastic Beanstalk, Elastic Search, Cloud Watch, Cloud Front, Cloud Formation, IAM, S3, RDS, ElastiCache, SNS, SQS, AMI, and Dynamo DB.
Identified and prioritized business processes for automation using RPA, analyzing workflows to streamline processes, reduce manual intervention, and improve accuracy
Worked on the creation of custom Docker container images, tagging, pushing images, and integration of Spring Boot.
Collaborated with back-end teams to ensure end-to-end integration between AngularJS and Java-based services.
Worked on Spring Data JPA framework to interact with the database and perform CRUD operations.
Worked on Spring batch jobs for updating bulk records for specified intervals of time.
Developed a Spring Boot application with microservices and deployed it into AWS using EC2 instances.
Implemented Spring Circuit breaker pattern, integrated Hystrix dashboard to monitor Spring micro services.
Configured the application to display data from the endpoints in Apps Manager by using Spring Actuator.
Developed aggregation pipelines to perform complex data processing and analytics within MongoDB.
Worked on the implementation of Microservice architecture with Spring Boot-based services interacting through a combination of REST and Apache Kafka message brokers.
Used GridFS in MongoDB for uploading and retrieving files in our Spring Boot microservice application.
Performed data migration and transformation between relational databases and MongoDB.
Created the Docker containers and Docker consoles for managing the application life cycle.
Database design (modeling, DDL, performance tuning, triggers, indexes).
Evaluate code quality using SonarQube & Fortify Tools. Constantly analyze code for reusability & refactoring.
Develop Bamboo jobs to support Continuous Integration / Continuous Delivery of the micro services. Creating repositories in Git and automating the build jobs in Bamboo.
Work with external service providers in understanding their APIs and raise any technical issues in Service Now/Bugzilla.
Resolved bugs/defects in the application by coordinating with team members of the project to ensure a positive outcome using JIRA.
Use Gradle to build the application. Used GIT as version management and GitHub as the repository.
Developed test cases and performed unit testing using Junit, Cucumber, and Jasmine.
Environment: Web Services, Spring 4.x, Hibernate 4.x, HTML5, JavaScript, J Query, AJAX, GWT, CSS3, Angular 10, SOAP UI, XML, Dockers, WSDL, Java1.8, Angular JS J2EE, Mongo DB, Tomcat, Agile Methodology, Spring Boot, JIRA processes, GIT, Design Patterns, MongoDB, PL/SQL, Junit, Gradle, Eclipse IDE, CVS and Oracle 11g, AWS.
Albertsons Companies Inc (ACI), Texas, USA, Mar 2023 – July 2024
Role: Sr Java Full Stack Developer
Description:
The Merchant Supplier Portal (MSP) is a microservice architecture-based cloud-based application that focuses on Components, technologies, and interactions with Albertsons Systems, Partners, and Staff.
It’s built up with an extended Item data model that lays the foundation for an enterprise-level modernization across multiple portfolios. And it will retain key working functionalities from the current Item Data Model (SSIMS) where applicable, while building additional attributes and better capabilities into the new Extended Item model. This model is built with the following major components:
Global Dashboard
Partner
Item (Overview, Hierarchy, Compliance, Selling & Category Attributes, Distribution)
Reports
Invoice
Responsibilities:
Using Spring Cloud Micro Services and its architectural patterns, implementing functional modules such as Global Dashboard, Partner, Item, Reports, and Invoice.
Implementing centralized microservices configurations, Client-side load balancing, API Gateways, Naming server, Fault tolerance, and Circuit breaker.
Involved in the creation of Technical Design Documents and review of Low-Level Design documents as part of the application re-engineering.
Using Spring Core module for performing Inversion of Control (IoC) for Spring beans to be initialization and business logic layer implementation for transaction and error handling.
Enabled the Cross-Origin Resource Sharing (CORS) to access and secure each microservice.
Using GraphQL for querying/mutating the data from/to the backend domain APIs.
Implementing the ORM module for all persistence CRUD operations that are performed on the Data database, MongoDB.
Integrated AngularJS front-end with Java Spring Boot/RESTful APIs for seamless data flow
Writing Native SQL, Criteria queries for complex functionalities, and profiling them for optimizing queries for faster results.
Using the Swagger tool for documenting, versioning, and testing through endpoints of micro services.
Implementing Spring Integration Mail API for sending a success email to the recipients on successful completion of the process/transactions.
Building each of the micro services as Docker images, registering them in the Docker Hub to deploy in Azure Kubernetes Service (AKS) in Azure using YML file, and assuring the CI/CD of the application in the Dev / Test / UAT / Production environments.
Optimized SOAP services for better performance through efficient XML parsing and schema design.
Authenticating and authorizing application users using Spring Security (OAuth2) authentication in securing service-to-service communication among microservices.
Using MockMvc to do Unit testing of functional modules by mocking the required objects and covering code coverage of up to 100%.
Using AppDynamics to analyze the APIs that are taking more time to process and complete to improve the performance of the APIs.
Using SonarQube for continuous inspection of code quality to perform automatic reviews with static analysis of code to detect bugs, code smells, and security vulnerabilities.
Configuring Quartz, Cron jobs to schedule and run as per the scheduled time in performing the scheduled tasks daily to be run.
Implementing Spring Boot Caching in the persistence layer to reduce network calls between the application & DB, for better performance.
Using Confluent Kafka for monitoring, managing data in real time & setting up in the AKS.
Using Jasper Reports IO to generate reports in various formats for the functional modules and as per end-user requirements.
Environment:, Appollo Server, Jasper Reports IO, JIIRA, SOAP, Confluence, Micrometer, Enterprise Grafana, AppDynamics, Azure (AKS, Azure AD, MSAL, SAML 2.0, APIM, Istio, User Groups, SSO, Client ID, Client secret, KeyVault), Windows / LinuxJava11, Spring Core, Spring Cloud Micro Services, Spring Data, Spring Security (OAuth2.0), Spring Integration, Spring AOP, MongoDB, DB2, Angular Js, Docker, Spring Boot, Spring Tool Suite, Confluent Kafka, LogBack, Swagger, Postman, Mockito, Jenkins, Enterprise GitHub, Veracode, JFrog, Gradle, Helmchart, SonnarQube, Veracode, GraphQL
ICICI Bank July 2021 – Aug 2022
Java Developer
Responsibilities:
Collaborated with an Agile Scrum team of developers, testers, the product owner, and the scrum master to deliver high-quality software solutions on time.
Used Java 8 features such as Streams, Lambda expressions, and Optionals in developing backend services for Nationwide’s Customer Account Management (CAM) system, enabling efficient data processing and improved code maintainability.
Integrated GCP services like Cloud Storage, Cloud SQL, and Firestore with a Java back-end for secure data management.
Developed RESTful microservices using Spring Boot, with Spring MVC for request handling and Spring Data JPA for ORM and CRUD operations on relational databases.
Integrated Spring Security for role-based access control and JWT-based authentication, along with Spring AOP for centralized logging, auditing, and exception handling.
Designed and developed RESTful APIs to enable smooth communication between frontend and backend systems, supporting CRUD operations and ensuring efficient data exchange.
Used Angular 8 features such as Dependency Injection, Reactive Forms, and component-based architecture, along with HTML5, CSS3, and Bootstrap, to build user-friendly interfaces for account profile updates and communication preference management.
Implemented Angular routing with lazy loading, route guards, and resolvers to improve application performance and enforce secure, role-based access across modules.
Improved UI performance and responsiveness using OnPush change detection, trackBy in loops, and optimized Angular build configurations for faster load times.
Integrated Apache Kafka to enable asynchronous communication between microservices, supporting real-time data synchronization and improving system scalability and reliability.
Created and tuned PL/SQL procedures, triggers, and joins in Oracle to handle large datasets, ensuring efficient data transformation and improved query performance.
Used MongoDB to store and manage customer profile data, allowing flexible handling of dynamic fields and faster retrieval for read-heavy operations.
Deployed microservices to AWS EC2 and Elastic Beanstalk, improving application scalability and reducing manual server maintenance in a high-availability environment.
Implemented secure file handling for user profile documents using AWS S3, and managed sensitive credentials through AWS Secrets Manager to ensure compliance and security.
Integrated CI/CD pipelines with Jenkins and GitHub Actions to automate build, test, and deployment workflows for Dockerized microservices into Kubernetes clusters.
Used GitHub for source control and version management, managing feature branches, pull requests, and code reviews to support collaborative development and clean release cycles.
Containerized Spring Boot and Angular applications using Docker, creating lightweight, portable images to ensure consistency across development, test, and production environments.
Automated Kubernetes infrastructure provisioning on AWS EKS using Terraform, including cluster setup, node groups, and networking, enabling consistent and repeatable deployments.
Developed unit and integration tests using JUnit5 and Mockito for backend services and implemented frontend testing with Jasmine and Karma for Angular components.
Integrated New Relic for application monitoring, performance tuning, and proactive production issue resolution.
Environments: Java 8, Spring Boot, GCP, Spring MVC, Spring Data JPA, Spring Security, Spring AOP, RESTful APIs, HTML5, CSS3, Bootstrap, Angular 8, Apache Kafka, PL/SQL, Oracle, MongoDB, AWS, Jenkins, GitHub Actions, Kubernetes, Terraform, Docker, GitHub, Junit5, Mockito, Jasmine, Karma, New Relic.
AIG Life Insurance, India Jun 2019 – Jun 2021
Role: Java Developer
Responsibilities:
Designed and developed web interfaces and business logic using Jakarta Struts Framework (MVC architecture), JSP, Servlets, Java Beans, JDBC, AJAX, JavaScript, HTML, DHTML, and XML Technologies.
Development of Action Forms, Action Servlets, and Validating Action Forms in the Struts framework.
Implemented the MVC pattern by using Struts with the help of a controller servlet. Action mappings, actions, and global forwards are defined in the struts-config XML file, and method call implementations are developed in Action.
Responsible for developing GUI / user interfaces using JSP, CSS & HTML for view development for the new enhancements or new modules. Also carried out validations of user requests using JavaScript.
Implemented forms and action classes for the application using EJB and the Struts Framework.
Developed EJB deployment descriptor using XML and used JAXB components for transferring the objects between the application and the database.
Used the Multithreading concept to post data from files to tables, involving the transformation of files from one format to another.
Successfully wrote and implemented SQL Queries, Stored procedures, and Triggers in SQL Server.
Integrated Struts with Hibernate and used the ORM tool Hibernate to interact with the database.
Used Hibernate for mapping Java classes with the database and created queries with Hibernate query language (HQL) and integrated the business layer with the DAO layer.
Used Hibernate as an Object-Relational Mapping ORM tool to store the persistent data and for communicating with the Oracle database, and to customize the data for new applications.
Planned, scheduled, and implemented on Linux boxes as part of proactive maintenance and Secure Shell (SSH) Implementation.
Created and scheduled a Batch process using Java Batch and Spring Batch and implemented job throttling for the Spring Batch process.
Used Spring Batch to develop batch processing to handle bulk requests from the clients.
Used Maven as a build tool to build artifacts from the source code.
Installed and configured IBM WebSphere application server and HTTP web server for development and production environments, and used WebSphere message broker and WebSphere Message Queue for route, transform, migrate, and enhance data.
Develop and implement patch deployment plans used to patch development and production Linux and Windows servers.
Collaborated with QA teams to create automated SOAP service test scripts.
Modified Korn and Bourne shell scripts to automate administration tasks like customizing user environment and performance monitoring.
Used Drools rules engine for defining business rules and Validations.
Implemented the Multithreading feature for processing multiple requests to achieve high performance.
Worked with Core Java concepts like Collections Framework, Multithreading, and Memory management.
Used Log4J to capture the log that includes runtime exceptions, monitored error logs, and fixed the problems.
Environment: Java/J2EE, JSP, CSS, HTML, Servlets, JDBC, JavaScript, SOAP, EJB, RESTful Web Service, SQL loader, ANT, Struts framework, Spring, Spring IOC, Maven, Spring MVC, iBatis, SQL, IBM Web Sphere, Web Sphere Message Broker, Web Sphere Message Queue, Linux, Drools, Multithreading and Log4j.
Education:
Master of Science in Technology Management, Lindsey Wilson College, USA – 2023
Bachelor of Computer Applications, Satavahana University, India – 2021