
With over 7.5 years of experience in designing, executing, and delivering solutions, I specialize in building Web APIs. I have extensive exposure to public sector services, income tax services, and multi-function printer (MFP) solutions. I have implemented small, mid, and large-scale applications, with hands-on experience in all phases of the SDLC.
Engineering Lead
Persistent SystemsSystem Engineer
Acty System India Pvt. LtdJira

Git

SVN

Freshdesk

Postman
As a System Engineer, I was responsible for:
Hello. My name is. I started as a genius opportunity. I work in entry system. India for 4 years. For that, I joined persistent senior software. My current role is, engineering group. My role is mostly advancement, maintenance, for the we test the and, maintaining I have worked with, So second. In usual, I work in that's also. My recent project I'm working with services Apart from, my I'd like
So, we are using 4 usually, Yes. I mean, in, 15 days window and another 15 days. Monthly limits. So for gate, we usually create a Foundry branch Got And did hot pick person recreate The branch of a local branch from the the hit hit what And then 3 Create a PR on that local submit that here? And then once it continue and then it got sent to the humidifier.
So, your database where I know we had some changes with which were related to schema. The for example, I've added The columns, I have added some indexes also. So case where, you know, where I don't Change in particular table What I will do, I was, I was analyzing My little Analyzing the impact where this call of where this table is being used. And, what is the impact And based on that, I was creating that some kind of It's where I was testing, well, Expected behavior after implementing, implementing, So that that is what I will do manually. Apart from it, what I was doing you know, was, once that that might be a case where the table can be used in But that s piece, which which will be hard to hard get I mean, to get which SQS impacted because the
So there are multiple ways we can store the data. We can use SaaS and we can use data, temp data. Uh, so these are some sort of few few options we have to maintain this date. Uh, for this, uh, in my project, we use session for, uh, uh, user user details like user name, user ID, and user, uh, like, user related data. And in in few cases with where I have used view view data or temp data for the traffic data from and manage, uh, managing the state of the data in the SPO.
So in deposit the pattern, uh, uh, we create the interface. That interface, we, uh, I mean, in that interface, we describe the methods. We we define the methods, and then we implement the interface with, uh, our always, uh, our our based on our requirement. Like, for example, if we are having a SQL connection repository for for SQL connection, then we'll create a interface, and then we will implement them based on which SQL connection we want. For example, if we want a MS SQL server connection, if you want we want a MS SQL server connection, if you want Java or Oracle Oracle connection. So, uh, so based on that, we maintain it in that way. So the database also remains a deposit, eastern of ASP dot NET data, and then we use that depository to get our data or to manipulate our data using this depository which we have created.
Super large. So for large so before from this question, what I'm understanding is, uh, is that we have to revert our changes, which we have done in wave applications. So in that case, it is pretty simple. We can revert our PR. Uh, we can, uh, for example, we we have created a full PR and it work most towards it, then all we have to do is to go to the PR and that that will be option that we can revert it. And for that, we can just directly, it will create a revert here, and then it it it it only need to get approved. When the reviewer approve it, we will merge it. And the code will last, uh, change will got reverted.
K. So the main thing which I'm finding that this code, I have it, uh, it is not following solid principle is is single responsibility principle. So here in report, we are we are we are having the print report functionality, then we are waiting for system report. Like, we are giving a printing report functionality, then we have a same in the same class, we are having method for, uh, saving related, which I believe it will be related to, uh, database. So I think we can divide this. We can divide this class, and we can create a subclass, or we can create a interface just for, uh, for for, let's say, print functionality. So So based on the report, we want to, uh, for example, there there can be a certain report, uh, for example, which are only related, for example, which are, uh, related to HR only, which cannot be printed or which are related to the admin only, which cannot be printed. So in that case, if we if we use the report, then it will provide the print function. It will cause a problem. Right? Because we cannot we cannot print that because of security issue. So in that case, what we can do, we can divide this class. We can create a interface or class. Let's say we create a interface. Uh, that interface, we can we can write we we can see print, uh, print, I print report or something like that. And then the those report we want we want to print, we will do that.
So, uh, from the query, if you don't want all the data, we can just, uh, specify which column we want. Like, here, we have to select star from customer where is active is is 1. So if we for example, if we only want certain certain fields like customer name, user ID, or, uh, like, customer ID, something like that. We can specify the column names so it it will be much faster. One more thing which I found that here we are we can use using statement instead of open because what will happen if something goes wrong and, uh, if if exception gets fired at fill, then the connection will get will not get closed because the statement will not get executed. In that case, it it will, uh, the connection will will be open, and the mode connection will open if it will cause an issue in issue in the, uh, in the performance. So we so that one more thing why join found, we we can use using for the connection. Or else, we can use try, catch, and finally, and we can move our tools, uh, code in in finally.
So here I'm what I'm understanding is we have one application, web application, web form application, which is in ASP dot NET. And the issue is that we have we have this application, which is having downtime, for example, it is failing. And, uh, so in that case, it most probably will have written a code in in a way that the the exceptions are not handled properly, which will cause the applications, uh, uh, the applications are down. So I will first start with checking with that, like, whether we have maintained our, uh, exception handling. The one more thing which I found is that, uh, to men minimizing the downtime, we can, uh, we can if if we want, we can move from ASP dotnet to dotnet 6 or from latest, uh, with, uh, latest, uh, preduplication. Uh, let for example, uh, we can do, for example, dotnet 6 or something like that, but it will be a huge change. But for for meantime, what, uh, I think exception handling should be there. Uh, then if in some case, the application is working fine, but, uh, server which we which is is deployed, request response time. Right? So for for particular request, how much the web application is taking time. And if we are having issue in in the server where the application is declared, so I will check whether it it is related to a memory or or something like that. If it's related to memory, then I think, uh, I will I will try to increase the memory of that server. I will try to increase the cache or I will I will check because sometime what happened in in, uh, I had seen a problem where we had 1 server. In the server, that logs file were getting, uh, we have remitted the logs file, uh, but logs file were not getting deleted. And the size of the server was getting, uh, getting increasing. So what happened that server was slowing down. But when we check, the server had, like, 100 MB or 200 MB remaining. So if it's something related to, uh, server sense, then I would do that to increase, uh, user server capacity.
So in this, uh, in in one of my project, what we had to do for SPN collection is that we have created one single phone where we we are having, um, SQL connection. And that SQL connection, we have created, uh, with that, uh, that helper class, we call this database helper, which provide the connection. If we have a if we have any active connection with the required database, then we will return the database connection. If we have we are if we don't have, then we will create 1. So this will, uh, actually, this is reducing a lot. Top, uh, time for, you know, uh, creating the database connection because it it it takes time to, uh, create a database connection. So that is one way. Apart from it, uh, for example, if we have some static data, for example, in in one of project, we have data related to, uh, US states and their, uh, imports. So which is static data? So we can use case, and we can store it, and we can provide it when whenever it is required. So so so for example, those kind of, uh, requests where we need a connection, we can we can minimize it by using the case because in that case, we will not require to connect the database. We will just return.
Not understanding this question. I'm not clear with the question, but if we pick selected to implementing a feature in ASP dot NET application and and if we have to manage it in Azure DevOps. So in that case, for example, if if if we are having a PBI for feature request, then we will create one feature request in Azure DevOps. We will provide details like release mode and targeted branch and, uh, require required test case and, for example, required cases would do, like, the behavior and expected behavior and, uh, like, some of the data. For example,