
Senior Software Engineer
HFCLSenior Software Engineer
ImpelsysPython Developer
Insurance SamadhanFounder
SRS Holdings IncDJANGO-MERN Engineer
Brackets Infinity
AWS EC2

AWS Cognito

AWS RDS

AWS API Gateway

AWS S3

AWS Lambda

Django

Django Rest Framework
.png)
Flask

ReactJS

MERN Stack

NodeJS

Tkinter

Regex

AWS EC2

AWS Cognito

AWS RDS

AWS API Gateway

AWS S3

CI/CD

Git

Pandas

Regex

Terraform

AWS Fargate

AWS ECS

AWS Elastic Beanstalk

AWS EventBridge

AWS Load Balancer

AWS CloudWatch

AWS Redshift

AWS DynamoDB

AWS Amplify

Redis
Celery

AWS Glue

Kubernetes
.png)
Docker

Terraform

AWS ECS

AWS EC2

AWS RDS

AWS S3

RabbitMQ

Terraform

Redis

GraphQL

gRPC

Pandas

Trello

Slack

AWS

Google Cloud

VS Code
Hi. So I graduated as a chemical engineer, uh, in 2020 in BIT. And, uh, after that, like, it it was long before my graduation that I I decided I'm not gonna continue with the field. So after my graduation, I started my own startup. Uh, and, uh, during the because I was basically trying to build a fusion of Facebook and Amazon, uh, but with kind of different, uh, concepts. So in most, you revive the retail sector in United States. And so apart from tech, I also got a chance to work with some of the leaders of Fortune 500 companies. Uh, but, uh, due to some funding issues, I had to discontinue after, like, one and a half years. So, uh, in 2022, I, uh, February of 2022. Yeah. Uh, I, uh, joined this company called Brackets Infinity, where I got to work on several projects, uh, including a crypto based wallet called called MGC that we we built. Uh, we also built a an appointment system, a library management system. And, uh, and, uh, in the end, we were actually we had started working for a client, uh, to develop an ecommerce application. Uh, but, uh, unfortunately, they lost the client, and they were not able to pay my salary. So I had to, um, you know, like, leave the, uh, leave the company, unfortunately. So, uh, in 2023, I was hired by this company called Insurance Samadhan, uh, where I worked for very brief time because, uh, that one was a profile mismatch. They hired me for Django and AWS, but they put me into package development, uh, and that was not the profile I was looking to work in. Uh, after that, I joined Impulsys. And, uh, Impulsys, I worked, uh, on a 3 months contract. Uh, they were planning to extend the contract too, but, uh, they couldn't gather the funding. So that's why, uh, there was no second contract, uh, where, uh, in impulses, I I had a chance to, uh, re architect the software infra for, uh, American Heart Association. Uh, so this year, I'm planning, uh, to become get certified as a cloud solutions architect. And, uh, I'm also getting very deep into, uh, natural language processing. I also got a chance to work on few m ML projects, but, uh, now I'm getting more hands on with, uh, AI and ML as well. So that's my profile so far.
Mhmm. Okay. Okay. So I have never worked with the Next. Js per se, but, uh, I've worked quite a bit with the React JS. About Next. Js, I, uh, just know that it's more of a framework, uh, which allows you to build front end as well as back end, and it allows both the server side and client side as well. Um, my general approach would be I would, first of all, explore, like, uh, what are tie like, is the data supplied at once, or is it like a continuous visualization? So if it is continue continuous visualization, uh, I've done this type of a project before. Um, I would look to use, um, Django Channels in the back end, uh, which is a framework Django's internal framework for WebSockets. And, uh, yeah, I would prefer to use charges on the front end. So, um, the draggable widgets, I'm not sure, uh, like, what exactly would that mean. I'll have to, uh, I would need some more details to dive in, uh, dive more deeper about, like, what you exactly mean by, uh, draggable budgets. But, ideally, I would either, uh, you know, supply the data to the charges or if it is constant polling or if it is a live data, then I would use, uh, sockets. And on front end, it would be charges. On back end, you can use any framework. My preferred framework is Django, uh, since I've worked on it so, uh, for the most time. So
So, uh, I'll have I'll I'll have to check check if salary automatically allows any retries. Ideally, salary all is also used with the red Redis, but it is used with Redis cache. Uh, so, um, you know, I would like, retry mechanism, how I have implemented in past is, uh, using Redisq. So I would implement a Redisq, uh, you know, to wait for a response from salary. If the, uh, you know, if the response is until the response is not 200 or whatever desired response that we set, the Redisq will retry keep retrying the task, uh, with, uh, you know, uh, with the salary. So I think that would be my approach, but I will also have to check if salary also offers any, uh, you know, features for retrying the failed tasks. So
Yeah. Uh, I I I definitely know that Django offers an internal built in support for multi language as well as IoT devices. Uh, I never kind of had a chance to work with it, though. Uh, so I'll have to check the documentation on that one. Uh, so but how so, um, so, yeah, I'm not sure about this particular one.
On Versal. Okay. Uh, I haven't done, uh, CICD part on Versal. I've done done on AWS. So, uh, I I would do, uh, like, I I will answer the AWS side. Uh, I would do, uh, do it with the help of either code pipeline and code deploy and code build, or, uh, the best version I've seen so far is amplify. So on Amplify, 1 Amplify is mainly, like, a Lambda like version, but it's, um, mainly used for hosting front end. And Amplify, uh, automatically pulls the latest git commit, uh, without putting the application down in the transient time. So, uh, yeah, I I I don't know about Versal, but this is how I've done it on AWS, uh, previously.
Okay. So serialization, uh, you know, as the definition goes, it is, uh, used to convert the Python data. Uh, I'm sorry. That's my cat in the background. Uh, so it it is used to con convert a Python data, uh, to or from, uh, the complex query set as we see. So okay. So from many to many. Right? In okay. Many to many relationship for the front end. Uh, okay. Oh, Django set for many to many. So when you say many to many okay. Uh, So ideally, when we do serialize and when there are, like, many fields, uh, we ideally just add many equal to true, uh, inside the serializer. So, I mean, that's an argument to pass, uh, many, um, objects many serialized objects, converted to Python and then passed it to the React front end. Right? So other than that, um, yeah, I think that would be my answer. But let me see if I can say something more about this. Uh, serialize a query set from many to many relationship for different end. Uh, about yeah. And one more thing, I mean, in the same many to many, like, once you, uh, you can add many to, uh, you know, many equal to true argument in the serializer. But at the same time, if you also want the details of other tables, uh, this the particular table is linked with, uh, you can use, uh, either a hyperlinked model serializer or a serializer relational as well. Uh, so the model that you fetch has details of other tables as well. So I think, uh, this is additional step I would take on the model's side.
Okay. So so this is the model view set. Okay. Scalability and maintainability. Okay. And get query set. Right? Return. Okay. Okay. Okay. Okay. So this is creating a user, and this is returning a user. Right? Okay. And what is it returning? User call to set dot user. Okay. Okay. So this is returning a user. Better scalability and maintainability. I mean, the core kind of looks fine to me, so I'm not really sure. Item serializer, query set, objects dot all. Okay. Okay. Okay. I think we can, uh, know what here. Okay. Okay. I think I have the answer. I think what we can do is, um, uh, you know, we can use a models manager. And, uh, in the models like, be because some users could have been deleted, but, uh, you also, uh, would want to kind of soft delete or some users might be, uh, inactive. Right? So using the models manager, what we can do is, uh, even if items dot objects dot all, uh, will be called, uh, we can, uh, you know, use models manager to, um, not fetch, uh, the inactive users or soft deleted users. And, uh, so this way, the, uh, the objects dot all will fetch less number of users, uh, which will put less load on the server. And, uh, so this this can help, uh, scale the application properly. So this way, number of entries, uh, are number of entries to iterate through are lot lesser. So I think that's one step I would take, uh, for scalability.
What is what is written on that? I think you have used map function. Right? Map to iterate on the items. Okay. In the okay. Okay. Add item is a function in which items dot push. Okay. Items is is created and, uh, okay. Set items items. Okay. Okay. Yes. Right. Okay. Perfect. Item. Okay. Set item. Okay. Okay. Yeah. Because a useEffect is not added, uh, to rerender, uh, you know, rerender the template, uh, after the item is updated. Right? So, uh, you will have to add a useEffect to since, uh, so where the items will have to be the dependency. And, uh, once the dependency changes, uh, useEffect will automatically rerender the template. So, uh, that is the reason.
Uh, I never had a chance to work with Next. Js as as I mentioned. Uh, I've only worked with React. Js. So, uh, I think I'll pass on this particular answer.
I mean, WebSockets, uh, are the must, uh, when, uh, AI sorry. When chat when chatting is concerned. Right? Uh, and, uh, then I would also, uh, create a I've done this, by the way. Like, so, uh, I would also create, uh, an endpoint with the AI model, uh, if you have if you have built your own model or if you're using external APIs like chat, GPT, or Gemini. Right? So, um, yeah. I mean, on the yeah. So, basically, you'll have to connect the front end and back end and back end with the model or the external API. And, uh, okay. What approach? What else, uh, can you do? I okay. And user experience wise. Right? Sure. User experience wise, you'll have to create a proper layout, uh, and a proper prompt and response mechanism. You will also have to ensure, uh, authentication. Uh, I would personally personally use personally, I generally use, um, uh, this one, uh, JWT, uh, stateless. But given the security point, I would also try to use custom authentication. Yeah. I think, uh, that's pretty much it because when I had integrated, uh, uh, Gemini with one application, Uh, I I had integrated it with the, uh, Django application using its API and then rendered that on the front end. Uh, one more part. Uh, no. I think that that that would be enough because mine was more of a a form that sends a response to the and and then gets the response. So since this would be more of a chat, uh, part, uh, I would be looking to use Django Channels on the back end.
I mean, 1, uh, 1 first would definitely be the calls permissions. Uh, second would be, uh, JWT customer authentication. That customer authentication would check, uh, the token, the location of the device, uh, where the request is coming from. Uh, so that would ensure that, uh, that even if the token is stolen, the device type has to be same and location also has to has to be, like, among the locations where the user is use usually located. Right? Uh, then, uh, third part would be, um, this one. I I would look to encrypt. Uh, I I would implement an encryption or perhaps like a v VPN between, uh, the front end and the back end. Then, uh, you know, if there's any, uh, s three bucket, uh, that's connected, I would, uh, implement a, uh, you know, encryption in transit and encryption during rest. So, um, yeah. I mean, these are like so base to sum up, uh, cost permissions or authentication on the, uh, routes, and authentication has to be customer authentication based on device, uh, access token and, uh, location. Oh, yes. Access token will be short lived and, uh, refresh token will be sliding, and it, uh, front end will have auto refresh mechanism, uh, and then encrypted to request and response. So, uh, these are the steps that I would take.