Project Case StudySeptember 2025

Muatparts Plus

Marketplace platform connecting Indonesian buyers with local Muatmuat sellers and international sellers through preorder, contract request, and purchase order workflows.

DesktopMobileNode.jsTypeScriptExpress.jsSequelize ORMRedisSocket.ioKibanaDocker

#Muatparts Plus

##Architectural Overview

Muatparts Plus is a marketplace platform built to connect Indonesian buyers with automotive part sellers through two distinct operating models: Muatparts Plus, which serves local Indonesian buyers and local Indonesian sellers under the Muatmuat white-label brand, and Plus Global, which connects Indonesian buyers with international sellers. The ecosystem supports buyer-facing web and mobile applications, responsive seller-facing web panels, and an operational interface for Customer Service teams. As a Backend Engineer, I worked on the monolithic backend that keeps catalog requests, seller coordination, contract workflows, and marketplace transactions aligned across these multi-entity purchase flows.
Muatparts Plus Marketplace

// Muatparts Plus Marketplace

##Key Features

Cross-Border and Local Marketplace Flows
The platform supports two marketplace models: one for Indonesian buyers and local sellers under Muatmuat branding, and another for Indonesian buyers sourcing directly from international sellers.
Buyer Web and Mobile Experience
Dedicated buyer applications make it easier for customers to browse listings, submit requests, monitor order progress, and move through purchasing workflows from multiple devices.
Preorder and Request Management
In Muatparts Plus, buyers can submit preorder-style requests so sellers or internal teams can process demand even when inventory needs to be coordinated first.
Contract Request and Purchase Order Workflows
In Plus Global, contract requests and purchase orders are tightly linked, allowing international part sourcing to move through a more structured approval and procurement process.

##Engineering Highlights

###Multi-Entity Marketplace Core

The system had to coordinate multiple business actors inside one backend: - Monolithic Service Architecture: Built the core logic with Node.js, TypeScript, and Express.js so buyers, sellers, and customer service teams could all operate against one consistent transaction model. - Relational Workflow Modeling: Used Sequelize ORM to define the relationships between marketplace requests, seller responses, product records, contract requests, and purchase orders without losing control over process dependencies.

###Procurement and Request Coordination

The more complex value of the platform sits in how requests move through the marketplace: - Request Lifecycle Handling: Structured the backend to support preorder and request management in Muatparts Plus, where buyer intent can be captured first and fulfilled through coordinated seller workflows. - Contract-to-Order Flow: In Plus Global, designed the logic so contract requests and purchase orders stay connected, reducing the risk of fragmented procurement steps across international seller transactions. - Customer Service Chat Support: Used Socket.io specifically for customer service chat, while broader order visibility relied on more conventional refresh-based operational views instead of fully real-time socket-driven updates.
Seller and Request Management

// Seller and Request Management

##My Role and Responsibilities

  • API Development: Implemented the backend endpoints serving buyer applications, seller dashboards, and customer service operations so all three entities could work from the same transactional source of truth.
  • Marketplace Workflow Logic: Built the business logic that connects Indonesian buyers to either Muatmuat-managed local sellers or international sellers, depending on the marketplace variant being used.
  • Request and Procurement Handling: Maintained the state transitions for preorder flows, contract requests, and purchase orders so each transaction step remained traceable and operationally safe.
  • Order Status Visibility: Supported order monitoring through sequential refresh behavior for parts of the order list, keeping status updates practical without forcing the entire marketplace flow into a full Socket.io-based real-time model.
  • Performance and Runtime Support: Used Redis for high-frequency operational lookups and containerized the application with Docker to keep the monolithic service predictable across development and deployment environments.
  • Error Monitoring: Relied on Kibana to review logs and investigate application issues across the marketplace workflow.
Purchase and Procurement Flow

// Purchase and Procurement Flow

##Technical Stack

- Languages: Node.js, TypeScript - Frameworks: Express.js - Architecture Style: Monolithic Backend - Database Access: Sequelize ORM - Caching Layer: Redis - Customer Service Chat: Socket.io - Order Status Refresh: Sequential polling / periodic refresh - Monitoring & Logging: Kibana - Infrastructure & Runtime: Docker