# 🤝 Developer Onboarding Guide — GOFLOW Enterprise AI OS Portal

**Developer Onboarding Guide**
เวอร์ชัน 1.0 · Confidential – GOFLOW Enterprise · อัปเดตล่าสุด: 2026-08-07
เป้าหมาย: สมาชิกทีมใหม่เริ่มพัฒนางานแรกได้ภายใน **3 วันทำการ**

---

## 1. ภาพรวม (First Week Plan)

| วัน | กิจกรรม | ผลลัพธ์ |
|---|---|---|
| Day 1 | Onboarding: เอกสาร, สิทธิ์, สภาพแวดล้อม | เข้าใจโปรเจกต์ + เข้า Git ได้ |
| Day 2 | ติดตั้ง dev environment + รันระบบ | ระบบรัน local ได้ |
| Day 3 | งานแรกเล็ก ๆ (first issue) + PR แรก | PR แรกผ่าน review |

---

## 2. เอกสารที่ต้องอ่านก่อน (Day 1 — ~2 ชม.)

เรียงตามลำดับ:

1. `docs/01-prd.md` — เข้าใจเป้าหมายธุรกิจและขอบเขต
2. `docs/02-system-architecture.md` — เข้าใจสถาปัตยกรรมและบทบาทของตัวเอง
3. `docs/03-ui-ux-design-system.md` — เข้าใจ Design System (ถ้า Frontend/UI)
4. `docs/04-api-specification.md` — เข้าใจ API (ถ้า Backend/Fullstack)
5. `docs/05-database-schema.md` — เข้าใจข้อมูล (ถ้า Backend/Data/AI)
6. `docs/10-coding-standards.md` — **ทุกคนต้องอ่าน**
7. `docs/06-sprint-backlog.md` — ดูงานของ sprint ปัจจุบัน

**เอกสารอ้างอิงระบบหลัก (ใน D:\GOFLOW-DOCS):** AIOS Architecture, NEXUS AI Release Manifest, AI Level Framework, Governance & Security

---

## 3. การตั้งค่า Environment (Day 2)

### ข้อกำหนด

| รายการ | เวอร์ชัน |
|---|---|
| Node.js | ≥ 22 |
| pnpm | ≥ 9 |
| Docker Desktop | ล่าสุด |
| PostgreSQL | 16 (ผ่าน Docker) |
| Git | ล่าสุด |
| Editor | VS Code + extensions (ESLint, Prettier, Prisma) |

### ขั้นตอน

```bash
# 1. Clone โปรเจกต์ (Monorepo)
git clone <repo-url> goflow && cd goflow

# 2. ติดตั้ง dependencies
pnpm install

# 3. ตั้งค่า environment
cp .env.example .env.local   # แล้วกรอกค่า dev (ไม่มี secret จริง)

# 4. รันฐานข้อมูล + บริการย่อย
docker compose up -d

# 5. สร้าง schema + seed data
pnpm db:migrate
pnpm db:seed

# 6. รัน dev servers
pnpm dev            # web (Next.js) ที่ localhost:3000
pnpm dev:api        # api (Fastify) ที่ localhost:8080
```

### ตรวจสอบว่ารันสำเร็จ

- [ ] เปิด `http://localhost:3000` เห็นหน้าเว็บ
- [ ] เปิด `http://localhost:8080/health` → `{ "status": "ok" }`
- [ ] `pnpm test` ผ่านทั้งหมด

---

## 4. โครงสร้าง Monorepo

```
goflow/
├── apps/
│   ├── web/            # Next.js 16 — เว็บไซต์
│   │   ├── app/        # App Router (pages)
│   │   ├── components/ # UI components
│   │   ├── lib/        # utils, api client
│   │   ├── public/     # static assets
│   │   └── styles/     # global styles + tokens
│   └── api/            # Fastify — API Gateway
│       ├── src/routes/ # endpoints
│       ├── src/services/
│       └── src/plugins/ # auth, rate-limit, helmet
├── packages/
│   ├── ui/             # shared UI kit
│   ├── config/         # shared config (eslint, ts)
│   └── types/          # shared types (API contracts)
├── docs/               # เอกสารชุดนี้
├── docker-compose.yml
└── README.md
```

---

## 5. Workflow การทำงานประจำวัน

```bash
# 1. อัปเดต branch ให้ทัน main
git checkout main && git pull

# 2. สร้าง feature branch
git checkout -b feature/S2-04-ai-chat-widget

# 3. พัฒนา + commit (Conventional Commits)
git add .
git commit -m "feat(web): add AI chat widget"

# 4. push + สร้าง Pull Request
git push -u origin feature/S2-04-ai-chat-widget
```

**ก่อน push ตรวจ:** `pnpm lint` + `pnpm test` + `pnpm typecheck` ผ่าน

---

## 6. กระบวนการ Pull Request

1. PR title ตาม format: `feat(scope): สิ่งที่ทำ` / `fix(scope): …`
2. คำอธิบาย: อ้าง Issue ID (เช่น `Closes #42`), สิ่งที่เปลี่ยน, วิธีทดสอบ, screenshot (ถ้ามี UI)
3. AI Code Review จะ comment อัตโนมัติ — ตอบ/แก้ให้ครบ
4. Human Review ≥ 1 คน approve
5. ผ่าน Quality Gate (lint → test → build) → Merge
6. ลบ branch หลัง merge

**ห้าม:** merge เองโดยไม่ผ่าน review · push ตรง main · commit secrets

---

## 7. ช่องทางติดต่อและความช่วยเหลือ

| ช่องทาง | ใช้กับ |
|---|---|
| Lead Full Stack | สถาปัตยกรรมโค้ด, review, release |
| ทีม QA | test plan, bug, quality gate |
| ทีม DevOps | environment, deploy, CI/CD |
| ทีม AI | NEXUS AI, RAG, prompt |
| Documentation | แก้/เพิ่มเอกสาร |

**กติกา:** ติดขัดเกิน 30 นาที → ถามก่อน · ถามเป็นข้อมูล ไม่ใช่คำสั่ง · ตอบแล้ว update ให้ทีม

---

## 8. งานแรกที่แนะนำ (First Issues)

| บทบาท | งานแรกที่แนะนำ |
|---|---|
| Frontend | S1-04 Hero Section หรือ S1-07 Footer |
| Backend | S1-11 Auth service หรือ S2-11 Recruitment API |
| AI | S2-05 AI Core service proxy |
| DevOps | S1-12 Docker Compose หรือ S1-13 CI |
| QA | S1-14 Test plan skeleton |
| UI/UX | S1-01 Design System v1 |

---

## 9. วัฒนธรรมทีม (Team Rules)

- **Transparency:** อัปเดตสถานะงานทุกวันใน standup
- **Ownership:** เป็นเจ้าของงาน ตั้งแต่ design จนถึง production
- **Feedback:** ให้ feedback ตรงไปตรงมา เกรงใจแต่อย่าปิดบัง
- **Learning:** สัปดาห์ละ 1 ชม. share session (AI, เทคนิค, case study)
- **Document:** สิ่งไหนที่ทำซ้ำได้ ต้องมีเอกสาร

---

*เอกสารนี้เป็นส่วนหนึ่งของ GOFLOW Developer Kit — ใช้คู่กับ 10-coding-standards.md และ 06-sprint-backlog.md*
