NITESH DHUNGANA/ SYSTEMS

Gaaubesi Logistics · Backend Developer · November 2021 — July 2024

Logistics and Real-time Operations

Operational applications supporting delivery workflows, HR processes, chat, and notifications.

01Context

Gaaubesi Logistics needed internal systems to run delivery operations and HR processes, alongside real-time communication so staff could coordinate without refreshing a page or waiting on email. Nitesh built the backend for these applications across delivery management, HR, and a real-time chat and notification layer.

02Constraints
  • Delivery status needed to reach staff and relevant systems as it changed, not on a polling delay.
  • HR and delivery-management tools were used daily by non-technical staff, so the backend had to support workflows that stayed predictable under normal operational load.
  • Real-time features (chat, notifications) had to coexist with the same Django codebase serving conventional request/response traffic.
03Responsibilities
  • Built scalable applications using Django and Python
  • Developed delivery-management systems and HR portals
  • Worked with cross-functional product teams to translate operational needs into backend features
  • Implemented real-time chat and notifications using WebSockets
04Architecture

Standard delivery and HR workflows are served through Django views and PostgreSQL as conventional request/response applications. Real-time features run alongside this through a WebSocket layer, allowing delivery status changes and chat messages to be pushed to connected clients as they happen, with Redis used to support message brokering between server processes.

05Technical decisions
  • Kept WebSocket-driven features (chat, notifications) as an addition to the existing Django application rather than a separate service, which kept deployment and data access simple for a small backend team.
  • Used Redis as the layer that lets multiple server processes share real-time state, rather than assuming a single process handles all connections.
  • Modeled delivery status as an explicit, auditable state machine so operational staff and downstream systems see consistent status values.
06Reliability considerations
  • Real-time features degrade to standard request/response behavior if a WebSocket connection drops, rather than losing the underlying data.
  • Delivery and HR data is written through the same transactional database used by the rest of the application, avoiding a separate source of truth for real-time state.
07Technology used
  • Django
  • Python
  • PostgreSQL
  • WebSockets
  • Redis
08Lessons learned
  • Real-time features are easiest to reason about when they are treated as a delivery mechanism for state that already has a durable source of truth, not as the source of truth itself.
  • Operational tools succeed on predictability: staff using delivery and HR systems daily benefit more from consistent behavior than from added functionality.
← Back to selected systems/About Nitesh