Skip to content

LunaiOne là gì?

🌐Public

LunaiOne là nền tảng tuyển dụng (CRM/ATS) trung tâm vận hành bởi Lisod Japan. LunaiOne quản lý:

  • Database ứng viên, công ty, hồ sơ ứng tuyển — single source of truth
  • Workflow ứng tuyển 11 trạng thái
  • Permission & multi-tenant — mỗi tenant có thể có brand/logo riêng

Hai mặt của hệ thống

MặtURLĐối tượng
Backoffice (CRM/ATS)portal.alltalentbank.comLisod team + Job Owner + Talent Supplier admin
Public job boardlunaiwork.comỨng viên xem job + nộp đơn

"First-party" và "LunaiWork" — giải thích kỹ

First-party (1P) vs Third-party (3P)

LunaiOne là marketplace tuyển dụng — kết nối Job Owner với Talent Supplier. Trong mọi marketplace có 2 loại bên tham gia:

LoạiĐịnh nghĩaVí dụ ngoài đời
First-party (1P)Bên do chính người vận hành nền tảng đóng vaiAmazon vừa là marketplace vừa bán hàng riêng (Amazon Basics)
Third-party (3P)Bên ngoài tham gia trên nền tảngCác seller khác bán hàng trên Amazon

"LunaiWork" là gì cụ thể

LunaiWorkbrand consumer-facing vận hành bởi JSArt trên nền tảng LunaiOne. JSArt là pháp nhân tenant đầu tiên (founding tenant), dùng brand "LunaiWork" cho job board công khai lunaiwork.com.

JSArt qua brand "LunaiWork" đóng đồng thời 2 vai trò:

LunaiWork as...Đóng vai entity gìHành động cụ thể
Job PartnerJob Owner (JSArt instance)JSArt sourcing job từ thị trường, đăng vào nền tảng qua brand LunaiWork
Talent SupplierTalent Supplier (JSArt instance)JSArt sourcing ứng viên qua kênh khác, submit vào nền tảng

Các tenant khác (foredge, SkillfloTalent, VTalent, Sekisho, Grasp, ...) là tenant 3P song song với JSArt/LunaiWork.

Tại sao có founding tenant đóng cả 2 vai?

Lý doGiải thích
Seed liquidityMarketplace mới ít người dùng → JSArt (qua LunaiWork) đóng 2 phía để có giao dịch ngay từ đầu
Đảm bảo chất lượngJSArt kiểm soát được chất lượng job/ứng viên khi tự sourcing
Học mô hìnhHiểu sâu workflow cả 2 phía trước khi onboard tenant khác
Backup khi tenant 3P chưa activeKhi tenant khác chưa đủ supply, JSArt bù vào để pipeline không trống

Conflict of interest cần quản lý

JSArt là tenant như mọi tenant khác trên LunaiOne — không có conflict đặc biệt do không vận hành nền tảng. Tuy nhiên vì là founding/largest tenant, governance vẫn cần đảm bảo:

  • ✅ Matching algorithm trung lập (LunaiWork và 3P khác được match cùng tiêu chí)
  • ✅ Fee structure bằng nhau
  • ✅ Audit log minh bạch
  • ✅ Tenant khác thấy được dashboard công bằng

→ Chi tiết governance: knowledge nội bộ 02-van-hanh/mo-hinh-dich-vu.md.

Phân biệt khi xem UI

  • "LunaiWork" trong module Jobs = LunaiWork as Job Partner (JSArt đăng job)
  • "LunaiWork" trong module Collaborator applications = LunaiWork as Talent Supplier (JSArt submit ứng viên)
  • Cùng tên brand nhưng phải đọc theo context module

Tránh nhầm lẫn 3 thứ này

TênThực ra là gìVận hành bởi
LunaiOneNền tảng (DB + auth + admin trung tâm)Lisod Japan
JSArtPháp nhân tenant — vận hành brand LunaiWorkJSArt
LunaiWorkBrand consumer-facing của JSArt trên LunaiOneJSArt (qua LunaiOne)
lunaiwork.comDomain public-facing (job board) — branded "LunaiWork"JSArt (qua LunaiOne)

→ Backoffice tại portal.alltalentbank.com đang hiển thị logo LunaiWork không có nghĩa app tên là LunaiWork. Đó là LunaiOne backoffice (do Lisod vận hành) đang hiển thị brand của tenant founding (JSArt qua LunaiWork). Trong tương lai có thể có view riêng cho central admin với brand khác.


Kiến trúc tổng thể

Client Company — pháp nhân khách hàng của Job Owner

Mỗi job thuộc về 1 client company (pháp nhân khách hàng của Job Owner). Đây là actor riêng, không phải Job Owner.

Khái niệmCó user account login?Vai trò
Client Company (pháp nhân)❌ Không bắt buộcMetadata: job thuộc công ty nào
Sub-tenant job_owner_client_user✅ Có accountKhi JO muốn cấp truy cập cho client xem dashboard

→ Mọi sub-tenant đều là 1 client company, nhưng không phải client company nào cũng là sub-tenant (đa số chỉ là metadata).

Anonymous job posting — ẩn thông tin công ty

Job có thể đăng ở 2 chế độ:

Chế độÝ nghĩaKhi nào dùng
VisibleHiện tên client company trên job listingMặc định — minh bạch, branding tốt
AnonymousẨn tên company, chỉ hiện ngành / quy mô / vị tríKhi client company yêu cầu giữ kín, hoặc job nhạy cảm (vd: thay thế người đang làm)

→ Xem chi tiết tại Module Jobs.


LunaiOne ≠ LunaiWork ≠ lunaiwork.com (lặp lại để khắc cốt)

  • LunaiOne (central) = nền tảng nền + DB + auth + admin trung tâm
  • LunaiWork = brand của hoạt động first-party do Lisod đóng (đóng cả Job Partner + Talent Supplier)
  • lunaiwork.com = domain public-facing job board, branded "LunaiWork"
  • Knowledge cũ dùng "LunaiWork" lẫn lộn 3 nghĩa — đã được làm rõ trong 02-van-hanh/role-dictionary.md

Tenant của LunaiOne

TenantLoạiTình trạng tích hợpDBAuth
LunaiWorkFirst-party (Lisod-operated)🔵 Native — chạy trực tiếp trên LunaiOneTrung tâmportal.alltalentbank.com
Sekisho (globalconnections.jp)Sub-system tenant🔴 Standalone — tách hoàn toànRiêngRiêng
GraspSub-system tenant🟡 Shared auth, own DBRiêngChung qua portal.alltalentbank.com

External integration (KHÔNG phải tenant)

SystemLoạiMô tả
LunaiMentor🟠 External HR AIHệ thống AI tích hợp ngoài. Không phải tenant. Hợp đồng và thanh toán riêng với khách.

→ Xem chi tiết tại Hệ thống & sub-system.

Đối chiếu khi phát triển

Khi phát triển feature mới:

  1. Đọc trang help liên quan → hiện trạng có gì
  2. Đọc knowledge nội bộ (01-he-thong/, 02-van-hanh/) trong git repo → tầm nhìn dài hạn
  3. Đề xuất implementation gần vision nhất, không phá hiện trạng