profile-pic

Parshwa shah

Technical Always ready to learn new technologies & updated with them. Ready to work in any projects where I can explore new things & expand my skill set.
  • Role

    Sr. Node.js Developer

  • Years of Experience

    10.4 years

Skillsets

  • Team Lead
  • nginx
  • MS SQL
  • Lambda
  • On
  • Github
  • AWS RDS
  • Core php
  • Cloud
  • Bitbucket
  • CMS
  • Jira
  • SVN
  • EC2
  • JS
  • FullStack
  • Mongo DB - 2 Years
  • MySQL
  • Node
  • Yii2
  • Angular
  • Express
  • CodeIgniter
  • Sequelize
  • Socket.IO
  • jQuery
  • Node Js - 6 Years
  • JavaScript - 5.5 Years
  • JavaScript - 5.5 Years
  • Type Script - 2 Years
  • Type Script - 2 Years
  • AWS - 2 Years
  • AWS - 4 Years
  • CI/CD - 2 Years
  • SNS
  • Blockchain
  • Redis
  • Agile
  • Node Js - 5.5 Years
  • SOcial Media
  • Node Js
  • MultiSite
  • Docker - 2 Years
  • Postgre SQL
  • Apache
  • Social Media platforms
  • Git
  • PHP
  • Nest.js
  • Mailchimp

Professional Summary

10.4Years
  • Sep, 2025 - Present 11 months

    Principal Software Engineer

    York IE
  • May, 2024 - Jul, 20251 yr 2 months

    Principal Software Engineer I

    Zemoso Technologies
  • May, 2022 - Apr, 20241 yr 11 months

    Senior Software Engineer

    Rationarium
  • Jun, 2015 - Jun, 20183 yr

    Software Engineer

    TatvaSoft
  • Jul, 2018 - Apr, 20223 yr 9 months

    Full Stack Developer

    Techuz - Software, AI and Automation

Applications & Tools Known

  • icon-tool

    Redis

  • icon-tool

    Bitbucket

  • icon-tool

    Trello

  • icon-tool

    Jira

  • icon-tool

    AWS Lambda

  • icon-tool

    AWS S3

  • icon-tool

    AWS EC2

  • icon-tool

    AWS SES

  • icon-tool

    AWS SQS

  • icon-tool

    AWS SNS

  • icon-tool

    AWS RDS

  • icon-tool

    AWS EFS

  • icon-tool

    Github

  • icon-tool

    Apache

  • icon-tool

    Nginx

  • icon-tool

    Docker

  • icon-tool

    Mailchimp

  • icon-tool

    SVN

  • icon-tool

    Git

  • icon-tool

    Beanstalk

  • icon-tool

    Stripe

  • icon-tool

    Paypal

Work History

10.4Years

Principal Software Engineer

York IE
Sep, 2025 - Present 11 months

Principal Software Engineer I

Zemoso Technologies
May, 2024 - Jul, 20251 yr 2 months

    Working as principal software engineer

Senior Software Engineer

Rationarium
May, 2022 - Apr, 20241 yr 11 months
    Rationarium is the full-stack cloud-based enterprise solution for Web3 and blockchain. The platform offers a complete solution where businesses are able to manage their financials which includes multi-ledger, sales ledger, purchase ledger, chart of accounts, treasury and cost centre to process fiat and digital asset transactions. Rationarium allows the consolidation of all off-chain & on-chain data, growing their ecosystem through grants, paying and receiving of invoices or employees in fiat or digital currency and stablecoin.

Full Stack Developer

Techuz - Software, AI and Automation
Jul, 2018 - Apr, 20223 yr 9 months

Software Engineer

TatvaSoft
Jun, 2015 - Jun, 20183 yr

Major Projects

6Projects

Rationarium Socket.io

Tutorac Employer

Techuz Infoweb

RemoteCo Employer

Data Scraping

Fashion Potluck

Tatvasoft Technologies/Tools

Flymanage Employer Technologies/Tools Tatvasoft

Education

  • HSC

    Shri Nagindas Maganlal High School
  • BE - COMPUTER ENGINEERING

    Ahmedabad Institute of Technology, Ahmedabad (2015)
  • HSC

    Shri Nagindas Maganlal High School, Sabarmati (2011)
  • SSC

    Shri Nagindas Maganlal High School, Sabarmati (2009)

A Few Screening Questions Before You Begin

I am a software engineer. I have eight years of experience. Out of that, I have six years of experience in Node.js. I started my career as a PHP developer, and then I moved to Node.js. Since the last six years, I've been working in Node.js, mostly with the Express framework using JavaScript and TypeScript. I've worked on different domains like education portals, job portals, and currently, I'm working on the blockchain platform. However, my major role is not in victory operations, but I'm working with Node.js.

So in the note, when you are working with Node.js and AWS services, we have different options to manage and store our secret keys. So there is 1 AWS service, which is AWS Secret Manager. So there, we can just define our secrets, and there's already a rotation policy provided by AWS. So we can use the default rotation policy, or we can customize it as per our needs. So we can use it in both ways, and we can just manage our credentials as well.

For error logging and monitoring in a docker container environment, what we can do is use different logging modules like log is available. So, we can use and when we are using Docker, generally for logging, I prefer centralized logging. So, whenever you're using a single or multiple architecture, whatever the architecture we have, we can have a centralized log. And apart from that, what we can do is export our logs to a particular place to review them all from one place instead of checking from different places. So, we can do the same thing in a multi-container environment in the offline moment as well.

So when we think about the high available Node.js application, there's a failover database solution. Regarding database failover, we can first of all take an approach of master slave concept. So whenever your master goes down, the slave can solve the things or the slave can become the master. In some databases, if I tell you, MySQL, Aurora is the best option, it will just create your slave as a master whenever your master fails. There's a biggest benefit in the failover. Also, we can use multiple read replicas by fetching, like if any instance or any particular one fails, another will be in use. We can have a database in multiple regions. By chance, if every region is down, we can get some database from different regions. There are different options available for that.

So when we come to horizontal scaling, basically, horizontal scaling means we're just increasing our instances or similar. I prefer using AWS. We can also use Docker. What we can do is utilize the application load balancer, and view the available minimum size of instances. So, and we will put it into auto-scalable mode. When the demand is higher, it will add more instances. When the demand is lower, it will decrease the number of instances. In this way, we can be more cost-efficient. The same thing can be used with Docker as well. Docker is a container.

So when dealing with Node.js and wanting caching, the best and easiest way to implement caching is using Redis. We can also use the AWS service, Memcached, as well. If you don't want to use Redis, we can simply use that. By using it, we can store very frequent data and release it. Instead of fetching from the database, we will just pass those data from the cache as well. We have some dashboards where we need to show some ranking or information. We can fetch all this information from the cache. We don't need to go directly to the database to fire the queries. Apart from that, there are various options as well. Like, we are using database services, and we have steady content, then we can use CloudFront to cache our content. It will also be helpful.

Product, find by ID. Product ID. Check product I'll check the course method. Users reported they are often getting product note form message even for existing product. What might be the issue in this? Snippet, and the code looks good, but just need to check once, find by ID is returning an array or it's an object. Because if it's an array, the spirit should match, I'm listing products. I just need to check once the response of the product, what response we are getting. And, that is the only concern it can get the error from this part. Otherwise, all looks good. So I need to check, I need to add the debug point on the product. If the condition, you will just add the debug pointer and can check what we are getting from the product. And based on that, we're going to

I have both technical Docker files for the node. Can you find the potential Expose at 0.0.0.0 command mode address. Yeah. We can just improve the copy part. Like, copy dot part, if we are in the same directory or not, we can just check for that part once. Otherwise, exposing code is fine. We can increase the node version to the latest version. That is one form. And we need a copy of this one because I don't think copying this one is required. So we can do

So, basically, to automate the deployment, we can simply use CICD. So, we can use green blue development as well, to reduce downtime. By using Docker, we can just do the deployments. Like, we are using Docker, but also using GitHub actions to just redeploy to our deployment server whenever the code is pushed. The same thing can be used by Docker as well. And, if you want to deploy it on a different environment, I think it's deployed on different environments. The script is the same. You just need to rerun the script. And about the configurations, it's environment-based.