
Experienced Application Developer with a demonstrated history of working in the information technology and services industry. Skilled in Java, Spring, Hibernate,Spring Boot, Microservice ,Rest API , Weblogic, Spring reactive, AWS,Azure Devops,GIT, Angular,Java script,Plsql
Technical Analyst
COFORGESpecialist Software Engineer
LTIMINDTREEAssociate Application Developer
ORACLE FINANCIAL SERVICES SOFTWARESystem Engineer
TATA CONSULTANCY SERVICES
Java

PL/SQL

Microservices

Spring Boot

JPA

Angular

Azure DevOps
.png)
Jenkins

HTML5

Kubernetes

AWS

Kafka

Azure Cosmos DB
.png)
Docker

AWS

Weblogic
Okay. So hi. This is, uh, Shreyam Paul. So I'm basically from, uh, like, West Bengal, Kolkata. So, uh, uh, like, I have experience in total experience around 7 years right now, and apart from that in kind of, like, Java technology, I have experience around 7 years. In term of tech stack, other technology like, uh, Ring board microservices, I have experienced around, uh, 5 plus years. And regarding DevOps, cloud, uh, technology like AWS and Azure, I have experienced around, uh, more than 1.5 years. Also, I have experience in, uh, like, tough around 2 years right now. And right now, I'm working with Cocoa as a Java back end developer. And, yeah, like, I'm working with, uh, Copart, and my client is Walmart. So I'm working with them as directly working with client right now. And, uh, basically, I'm working with their last pandemic.
Okay. So I have to tell my discuss. Okay? Oh, got you then. Yeah. Like, if you talk about, like, uh, discussing that, uh, like, I can say, like, in a typical saga design pattern, basically. So the coordination is basically, what do you say, like, it's crucial to manage the distributed transaction, like, with a central coordinator. And this is because, like, if we talk about the each microservices manages its own database and transaction needs to be broken down into a cylinder smaller and isolated steps that can be rolled back independently if the figure kind of focus in that stuff. So there are, like, 2 types of saga design pattern. Uh, it's there. Like, we have, like, choreography. Like, each microservice mission, uh, to specific events, and the microservice is responsible, uh, to give all those things like that. Of course, like, there's no central orchestrator should be there. So each service should be, like, responsible for knowing which events to act on or, like, which events to image for the next step in sequence. So this works well for simpler workflow. There's another, uh, thing is there in Sagarid and Fireflies which is orchestitant orchestations. Sorry. My bad. And so a central orchestrator is basically or pointer is responsible for, like, initiating or managing each step of the transaction. So the orchestral survey basically invokes each microservices in correct sequence and handles all those compensating transactions. So in orchestral, the orchestrator, the center orchestrator is responsible to manage all those compensating transactions and in case of choreography, each microservice is responsible to do all those things.
Okay. Yeah. Okay. If we talk about, uh, that, uh, like, like, in case of, like, to maintain the code quality, first of all, I have to do the code review, first of all. So implementing to the code review process is essential. Like, if doing the code review will help, like, to catch the bugs or, like, no knowledge sharing at first or stream, all those kind of things will happen. Then coding standard and guidelines should be there, first of all. That is there should be there. And, like, uh, we have some automated testing. We can write automated test cases or functional integration test cases, which will help us to do high level code quality. And, also, we have to settle up the CICD pipeline that is basically ensure that the every change is automatically tested and deployed. And, also, we can do some static code analysis like SonarQ, code climate, or Jetstyle. And, also, you can do for PR programming, like, to encourage 2 developers work together so that the same code allowing the real time feedback faster kind of problem solving. And, also, you have to encourage your your team member to, like, refract the code. Once it will happen, suppose in the free time, you have to help to reduce the technical day to improve the maintainability. All those things should be there. And setting the quality goals, like establish the quality matters such as code coverage target should be 80%. Uh, bug rates all should be there.
Okay. So outline the process. Okay. Okay. So I have to create a Docker file for a dev application. Okay. Output detection. Like in Maven, you can do that. Yeah. Like, first of all, like, uh, in Maven, what we can do, like, creating the Docker file, uh, for a Java application with Maven, it will involve some key steps should be there. First of all, you have to build the Maven process about using first of all, you have to do the build the Maven process, then you have to write the Docker file. There should be every Docker file for a application, and you have to write the Docker file with all those required target territory, all those things. Then we have to ex we have to expand off the Dockerfile step. Like, first stage, what will happen, build stage. Second stage happen, London stage. Right? What will happen from, uh, all those kind of stuff, which will be there. Then build and run the Docker image. Suppose you have to build the Docker image by using Docker build, then my application and run the on Docker container Docker run my Java app. So first, build the image, then run the image. Then I will have to test the application. So these are the basically steps.
Okay. So I have to manage. How can I manage this? Yeah. Like, we can use, like, a Kubernetes cluster kind of like, such kind of API keys. Uh, like, whatever we have to create a like, in case of Kubernetes FortiGRID, like a config dot yml or secret yml we can create. Okay. So Kubernetes has those kind of secret objects that is specifically stored or managed the sensitive data. So how we can use? Like, either we can create a YAML file, or we can go directly to the format, like, like, do those those kind of things. Right? Like, we can directly use, uh, like, YAML file should be there. Right? Uh, like, API version, you have to select, then what is the kind all those things will be there. Like, we have kind of the secret or kind will be config. So in config, you have to give config, but in secret, you have to give secret. And, uh, like, uh, then we have to provide under that data. We have to provide all those things such as username And after doing that, like, uh, we have to like, uh, create the secret file and, uh, we have to apply that, uh, like, what did you say, Kubernetes format like kubectl apply minus f then AML5. So in this way, I guess, we can use all those things.
Okay. Let's, uh, that is, like, uh, first, you have to choose, like, but, uh, first of all, like, uh, what will be the tool for CICD tool? Like, um, uh, we can use, like, Jenkins for or we can use GitLab CICD, or we can directly use, like, GitLab, GitHub Actions, uh, or any other tools. Then we have to, like, design the pipeline for the microservices. Right? And then, uh, like, we have to create use, like, automate the build and test all those things. We have to containerize the micro surveys. Those kind of things, we have to use all those things, like, implement the deployment strategy. We use Kubernetes or any other, like, uh, that is also, like, fine. And we also automate that, yes, you can give me some kind of, uh, like, gate. Also, you can do monitor or log. Those also, you can do.
So here, how we can use to. Okay. What could be that change now? Class loader. It's not the concept of sales message, sales logic. This is not the file. Okay. Basically, I guess it is validating the first principle, single responsibility principle. Like according to single responsibility principle, that class should have only one reason to change, meaning it should have only one responsibility. But this logger class is responsible for 2 different log mechanisms like log to console or log to file. So to add if you want to add in the single, uh, responsibility principle, we should separate the responsibility by creating different for each logging responsible, like, one for kind of, uh, console logger, one for file logger. And so this would make each class responsible for one type of login, allowing them to, like, modify independently. So I think this is the way we can do as per my understanding, like, getting an abstract class and also
Okay. So private sync plus, single data, single channel plus. Okay. Okay. Okay. Okay. So they are here here, they are using double check locking if I'm not wrong. The code is basically used double check locking. So I think the main issue should be the instance should be volatile, I guess. Like, the 5 static singleton instance, that should be volatile if I'm not wrong. So volatile, it will if we declare the instance as a volatile, it will prevent that instance from being partially constructed and ensure that visibility of changes are posted. The given thing is of course, the given thing should be there.
Okay. Uh, finally speaking. Not sure about that. I'm not but I don't know about this.
Resilient transaction management, we can use, like, uh, like, uh, what I can say, like, uh, it should be there. Like, uh, we can use that direct transaction and attention there. And by using a direct transaction annotation, we can manage all those, uh, string boot. Like, this is a string boot annotation and a transactional. And also you can use, like, strategy or those kind of stuff like propagation level in which using the annotation we can do that.
So Sorry. I am not much aware about this, so it's better to not, uh, answer this question. Thank you. Have a nice day.