About Me

I am a software engineer and I love coding…

As a developer,

  • Developed the backend for payment, website, dashboard(CMS), RESTful APIs & chatbot. 
  • Scaled the backend for the throughput of 1 million+ requests per minute with 15ms of API latency.
  • Scaling is not an easy task to identify scaling issue before deployment, started load testing to fix the scaling issue for the peak condition. 
  • There is a lot of tuning has to be done for scaling i.e SQL tuning, Caching, Nginx tuning, MySQL server tuning, vertical scaling for CPU & Memory, Horizontal scaling to increase app server, load balancing, everything non-blocking asynchronous, even non-blocking event-driven communication between micro-services etc.  
  • Integrated many third party services because we can not develop everything in-house 🙂 so here is a list – Email, SMS,  payment, CRM, Chatbot, Phone call, Email marketing, slack command etc.
  • If any bugs occurred on production then it will hurt you very badly so I have integrated many tools & services to improve debugging i.e logs monitoring through ElasticSearch/Kibana, APM monitoring through NewRelic, time-series metrics & monitoring through Prometheus/Grafana, Error tracing through Sentry, Alerting through Slack & Pagerduty etc.
  • I love coding so code quality is my first priority hence to ensure code quality. I utilized tools for code linting, static type checking, dead code removal, smelling code refactoring and code review.
  • Coding is art so implemented patterns and principles like Gangs of Four(GOF) pattern, SOLID principles etc.
  • Now our coding complete and it must be deployed on many environments like staging, pre-production, production so used CI/CD rolling deployment for zero downtime and used tools like GitLab & Jenkins.
  • If code is deployed then it should work without error or with max 0.1% error rate so testing is important either manual or automated testing but manual testing will slow your development so the automatic test will save your time so written unit & integrations test with coverage report above 80%.
  • If any bugs found on production there must be an incident report which should include route cause, corrective step, reported by, durations,  impacted system & users, metrics etc.
  • For every deployment, there must be proper checklist like test cases, schema migrations, data migrations, downtime,  code review, Revert strategies, monitoring step, data sanity check, backward compatibility etc.

There is a lot to be written in the blog.

Email: vikas.mca.jnu@gmail.com