Skip to main content

InternWare

2 min read

Backend Engineer · Present

Table of contents

Overview

At InternWare, I worked on backend systems powering event registration platforms, authentication systems, payment workflows, coupon management, and administrative tooling.

Unlike most of my personal projects at that time, these systems were used by real users and involved real payment processing, exposing me to production challenges and business requirements.

Impact

1. Session Persistence Improvement

Problem

Users were getting logged out whenever they refreshed the website and had to login again.

Solution

Implemented cookie-based session management to persist user sessions even after page refresh.

Impact

  • Improved user experience.
  • Reduced repeated authentication.
  • Maintained user session across refreshes.

2. Authentication Architecture Improvement

Problem

We were dependent on Firebase for Google Authentication.

Any breaking change or issue in Firebase could potentially affect the login flow.

Solution

Implemented Google Authentication directly using Google's OAuth APIs.

Impact

  • Reduced dependency on Firebase-specific implementation.
  • Gained more control over authentication flow.

Personal Learning

This was the first time I implemented Google Authentication directly using Google's APIs.

3. Payment Architecture Improvement

Problem #1

Payment amount calculation was happening on the frontend.

Frontend values can be manipulated easily.

Solution

Moved amount calculation logic to the backend and used database values instead of trusting client input.

Impact

  • Improved payment security.
  • Centralized pricing logic.
  • Prevented client-side manipulation.

Problem #2

Registration depended on the frontend calling the registration API after payment success.

A user could successfully complete payment and close the browser before registration happened.

Solution

Moved registration flow to webhook-based confirmation.

Registration now happens after receiving payment confirmation from the payment gateway.

Impact

  • Reduced cases where users paid but were not registered.
  • Improved consistency between payment and registration states.

4. Coupon System

Problem

Discount logic was hardcoded.

Whenever a new discount was needed, developers had to update the code.

This created dependency on the engineering team.

Solution

Built a coupon management system that allowed administrators to:

  • Generate coupons.
  • Expire coupons.
  • Manage coupon lifecycle.

Impact

  • Reduced developer dependency.
  • Faster marketing execution.
  • Improved operational flexibility.

5. Admin Panel

Built internal tooling for:

  • Registration management.
  • Student management.
  • Marketing operations.
  • Analytics visibility.
  • RBAC.

Impact

Provided a single source of truth for event operations.

Technologies Used

Node.jsExpressMongoDBCashfreeGoogle OAuthJWTWebhooks

Projects built during this role

Lakshay Mahajan

Backend Engineer focused on building reliable systems with Node.js, MongoDB, and AWS.

Connect

© 2026 Lakshay Mahajan