profile-pic
Vetted Talent

Sharad kumar

Vetted Talent

Senior Software Developer with over 6+ years of experience, specializing in React.js , Typescript and Node.js development. Worked extensively with React.js across multiple projects, including e-commerce platforms, social media apps, and virtual meeting solutions. I have demonstrated proficiency in Next.js, utilizing it alongside React for enhanced performance and SEO optimization. My expertise extends to state management with Redux, UI frameworks like Material-UI and Tailwind CSS, and testing frameworks such as Jest and React Testing Library. Full-stack capabilities and experience with modern JavaScript frameworks make me a valuable asset for building robust and scalable web applications.

  • Role

    Senior Software Engineer

  • Years of Experience

    7.2 years

Skillsets

  • CI/CD
  • Tailwind
  • Serverless
  • Sentry
  • Rest APIs
  • Node.js
  • Next.js
  • Nest.js
  • Microservices
  • Material UI
  • JWT
  • Grafana
  • GitHub Actions
  • Express
  • DynamoDB
  • AWS - 2 Years
  • Chakra UI
  • Bcrypt
  • TypeScript
  • Redis
  • PostgreSQL
  • MongoDB
  • GCP
  • react
  • react - 6 Years
  • Redux - 5 Years
  • MySQL - 2 Years
  • Docker - 2 Years
  • Firebase - 2 Years

Vetted For

8Skills
  • Roles & Skills
  • Results
  • Details
  • icon-skill_image
    Full Stack Developer (Node JS and React JS) - RemoteAI Screening
  • 67%
    icon-arrow-down
  • Skills assessed :.NET, AWS Pro certification, Bug Fixing, AWS, GCP, JavaScript, Node Js, React Js
  • Score: 60/90

Professional Summary

7.2Years
  • Mar, 2024 - Present1 yr 9 months

    Senior Software Engineer

    Technomatz IT Solutions
  • Apr, 2022 - Feb, 20241 yr 10 months

    Senior Software Engineer

    Careator Technologies
  • Aug, 2021 - Apr, 2022 8 months

    Senior Software Engineer

    Empplan
  • Sep, 2017 - Jul, 20213 yr 10 months

    Software Engineer

    Bestpeers Infosystem

Applications & Tools Known

  • icon-tool

    Javascript

  • icon-tool

    Reac JS

  • icon-tool

    Node JS

  • icon-tool

    React

  • icon-tool

    Redux

  • icon-tool

    Typescript

  • icon-tool

    Redux Thunk

  • icon-tool

    Next.js

  • icon-tool

    Express

  • icon-tool

    MongoDB

  • icon-tool

    MySQL

  • icon-tool

    Material-UI

  • icon-tool

    HTML5

  • icon-tool

    CSS3

  • icon-tool

    LESS

  • icon-tool

    Firebase

  • icon-tool

    Web API

  • icon-tool

    Docker

  • icon-tool

    AWS (Amazon Web Services)

  • icon-tool

    GCP

  • icon-tool

    Firebase Realtime Database

  • icon-tool

    Jira

  • icon-tool

    Trello

  • icon-tool

    Asana

  • icon-tool

    Teams

  • icon-tool

    Skype

  • icon-tool

    Zoom

  • icon-tool

    Nginx

  • icon-tool

    Git

  • icon-tool

    Bitbucket

  • icon-tool

    GitLab

  • icon-tool

    GitHub

  • icon-tool

    Jest

  • icon-tool

    Mocha

  • icon-tool

    Strapi

  • icon-tool

    Twilio

  • icon-tool

    Stripe

  • icon-tool

    MailChimp

  • icon-tool

    Digital Ocean

  • icon-tool

    Heroku

  • icon-tool

    GCP

  • icon-tool

    AWS

  • icon-tool

    GCP

  • icon-tool

    Twilio

  • icon-tool

    Stripe

  • icon-tool

    Jenkins

  • icon-tool

    Nginx

  • icon-tool

    GitHub

Work History

7.2Years

Senior Software Engineer

Technomatz IT Solutions
Mar, 2024 - Present1 yr 9 months
    Architected and deployed REST APIs powering real-time data exchange across 3 core product lines, cutting average response time from 400ms to 300ms (25% faster) and boosting user retention. Strengthened security by implementing JWT-based authentication and encrypted password storage with Bcrypt, reducing login-related incidents by 40% and achieving OWASP compliance. Drove cross-functional delivery of a new scalable application framework, enabling the team to support 10k+ daily active users with zero downtime during peak traffic events.

Senior Software Engineer

Careator Technologies
Apr, 2022 - Feb, 20241 yr 10 months
    Spearheaded end-to-end product deployments, streamlining setup processes and reducing new developer onboarding time by 30%, accelerating team productivity. Resolved critical production bugs and performance bottlenecks, cutting system downtime by 20% and improving customer satisfaction. Strengthened reliability through advanced debugging workflows and proactive monitoring, ensuring 99.9% uptime across client-facing applications.

Senior Software Engineer

Empplan
Aug, 2021 - Apr, 2022 8 months
    Optimized frontend architecture, improving page load times by 35% and reducing rendering issues across browsers and devices. Delivered responsive, cross-platform experiences, increasing mobile engagement and ensuring compatibility across 20+ device configurations.

Software Engineer

Bestpeers Infosystem
Sep, 2017 - Jul, 20213 yr 10 months
    Developed scalable REST APIs with Node.js & MongoDB, powering data flows for 10k+ daily active users in SaaS and e-commerce products. Collaborated on multiple high-stakes client projects, ensuring on-time delivery and adherence to enterprise-grade quality standards. Boosted frontend performance by implementing lazy loading, code-splitting, and Redux optimizations, cutting average page load times by 40%.

Achievements

  • Developed highly responsive user interface components via react concepts
  • Troubleshoot interface software and debugged application codes to improve functionality and performance by 50%
  • Developed and implemented front-end architecture to support user interface concepts with 100% accuracy
  • Monitored and improved front-end performance and documented application changes and worked on updates

Major Projects

5Projects

Codebase

May, 2023 - Present2 yr 7 months
    Internal organizational communication tool.

Costco E-commerce application

Aug, 2021 - May, 20231 yr 9 months
    Engineered a Next.js-based high-performance frontend, reducing load times by 30% and improving conversion rates across desktop and mobile users. Collaborated with design and backend teams to deliver a seamless, responsive shopping experience.

Empplan Sales Promotion application

Jul, 2020 - Jun, 2021 11 months
    Developed core e-commerce workflows (catalog, cart, payment) using Redux-Saga and Gatsby, enabling smooth transaction handling for multi-region campaigns. Implemented cloud-based storage with GCS, ensuring secure, scalable upload of promotional assets and sales reports.

Remo Virtual Event Management Platform

Dec, 2019 - Jun, 2020 6 months
    Architected real-time chat and conferencing interfaces using Firebase, enabling seamless communication for hundreds of concurrent event participants. Expanded platform scalability by increasing organization limits, driving a 22% boost in engagement across hosted virtual events. Led UI modernization by building scalable React + Chakra UI components, improving design consistency and reducing front-end defects by 25%. Integrated secure file upload workflows with AWS S3, enabling fast and reliable handling of 10k+ daily document transfers.

Rageon E-commerce application

Dec, 2019 - Jun, 2020 6 months
    Developed interactive product customization modules with React.js and Material-UI, enhancing user personalization and boosting cart additions. Optimized image rendering and lazy loading strategies, cutting page load times by 20%+ and improving mobile performance scores.

Education

  • Bachelor of Engineering

    Rajiv Gandhi Technical University (2017)

Interests

  • Swimming
  • Cricket
  • Travelling
  • AI-interview Questions & Answers

    Okay. So, uh, my name is Sharad Kumar, and I'm from Ildur, Madhya Pradesh. I have overall 6 plus years of experience in web development where my primary skills are React. Js, Node. Js, JavaScript, TypeScript, GraphQL, Redux. And I'm also familiar with the cloud services like AWS, GCP, Firebase, and others. And, uh, I'm also, uh, familiar with the testing architectures, basically. So, uh, I've used suggest and react testing libraries to write the front end, uh, front end test cases for components, basically. And, uh, after that, uh, on the back end side, I've used Mocha for writing the test kit on the back end side APIs, basically. So, uh, that's how I'm familiar with the, you know, uh, testing architectures. And, uh, talking about my project, so I've worked on around, like, 15 plus projects, which is using React as a front end technology. And out of 15, 7 to 8 projects are using Node. Js back end technology. So on that project, I am working as a full stack developer. And my roles and responsibility is to, like, uh, uh, create the components working on the features on the front end side. And for the same components and the features, I need to create the APIs on the back end side as well. And I need to connect both front end and the back end using React and the Node. Js. And I'm also familiar with writing the queries of the MongoDB and SQLs as well. And, uh, talking about the projects which I am currently working on, it's a cool app in here. It's basically a social media platform. It's more for Indian people. It's same as Twitter, basically. So where the Indian peoples post their thoughts without any language barrier, they can post their thoughts and, uh, their own local images. They don't need to worry about the, uh, you know, language translations or the language barriers. They don't need to worry about that. So I'm my roles and responsibility on, uh, that project is like, uh, I'm handling the team of front end developers, basically. I'm handling a team of 4 to 5 members. I need to review the code. I need to assign them task. And if they need any help, I will be work with that as well. And, uh, I need to connect with the business team sometimes. I need to, uh, take a call with the product managers on a daily basis to give the updates related with my team and the works which assigned to us. So, yeah, that's a little bit about me.

    Okay. So, uh, catching data in the node JS side, um, it's a good approach for, uh, not calling the APIs again for the same data. And, uh, we can use Redis on the back end side. On the node j sides, we can use, uh, Redis implementations. And Redis is basically, uh, cashier database. So, uh, we just need to, uh, configure the Redis on the back end side for the some some of the APIs. Or if you want to applicable for that, all of the APIs, and which we want, uh, to, you know, not to request to, uh, database database queries every time because it's the data is not updated frequently. So we, uh, put that data into the Redis. So user, uh, request to the node. Js servers, and it will get the data from the Redis database. It's not hit the API or the query to the Mongo database or any real, um, any database like MySQL or Postgres. So, uh, that's how we can implement the caching on the back end side for the React front end as well.

    Okay. So, uh, talking about the memory leaks on the notes here sides. Okay. So memory leak work what is the means of memory leak first? Okay. So memory leak is nothing but a data leakage on the back end side. Okay? Someone, uh, like, sometimes, like, uh, due to some variables or creations, We found that, like, uh, that variable is not using at all and on the back end low back end code base. And we are just giving assign that um, memory to that variables because we are not using a garbage collector on the node JS side. So that's why that, uh, memories are assigned to a variable which is not accessed or which is not usable on the back end side or the code base on the back end. So, uh, we we just need to avoid to create a variables using lat and cons. We we cannot, uh, we cannot create, uh, global level variables, uh, for our functions or for our internal, uh, APIs, basically. So we just need to use const and and let variable declaration. So it will be, uh, a block label scope, basically, for the let and without cons. So once the function use is complete, uh, that variable memory will be, uh, reassigned back to the, uh, CPU or the memory, basically. So, uh, that's how we can prevent, uh, the memory leaks on the back end side.

    Okay. So, uh, basically, if we need to do, uh, role role based, uh, uh, role based, uh, access control in our Node. Js application, so we need to, uh, assign one key, uh, on our users, uh, table, basically. So we can assign the role key in our user database, and we can assign just, uh, the role, basically. Like, what type of role we need to, uh, manage in our Like, we have admin. We have user. We have client. Okay. So we, uh, we can just create a for that, and, uh, we will assign that, uh, particular role when we are creating a user to that, uh, user. Basically, we can assign a role like admin client and user. So, uh, once that role is created, so we need to manage that, uh, role based access in our applications. Okay? So what we can do is, like, we can create, uh, we could create 1 common functions for checking the role. And, uh, according to that, we have the access. So we just need to, uh, add a condition. So we just need to create common functions for checking the role access. If, uh, we just need to put that into the middleware as well, like, uh, at the time of, uh, you know, calling the APIs or the calling the controllers from the routes on the back end side. We just need to put that function into the, uh, middleware. So it will be checking the rules every time once, uh, the API hit from the front end to back end. So it will be checking that function, uh, which is checking the authorization access of the user, basically, to access that controller or not. So that's how we can, uh, manage the access based control on the note

    Okay. So, uh, if, uh, okay. So cross origin request. We we basically need to avoid the cross origin request to our back end server, basically. So what we can do is, uh, we can use a course library to avoid that course origin errors in our applications. So we can just put, uh, URLs, which can only access the, uh, backend servers. Okay. So we can create a constant for that URLs, basically, and we can pass that, uh, uh, array, basically. The the reorders array, we can pass that into the course options. Okay. So we can just create applications using the express app. Uh, we can call the app dot, uh, gosh. And inside that, we just need to pass the list of the URLs, which can access our database, uh, from the front end, basically. So that's how we can manage our calls origin request on the back, uh, node JS applications. We can use a call as well.

    Okay. So, uh, for managing the session on the note a side, like, we we need to understand, like, first how the session is working. Okay. So session is basically, like, once the user comes to use our application. So we create a one session for that users to, uh, you know, use our application APIs or the back end, uh, back end, uh, controllers and the request be backend APIs, basically, for getting the data and the storing the data. So what we can do is when the user sign up or the login into our applications, we can generate a token. And, uh, using that token, we can manage a session of that users on that particular browsers. So that token is comes into that every request which is coming from the front end to the back end. So we just validate that token is very, um, very validate or not. So we we just need to add that, uh, we can create a function like, uh, is authorization check, and we can, uh, check that token is valid or not using so token management, we can use a JWT, and we can just verify that token is valid or not. So what we can do is, like, we can create a function, is authorization already, and we can put that function into the all the middle pairs. So we just put that into the request, which needed, uh, authorization check, basically. So we can we can, uh, use that function inside the at the place of the middleware where, uh, we are managing our routes, basically. So that's how we can manage a session, uh, in our application.

    Looking at this Node. Js code, and you can spot potential issue with the way of query database. Function is implemented. Please Okay. So, uh, basically, uh, we, um, uh, I've checked the code and found that, like, we are receiving a promise as a response while, uh, calling a query database. So we just need to, uh, you know, use a dot then to convert that, uh, response into the JSON object as well because that user's data is coming as a JSON object, so we just need to use one more time for converting that to the, uh, converting that response into the object response, basically. So we just need to use one more than inside the query database. So where we, uh, get the users uh, users as a JSON response. And one more thing which I have found is, like, we can connect we can create a connection at in in different functions. Also, uh, we can avoid to create a connections in every, uh, every functions which we are creating in our uh, code base, basically. So we just avoid that connections from, uh, query database functions to, uh, other places. Well, we can just use that, uh, in other way as well. So that's how we can, uh, fix the issues.

    Okay. So, uh, uh, if we be if we need to, uh, you know, work with the batch processing in the Node JS site, so there is, uh, Node JS task Node task library is available in Node JS. We can use that Node task for, uh, you know, uh, managing our batch processing jobs. So what we can do is, like, uh, we can, uh, create a task and we can, uh, create a one functions for handling 1 batch process. And we can create a, you know, um, another function, another task notice task for managing, uh, other batch request. Okay. Or we can also use the Lambda functions of the AWS for managing the large base, uh, large scale batch processing also because that are the serverless functions. We just need to create 1 more connections, uh, 1 more connections, or we can create a 1 more server. So, uh, it will not, uh, you know, it will not it will be running, uh, on the cloud, basically. Cloud servers, basically. It will not needed our server to run that batch task, basically. So we just need, uh, need to create the Lambda functions, uh, for managing the, you know, multiple batch processings in our applications.

    Okay. So what type of methods we are using, uh, to scale our applications? So we have, uh, you know, 2 types of scaling, uh, strategies. 1 is vertical scaling and the other one is horizontal scaling. Okay. So if we are go with the vertical scaling, so we just need to, uh, you know, increase the size of the servers or the memory size of the servers, which we are using currently. So we just need to increase the RAM and the room size of the current server. Okay. So if we are go with the horizontal scroll, uh, horizontal scaling, so we just need to add 1 more machines or 2 more machines for handling handling the zero time in our application. So I will go with the second approach, which is a horizontal, uh, horizontal scaling. So in this approach, like, what we are doing is, like, we are creating 1 more server. Okay? With the same Emily size and the same, uh, same CPU size as well. Same red rim size as well. Okay. So we can create 1 more or 2 more servers. So, uh, we can deploy our applications. Like, we can create a gateway. So, uh, the other services, we can we can follow the microservice architectures architectures on the AWS and GCP. So AWS provide the, by default, router, gateway routers, which is managing the services on the different different servers, basically. Okay. So the same thing GCP is doing with the Kubernetes. So we can, uh, also use the Kubernetes of the GCP for managing our servers to, uh, manage our different different services. So it will, um, give us the zero downtime because if any services is break, it will not affect the whole application. So that's how we can avoid, uh, we can scale, uh, our application as well, and we can avoid, uh, we can also follow the zero downtime, uh, during deployment something deployment as well. So that's how we can, uh, manage or, you know, scale our applications.

    Okay. Suggest improvements for React Native application performance observed on low end mobile size. Okay. So low end mobile size, I don't, you know, uh, like, pretty sure about that. Like, what is the low end mobile size if we are talking about the responsiveness of the, uh, mobile size in the low end mobile size, something like that. So, uh, for the responsiveness, if you need to manage that performance related issues on the low, uh, low mobiles which have, uh, you know, less memories or something like that. So we, um, what we can do is, like, uh, we, uh, at the time of, uh, you know, uh, writing a component in our React Native applications, we we can just, uh, you know, give the name of that mobile which is not supportable by us. So, uh, if they if the, you know, the application is faded on the those mobile, so we can just avoid that. Like, we are not operating on this type of mobiles and this type of, uh, responsive, devices, basically. Because if we are, uh, you know, writing our code and implement our components according to, uh, that device, so we need to write a extra code for that as well. Or if if it is compulsory, so we just need to, uh, write some more components, uh, some extra components to handle that uh, thing on that particular low end mobile sensor. So that's how we can manage, uh, to, you know, improve our, uh, react performance basically on the low end mobiles to create a new, uh, components which will not affect the other components. It will only render for the low end mobiles. It will not render for the high end mobiles, basically.

    Okay. Talking about the Vojisco. Okay. So okay. So, basically, like, Vue is following, uh, two way data flow binding as well. Okay? So, uh, that is a very important architecture as well. Like, a two way data binding is there in the Vue JS. So we can, uh, you know, uh, move that to the okay. So oh, this improvement. Okay. So we can, uh, go with, uh, some documents basically when we are working with the. So we just need to, uh, follow the best architectures architectures for the code base, basically. Okay? So suppose if we are following the MVC architectures. Okay? So we need to create a proper model view and the controllers in, uh, in, uh, in. Also, we need to create the folders for the helper files and the utility folders also we need to create. So what we need to do is, like, we need to, uh, move the view code, uh, view part into the view folder, basically. Model part inside the model. And the controllers are managing basically managing the server side of the port, uh, inside of UJS. So that's architecture we can follow while, uh, working with the Vue JS code base. So it will be pretty good to, uh, maintain and everyone needs familiar with the MVC architecture. So we can go with that architectures while working with the Vue JS code base. Thank you.