เลิกเรียกมันว่า Technical Debt : วิธีปลดล็อกให้ Business ยอม จ่าย เพื่อการ Refactor

1. กับดักของคำว่า หนี้

เมื่อ 30 ปีก่อน Ward Cunningham คิดคำว่า "Technical Debt" ขึ้นมาเพื่อให้ผู้บริหารเข้าใจง่ายๆ ว่าการเขียนโค้ดเร็วๆ คือการกู้ยืมอนาคต แต่ในบริบทปัจจุบัน คำนี้กลับกลายเป็นตัวผนึก Developer เอง

  • คำว่า "หนี้" ทำให้เรามองย้อนหลังไปแต่อดีต โฟกัสแต่สิ่งที่ ผิดพลาดหรือ ต้องตามเช็ด
  • ไม่มีใครชอบจ่ายหนี้ การเอาตั๋ว Tech Debt เข้า Backlog จึงเหมือนการเอาขยะไปยัดใส่ลิ้นชักที่ทุกคนอยากจะปิดตาย
  • มันขีดเส้นแบ่งชัดเจนว่านี่คืองานของ Dev ซึ่ง Business มักมองไม่เห็นว่า แล้วฉันจะได้อะไร?

2. เปลี่ยนมุมมอง จากใช้หนี้เป็นลงทุน

Emily เสนอทางออกที่ฟังดูเรียบง่ายแต่ทรงพลัง เลิกใช้คำว่า Tech Debt เมื่อคุณตัดคำนี้ออกจากพจนานุกรม คุณจะถูกบีบให้ต้องอธิบายคุณค่าของงานนั้นจริงๆ

  • อย่าบอกว่า ขอเวลา 3 วันไปแก้ Tech Debt ตรงระบบ User
  • ให้บอกว่า เราต้องปรับปรุงโครงสร้างข้อมูลตรงนี้ เพื่อให้ฟีเจอร์ใหม่ที่กำลังจะทำ สามารถรองรับลูกค้าได้เพิ่มขึ้น 2 เท่าโดยไม่ล่ม

นี่คือการเปลี่ยนจาก Tech Problem ให้เป็น Product Opportunity

3. เลิกแยกการ์ด Tech Debt ออกจากงานหลัก

การสร้าง Ticket แยกสำหรับ Tech Debt มักจะจบลงที่ Backlog ที่ไม่มีวันถูกหยิบมาทำ

  • ให้รวมงานปรับปรุงโค้ดเข้าไปเป็นส่วนหนึ่งของฟีเจอร์ใหม่เลย
  • เหมือนกับเชฟที่ทำความสะอาดครัวไปพร้อมๆ กับการทำอาหารจานใหม่ ไม่ใช่รอให้ครัวเละจนทำอาหารไม่ได้แล้วค่อยมา Big Cleaning

4. บทสรุปสำหรับ Sandwiched Developer

เรามักติดกับดัก Code Quality จนลืมไปว่าเป้าหมายสูงสุดคือ Product ที่ส่งมอบคุณค่าได้

การเลิกใช้คำว่า Tech Debt ไม่ใช่การยอมแพ้เรื่องคุณภาพโค้ด แต่คือการ เติบโต ไปอีกขั้น จากคนที่เขียนโค้ด เป็นคนที่เข้าใจ Strategy ของ Product

Takeaway: ครั้งหน้าที่อยาก Refactor อย่าเดินไปบอกเขาว่า ผมจะแก้ tch dept แต่ให้เดินไปบอกว่า ผมจะทำให้ Product ของเราไปถึงเป้าหมายได้เร็วขึ้นและมั่นคงขึ้นยังไง

sandwiched-developer-author
s
เขียนโดย

sirawich

อ่านต่อ
เลิกเรียกมันว่า Technical Debt : วิธีปลดล็อกให้ Business ยอม จ่าย เพื่อการ Refactor