Skip to content
Hooney
한국어

Team projects · In progress

ONE tech eCom

On ONE's eCom service for a global container carrier, I carry each country's filing requirements for shipping instructions (SI) and bills of lading (B/L) from the input screen through storage to the printed documents.

1-2Work cycles (sprints) to finish alone what took 3 to 4 people 2 to 3 cycles (tech lead's assessment)

Period
2026.06 ~ Present
Organization
ONE (Ocean Network Express)
Role
Full-stack development and data contract design

Core value

Only the country fields a route needs appear on screen, and server checks, storage, and printed documents follow the same conditions.

Outcomes

  • The shipping instruction summary shows bill of lading status by the same rules as the shipment overview
  • Filing requirements for Korea, Portugal, Saudi Arabia, Egypt, the US, and Canada
  • Twelve country customs input screens moved to the team's shared design
  • Shared the AI agent workflow with the whole eCom team, about 16 people

Tech stack

  • Next.js
  • React
  • TypeScript
  • NestJS
  • gRPC
  • Playwright

Context

I own the document flow from shipping instruction (SI) intake to bill of lading (B/L) issuance across the stack. Each country requires different fields on different routes, so what the screen shows, what the server validates, what is stored, and what the document prints must all follow the same conditions. I build on the team’s existing product, design system, and legacy operations core.

Decisions and implementation

  • I added the Korean export license, Portuguese taxpayer number, Saudi contact details, Egyptian consignee tax ID, and US and Canadian manifest filer codes, gated by route and feature flags. Each change, from input validation through storage, read-back, and the SI print or B/L detail, was merged into the integration branch.
  • In an architecture split into a REST BFF and gRPC services, I extended proto contracts together with their service implementations. I took the changes where a single field crosses the frontend, gateway, and service, and kept the data contracts aligned across layers.
  • I absorbed the Saudi contact requirement into the legacy core’s existing columns. Without growing the proto or DTOs, I designed storage and read-back checks so existing integrations kept working.
  • So the SI summary shows B/L print status by the same rules as the shipment overview, I implemented the query, status display, CSV, Excel, and PDF exports, and email labels on both frontend and backend.
  • I moved the container and commodity tables and twelve country customs sections to the team’s design system, matching legacy specs, responsive sizing, and frozen columns without changing existing logic.
  • AI agents drafted code and tests across three repositories while I owned contract design and review. By the tech lead’s assessment, I finished in one or two sprints alone changes that took three or four people two or three sprints, and in September 2026 I presented the method to the whole eCom team in an internal session.

Current state

The work is in progress. I finalized the target design for the partner portal backend, and its development assignment is pending.