Resume

Work Experience

Muse Wearables - Backend Developer

Muse Wearables

Aug 2020 - present

About

Muse wearables is product segment of Conzumex Pvt Ltd. It offers various wearable products such as Hybrid smart watches, NFC watch, Muse Cue Health band, etc.

Role

Working as Backend Developer
Implemented online appointment booking system.
Implemented admin dashboards.
Worked on health care dashboards.
Implemented patient monitoring systems for hospitals.
Involved in all the backend projects.

Techs

NodeJS, MongoDB, PostgreSQL, ExpressJS, MongooseJS, SequelizeJS, Rancher, AWS/EC2, AWS/S3, AWS/RDS.

Libraries and api

node-schedule : For cron jobs.
jsonwebtoken : For token creation of user details.
bcrypt : For encrypting user password.
cors : To allow cross-origin resource sharing.
dotenv : To use env variables in code.
uuid : For creating unique userid for products of Dobby.
multer-gridfs-storage : For uploading and storing files.
body-parser : For parsing request bodies.
nodemon : Runs program and reloads if encounters changes in code.

DOBBY ADS - Internship

Dobby

Feb 2019 - Jan 2020

About

Dobby is an advertising startup. It installs LCD screens in supermarkets and displays monetized adverisements of adveritsers based on their purchased subscriptions. Dobby also displays it's own ads and that of shop owners.

Role

Worked in backend and DevOps.
Integrated online payment flow using cashfree and automatic invoice generation flow after successful payment.
Restructured the whole backend code in MVC structure.
Implemented end to end backend flow of offerImage creation in which backend generates offerImages based on selected products and offervalues provided. Added cron job for it's everyday creation.
Implemented all DB architectural changes and optimization.
Completed and deployed First version of DobbyAds server and later releases.
Created Test cases for testing all the modules.
Configured NGINX with modsecurity and owasp rules in AWS EC2, integrated S3, moved to Spot instance from on Demand instance and added reserved instance for cost optimization of AWS.
Introduced visual web log analyzer to monitor site hits, anamoly activities and blacklisting potentially harmful IPs.
Neutralized random crawlers and bots hits on portal.
Made multiple frontend projects and a central server live on same aws instance.
Maintainer of dev, test and prod branches of Frontend and backend projects.
Implemented continuous integration and continuous deployment of all frontend and backend projects.

Techs

NodeJS, PostgreSQL, ExpressJS, SequelizeJS, Nginx, AWS/EC2, AWS/S3, AWS/RDS.

Libraries and api

node-schedule : For cron jobs.
passport : For user authentication and authorization.
jsonwebtoken : For token creation of user details.
bcrypt : For encrypting user password.
cors : To allow cross-origin resource sharing.
dotenv : To use env variables in code.
jimp : For image generation.
uuid : For creating unique userid for products of Dobby.
multer-gridfs-storage : For uploading and storing files.
body-parser : For parsing request bodies.
nodemon : Runs program and reloads if encounters changes in code.

Projects

E-Commerce site

Crwn-Clothing

Intro

It's an E-commerce web-app with login & payment options. It's built using ReactJS, Redux, Redux-Sagas.

Features

User Sign-up, Login and Login with Google is supported.
Stripe payment gateway is used for handling the payments.
Firebase is used for authentication, firestore for storing user data, shopping items data, etc.
Redux, Redux-Sagas are used for state management in the app.
NodeJS is used for handling payment flow requirements.
User can Add items to purchase to the shopping cart.
After selecting required number of items, user can proceed to checkout.
User can add/remove items from shopping cart in checkout page.

Techs

NodeJS, ReactJS, Firebase, Stripe payments, Redux, Redux-Sagas, ExpressJS, etc.

Libraries and api

axios : For api requests.
body-parser : For parsing request bodies.
firebase: For auth and db queries.
react-redux: For state management.
redux-logger: For logging user actions.
redux-persist: For persistance of data in browser.

The Chat Bot

Chat Bot

Intro

It's a Facebook messenger integrated AI Bot which is trained for automizing the interview process. However it can be trained for any other purposes too.

Features

It uses NLP so can pick up the words and can answer appropriately.
Context is also maintained by bot.
Quick replies are made available in it.
Right now its integrated with facebook app, can also integrate it with any personal or professional site.
Data recieved from the chat can also be saved.
Can also integrate it to the Google Assistant, Amazon Alexa, Microsoft Cortana, Slack, Viber, Twitter, Telegram, Skype, Line, etc.
It can also perform small talks, faq, etc.
By using it company can automate any specific workflow easily, thus saving menpower utlizing technology.

Techs

NodeJS, DialogFlow, Facebook Messenger App, MongoDB, EJS, ExpressJS, MongooseJS and Semantic UI.

Libraries and api

nodemailer : For sending mails
body-parser : For parsing request bodies.
apiai : For conversing to the dialogflow.
uuid : For making unique user id.
request : For making request call to api and recieve data from it.

Recipedia

Recipedia.com

Intro

It's a web-app which has more than 1,000,000 recipes.

Features

User can search recipe.
Recipe list appears in order according to algorithm which takes social ranking and ohter factors in count.
Can view recipe list and view specific recipe in details.
Can view its ingredients, change servings, see recipe time.
User can save recipe as favorite.
User can add ingredients required in recipe to it's shopping list.
He can change count amount of ingredients in it.
User's favorite recipes are stored and available always.

Techs

NodeJS,Express, ES6.

Libraries and api

Food2Fork : For recieving data of recipes.
Request : For making request call to api and recieve data from it.
Webpack : To bundle together all JS modules
Babel : For converting ES6 code to ES5.
babel-polyfill : To polyfill code which can't be converted to ES5.
fraction.js : To convert decimal numbers to fractions
uniqid : For creating unique ids for recipes.
supervisor : Runs program and reloads if encounters changes in code.

ChatRoom

ChatRoom

Intro

It's a chatroom web app, where users can join/create different rooms and chat on common subjects.

Features

Users can join or creat a room.
The rooms have real-time messaging service built using socket.io.
😁ī¸đŸ˜‚ī¸đŸ¤Ŗī¸đŸ˜Žī¸đŸ˜‹ī¸đŸ˜ī¸đŸ˜‹ī¸đŸ¤Šī¸đŸ¤Ēī¸đŸ˜†ī¸đŸ˜´ī¸đŸ˜œī¸đŸ¤“ī¸ are supported 😉ī¸.
Messages are not stored on server for privacy purpose.

Techs

NodeJS, Socket.IO, ReactJS, ReactHooks, MaterialUI.

Libraries and api

socket.io: For real-time chat support.
emoji-mart : For Emoji support.
@material-ui/core: For styling.

CampAdventures

CampAdventures.com

Intro

It's social-app in which user can share their camping experiences by posting it and can view others camping review of different places.Can also comment on others posts.

Features

User can post their camps, write about their experience, share it's pic, show its expenses.
User can signup and have an account.
User can view others camps after logging in. Can also comment on them.
User can update or delete their camps details such as image, description, name and expense. He/She can also update or delet comments made by him/her.

Techs

NodeJS, MongoDB, EJS, ExpressJS, MongooseJS, PassportJS and Semantic UI.

Libraries and api

passport,passport-local,passport-local-mongoose : For user authentication and authorization.
connect-flash : To flash messages on screen.
express-session : For creating web sessions.
body-parser : For parsing request bodies.
supervisor : Runs program and reloads if encounters changes in code.
others : method-override

Student Section

student-section

Intro

It's my final year project, our team created a web app which is used by our college for abolishing and digitalizing their paper work.

Features

It contains two user interface, one for faculty and other for students.
Faculty can search details of any student using by id no., name, city,etc.
He can generate scholarship schemes and can use it as filter for students.
He can send notification to student's account and to student's mail id too.
Notifications could be instant or time based, in later email would be sent on selected date and time.
Can filter out students who haven't submitted their term or exam fee in portal.
Can upload excel file of data regarding term, hostel and exam fees, list of newly addmitted students,
Student can upload fees reciepts to app.

Process

Faculty uploads new addmitted students file, from it new students signup are created.
Student uploads their fees reciepts to app.
Students who have not submitted reciepts are informed via notifications on their account and on their mail ids.
Marksheet file of students recieved from university by college is uploaded and results of students is created on app, which is visible to faculties.

Techs

NodeJS, MongoDB, EJS, ExpressJS, MongooseJS and Semantic UI.

Libraries and api

node-schedule : For sending sending emails and notifications on scheduled time.
nodemailer : For sending mails.
all-object-keys : For making specific data available to all web-pages.
mongo-xlsx : For converting excel file to mongo data.
passport : For user authentication and authorization.
async : For making async calls.
connect-flash : To flash messages on screen.
multer-gridfs-storage : For uploading and storing files.
express-session : For creating web sessions.
body-parser : For parsing request bodies.
supervisor : Runs program and reloads if encounters changes in code.
others : gridfs-stream,deasync, cookie-parser,etc

MovieResearcher

MovieResearcher.com

Intro

It's a web-app in which one can search a movie and see it's details like imdb ratings, director, cast, runtime, writer, awards, plot, etc.

Features

User can search movie.
On search a list of movies is shown from which user can select a specific movie.
On search input app shows all movies with matching title.
The navigation of pages is such that one can navigate to any previous searches.
He can send notification to student's account and to student's mail id too.
The app uses omdb api, which has a huge data of movie's detials.

Techs

NodeJS, EJS, ExpressJS and Semantic UI.

Libraries and api

omdb api : For sending requests and retrieve data of movies.
request : For making request call to api and recieve data from it.
supervisor : Runs program and reloads if encounters changes in code.

The DiceGame

DiceGAME

Intro

It's dice game created for two players, it's a frontend game created using ES6 and CSS3.

Game play

Player rolls the dice and has choice either to save score or to roll again.
If player saves, the current dice score is added to it's total score and chance to roll dice goes to oponent.
If player chooses to roll the dice and if both dices shows one, one number then current score of player is not saved and turn goes to oponent.
So, a player can roll dice till the both dices shows one one number.
The player who succeeds to score more than 99 total score is declared as winner.
The players can any time opt for a new game.

Techs

NodeJS, ES6, ExpressJS, HTML5, CSS3.

The GitHub Card

GitHub-Card

Intro

It's a GitHub-Card which can be used by anyone in their own website.Though it's currently under construction, I'm making it more dynamic and easy to use and embedable code.

Features

It's easy to use interface, just give the git account name and the github card will be shown to user.
User can simply copy code in it's own website and use it.
The card is responsive for mobile too.
It's look is better than available cards.

Techs

NodeJS, EJS, ExpressJS and Semantic UI.

Libraries and api

github-scraper : Api used for retrieving data of git account.
request : For handling request calls to the api
supervisor : Runs program and reloads if encounters changes in code.

Todo App

TodoApp

Intro

It's web-app for todo list.

Features

User can add multiple todo lists.
User can Add, Remove, Strike multiple tasks in a list.
Authentication is required for accessing list.

Techs

NodeJS, MongoDB, SemanticUI, Javascript, PassportJS.

The BookMarker

Bookmarker

Intro

It's web app to bookmark your favorite site.

Features

User can save the url of site with a name of it.
User can visit the saved bookmarks on clicking the visit button made available with it.
User can also delete the bookmark.
The bookmarked sited are available even after closing of window or the web browser.

Techs

HTML, CSS, Javascript, Bootstrap.

Technologies