Skip to content
View nivekithan's full-sized avatar

Highlights

  • Pro
Block or Report

Block or report nivekithan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
nivekithan/README.md

Hi there 👋

I am Nivekithan S, I am fullstack developer currently working in Magic in the role Product Engineer (Backend).

Connect with me at [email protected] or at twitter https://twitter.com/nivekithanS

Work Experience

I am working as Product Engineer at Magic. Some of my notable achievements include

  1. Designed and implemented a feature that sends more than 10,000 slack DM messages while also respecting the slack ratelimit using bull queue
  2. Created a Chatbot using NextJs, supabase (Postgres), openai and langchain in typescript language which when deployed increases customer interaction and reduces customer support.
  3. Successfully transformed monolithic backend into separate job and request services, significantly reducing memory and CPU usage. This ensured seamless operation during high job loads.
  4. Contributed to the development of a payment gateway for the events system, empowering our customers to seamlessly utilize Stripe for event-related transactions.
  5. Worked on setting up Prometheus, Loki, Grafanna for our frontend and backend service while also making minimal changes to our codebase so that we can continuously develop our product.
  6. Contributed to migrating our service from Digital Ocean to AWS leading to improved performance of our product
  7. Took ownership and created a cli tool that initializes our development environment locally after one of our new hires took more than two days to setup the development environment locally.
  8. Took ownership and orchestrated a gradual transition of our product's codebase from Javascript to Javascript with JsDoc leading to less runtime errors and better DX without compromising development timelines for ongoing features.

Projects

Whenever I get free time, I like to work on projects to satisfy my curiosity about new technologies and understand their tradeoff compared to current technologies.

Key Manager

In my work most of the time I have to write code that respects the ratelimit of slack APIs. One time I had a bug that caused an infinite loop hitting the slack API, ofcouse I got ratelimited and slack API continues to function normally without affecting other users. There must be thousands of other programmers who must have done the same mistake still, slack APIs continuously work for everyone. What's one main reason behind this? their rateliimt algorithm.

So when I came across shadcn/ui, fly.io scale to zero vm's and webauth by Passage I have decided to build this project.

Responsive Screenshot

I came across this tool Full page screenshots which allows you to take full page screenshots of a website. The first thing that came to my mind after seeing this tool is how easy it will be for non-technical managers if they can just take a screenshot of their websites in multiple viewport and compare it to provide any feedback.

So with shadcn/ui and appwrite, I have decided to build this project

Similar Project

https://screenshot.nivekithan.com is a similar project which takes a single screenshot of a website with a selected device type. I have used cloudflare Browser rendering API for taking screenshots. The API is still not ready for production since it has limits of only creating two new browser instances per minute. Right now I am working on a workaround using Cloudflare Durable Objects

Path Finder

It is one of the first projects I did as a beginner, I was learning about path-finding algorithms and I thought how fun it will be if I implemented a visualizer for the algorithm.

Slatejs Devtools

slate-js is a library for creating a rich text editor. When I was a beginner I was working on creating a clone of notion, which lead me to slate-js. Notion text editor is hugely complex. Whenever I run into bugs while implementing those features using slate-js it used to take me a long time to pin down the bug.

That's when I decided to build slate-js-devtools to make my debugging experience better.

Fly.io Distributed System Challenges

Doing a full-stack project is a huge time commitment. That's I prefer to do challenges when I want to learn a particular concept with clearly defined requirements and constraints.

One of those challenges is Fly.io Distributed system challenges

Till now I have completed these challenges

  1. Echo - https://fly.io/dist-sys/1/
  2. Unqiue Id generateion - https://fly.io/dist-sys/2/
  3. Single Node Broadcast - https://fly.io/dist-sys/3a/
  4. Multi Node Broadcast - https://fly.io/dist-sys/3b/
  5. Fault-Tolerant Broadcast - https://fly.io/dist-sys/3c/
  6. Efficiency Broadcast - https://fly.io/dist-sys/3d/

You can check my solutions at Solution for fly.io challenge using deno

Pinned Loading

  1. key-manager key-manager Public

    Managing keys made easy for startups

    TypeScript

  2. responsive-screenshot responsive-screenshot Public

    responsive-screenshot

    TypeScript

  3. screenshot-page screenshot-page Public

    ui-screenshot

    TypeScript

  4. path-finder path-finder Public

    TypeScript

  5. slate-devtools slate-devtools Public

    TypeScript 14 1

  6. deno-fly deno-fly Public

    TypeScript