Animated Architecture Patterns

SPACE & DevEx

วัด developer productivity โดยไม่นับโค้ด: ใช้ survey กับข้อมูลจากระบบดูเรื่อง satisfaction, flow, feedback loop และ cognitive load

หรือที่เรียกกันว่า SPACE framework, Developer experience (DevEx) framework, Developer productivity metrics

Leaderboard proposed · per engineer · Q1 2026 dropped: it counts activity only engineercommitsPRslines1Tom19821264+14.2k1 fix split into 14 commits2Ana17149+11.8k6k lines: a generated client57Ben3812+1.9kreviewed 58 PRs: not counted59Mai217+0.9kpaired 2 weeks: not counted60Priya93+0.3kon-call week: not counted⋮ activity only, per person ✗ Ranking individualsOctober: a director asks foreach engineer’s survey scoressurvey, by engineerBen 2.4 · Mai 3.0 · Priya 2.1one score each→ answers stay anonymous;show results per team, from5 answers upSPACE: team-level aggregates SPACE Forsgren et al. · ACM Queue 2021 the leaderboard sees one of five dimensions ≥ 3 dimensionssurvey + systemteams, not people October: the same numbers, misused survey · 52 of 60system data S Satisfaction & well-beingnot measured Satisfaction & well-being satisfaction 3.1 / 5pages at night 14 / month P Performancenot measured Performance code quality 3.2 / 5change fail rate 15% A Activitycommits · PRs · lines, per engineer Activitynot measured Activity coding time 14 h / weekdeploys 42 / week C Communication & collaborationnot measured Communication & collaboration easy to get help 2.8 / 5first review 22 h E Efficiency & flownot measured Efficiency & flow focus time 1.8 h / dayCI run 38 min ✗ One number for productivitythe board deck folds all five rows intoa single “productivity score” of 72→ show the dimensions side by sideSPACE: no single metric captures it 72 ✗ Only system data, or only survey datathe CI chart says 12 min, fixed; answers sayflaky tests force re-runs, so people still wait→ read each kind against the otherDevEx: each kind misses what the other sees DevEx Noda et al. · ACM Queue 2023 the real friction stays invisible the same survey asks where work gets stuck what the Q2 survey found, and the fix a team that never heard back Feedback loops ?not measured how fast builds, tests and reviews answerasked: how long do you wait for CI? top pain for 31 of 52waiting for CI: 38 min a run → test shards + build cache: 12 min Cognitive load ?not measured the mental effort a task takesasked: how hard is a new service? hard for 27 of 52a new service needs 5 tools → golden path in Launchpad: 1 template Flow state ?not measured being in the zone: deep, focused workasked: how many hours can you focus? focus 1.8 h a daymeetings break up the day → meeting-free mornings: 3.1 h focus ✗ A survey with no actionsearch never heard back about its Q2results, so in Q3 only 2 of its 6 answeredQ26 of 6Q32 of 6under 5 answers: no team result at all→ share the results within weeks,fix one thing and say what changedDevEx: follow-up keeps people answering Engineering review · Q1 2026engineers45 → 60+15 hired in a yeardeploys a week40 → 41no visible speed-upCTO: 15 more engineers, so where is the speed-up?Manager: let’s rank everyone by commits, PRs and linesnobody has asked the engineers what slows them down Quarter by quarterAcme’s own numbers, not research findingssurvey answerssatisfactionCI run (median)new servicefocus a daydeploys a weekchange fail rateQ1 ’26none————41—Q2 ’2652 of 603.1 / 538 min5 tools1.8 h4215% Q3 ’2655 of 603.6 / 512 min1 template3.1 h4914% ✗ Comparing teams that do different worka slide ranks the teams on satisfaction and puts payments last,but its changes wait for PCI approval: different work, not a worse teamDORA (2025): self-reported data compares poorly across teamscatalog3.9checkout3.7payments2.9→ compare each teamwith its own pastbenchmarks give context only

ขั้นที่ 1 · เอา activity มานับเป็น productivity Acme จ้าง engineer เพิ่ม 15 คนในหนึ่งปี (จาก 45 เป็น 60) แต่ production deploy กลับเพิ่มจาก 40 เป็นแค่ 41 ครั้งต่อสัปดาห์ CTO เลยขอตัวเลข productivity แล้ว manager คนหนึ่งก็เสนอ leaderboard ที่นับ commit, pull request และจำนวนบรรทัดโค้ดของ engineer แต่ละคน leaderboard แบบนี้ให้รางวัลกับ activity ที่ปั่นตัวเลขได้ง่าย (Tom แตก fix เดียวออกเป็น 14 commit ส่วน 11,800 บรรทัดของ Ana ก็มี client ที่ generate มารวมอยู่ด้วย) แล้วยังนับ review 58 ครั้งของ Ben, สองสัปดาห์ที่ Mai ทำ pairing กับพนักงานใหม่ และสัปดาห์ on-call ของ Priya เป็นศูนย์ มันเห็นแค่หนึ่งในห้า dimension ของ SPACE และยังไม่มีใครถามพวก engineer เลยว่าอะไรทำให้เขาช้า (ตัวเลขของ Acme เป็นตัวเลขของตัวอย่างนี้เอง)

ขั้นที่ 2 · SPACE: วัดอะไรดี ทีม platform เลิกใช้ leaderboard แล้วใช้ SPACE (Forsgren, Storey, Maddila, Zimmermann, Houck และ Butler, 2021) เลือกว่าจะวัดอะไรในห้า dimension ของมัน: satisfaction and well-being, performance, activity, communication and collaboration และ efficiency and flow ตัว paper แนะนำให้ใช้ตัววัดจากอย่างน้อยสาม dimension โดยอย่างน้อยหนึ่งตัวต้องเป็นความรู้สึก (perception) ที่ได้จาก survey และให้รายงานเป็นผลของทีมแบบไม่ระบุตัวตน Acme เลยเลือกตัววัดจาก survey หนึ่งตัวกับจากระบบหนึ่งตัวให้ทั้งห้า dimension และไม่รายงานเป็นรายคนเลย ใน Q2 มี engineer ตอบ survey 52 จาก 60 คน (satisfaction 3.1 จาก 5, เวลา focus 1.8 ชั่วโมงต่อวัน) ส่วนระบบให้ change fail rate 15%, deploy 42 ครั้งต่อสัปดาห์, รอ review แรก 22 ชั่วโมง และ CI รันรอบละ 38 นาที

ขั้นที่ 3 · DevEx: แก้จุดที่ติดขัด survey ชุดเดียวกันยังถามเรื่องสาม dimension ของ DevEx (Noda, Storey, Forsgren และ Greiler, 2023) ด้วย ด้าน feedback loops: การรอ CI รอบละ 38 นาทีเป็นปัญหาอันดับหนึ่งของ 31 จาก 52 คน, ด้าน cognitive load: service ใหม่ต้องใช้เครื่องมือห้าตัว และ 27 จาก 52 คนบอกว่ายาก, ด้าน flow state: meeting ทำให้วันแตกเป็นชิ้น ๆ จนเหลือเวลา focus แค่ 1.8 ชั่วโมง ทีมใช้ test sharding กับ build cache ลด CI เหลือ 12 นาที, ใช้ golden path ใน Launchpad เอา template เดียวมาแทนเครื่องมือห้าตัว และให้ช่วงเช้าเป็นเวลาที่ไม่มี meeting ผล survey ของ Q3 (ตอบ 55 จาก 60 คน) ได้ satisfaction 3.6 และเวลา focus 3.1 ชั่วโมงต่อวัน ส่วน deploy ก็เพิ่มจาก 42 เป็น 49 ครั้งต่อสัปดาห์ โดยที่ change fail rate ยังทรงตัว (15% เป็น 14%)

ขั้นที่ 4 · กับดักและข้อจำกัด เดือนตุลาคม director คนหนึ่งขอคะแนน survey ของ engineer แต่ละคน แต่คำตอบไม่ระบุตัวตน และผลจะแสดงเฉพาะทีมที่มีคนตอบอย่างน้อยห้าคน ตัว board deck รวบห้า dimension เป็น productivity score ตัวเดียวได้ 72 ทำให้ไม่เห็นว่าอะไรขยับและขยับเพราะอะไร ทีม search ไม่เคยได้ยินอะไรกลับมาเลยเรื่องผล Q2 ของตัวเอง ใน Q3 เลยมี engineer ตอบแค่ 2 จาก 6 คน ส่วน slide หนึ่งจัดให้ payments อยู่ท้ายสุดด้าน satisfaction ทั้งที่ change ของทีมนี้ต้องรอ PCI approval อยู่ และกราฟ CI บอกว่า 12 นาที แต่คำตอบบอกว่า flaky test ทำให้ต้องรันซ้ำ เรื่องนี้จะเห็นได้ก็ต่อเมื่ออ่านข้อมูลจาก survey กับจากระบบไปด้วยกัน

ปัญหา

พอบริษัทโตขึ้นแต่ delivery ไม่ได้เร็วขึ้นตาม ก็จะมีคนขอตัวเลข productivity และตัวเลขที่หาง่ายที่สุดก็คือตัวที่นับ activity: commit, pull request, จำนวนบรรทัดโค้ด, ticket ที่ปิดไป เครื่องมือบันทึกตัวเลขพวกนี้ไว้อยู่แล้ว นี่คือเสน่ห์ของมัน แต่มันวัดความเคลื่อนไหว ไม่ใช่ความคืบหน้า ตัวเลขพวกนี้จะพุ่งขึ้นเมื่องานถูกหั่นเป็นชิ้นเล็ก ๆ เมื่อโค้ดถูก generate หรือ copy มา หรือเมื่อคนทำงานเป็นชั่วโมงยาว ๆ เพื่ออ้อมระบบที่ช้า และจะลดลงเมื่อคนไปทำงานที่ทำให้ทีมเดินต่อได้: review, pairing กับพนักงานใหม่, เขียน design document, อยู่เวร on-call พอเอามาจัดอันดับรายคนบน leaderboard มันยังสอนคนได้เร็วมากว่าอะไรทำให้อันดับขยับ ส่วนคำถามที่สำคัญจริง ๆ ก็ยังไม่มีคำตอบ: อะไรทำให้ engineer ช้า, พวกเขาเป็นยัง⁠ไงกันบ้าง และลูกค้าได้ software ที่ดีขึ้นเร็วขึ้นหรือเปล่า Delivery metric อย่างของ DORA ช่วยตอบคำถามสุดท้ายได้ แต่มันบอกเรื่อง pipeline ของทีม ไม่ใช่ความติดขัดในแต่ละวันที่อยู่เบื้องหลัง

ทำงานยัง⁠ไง

มีสอง framework ที่เขียนโดยกลุ่มนักวิจัยที่มีคนซ้ำกันบางส่วน และตีพิมพ์ใน ACM Queue ห่างกันสองปี ทั้งคู่ตอบคำถามนี้แบบที่เสริมกัน SPACE บอกว่า developer productivity ประกอบด้วยอะไรบ้าง เพื่อให้ทีมเลือกชุดตัววัดที่สมดุลได้ ส่วน DevEx มอง productivity จากฝั่งของ developer และชี้ไปที่ความติดขัดที่คุ้มจะกำจัดทิ้ง

SPACE (2021)

The SPACE of Developer Productivity โดย Nicole Forsgren (ตอนนั้นอยู่ที่ GitHub), Margaret-Anne Storey (University of Victoria) และ Chandra Maddila, Thomas Zimmermann, Brian Houck และ Jenna Butler (Microsoft) ตีพิมพ์ใน ACM Queue, vol. 19, no. 1 ในปี 2021 ตัว paper เปิดด้วยการรื้อความเชื่อที่พบบ่อยห้าข้อ: ว่า productivity คือเรื่องของ developer activity ทั้งหมด, ว่ามันเป็นเรื่องของ performance รายคนเท่านั้น, ว่า metric ตัวเดียวจับมันได้, ว่าตัววัด productivity มีไว้ให้ manager ใช้เท่านั้น และว่ามันเป็นเรื่องของ engineering system กับเครื่องมือเท่านั้น จากนั้นก็ตั้งชื่อห้า dimension (คำอธิบายเรียบเรียงใหม่):

Dimension ครอบคลุมอะไร ตัวอย่างที่ paper ยก
Satisfaction and well-being developer รู้สึกว่างาน ทีม เครื่องมือ และวัฒนธรรมเติมเต็มเขาไหม และสุขภาพกับความสุขของเขายังดีอยู่ไหม satisfaction, การมีเครื่องมือและทรัพยากรพอจะทำงาน, burnout
Performance งานทำอะไรสำเร็จบ้าง โดยตัดสินจากผลลัพธ์ ไม่ใช่จากปริมาณที่ผลิตออกมา คุณภาพ (reliability, ไม่มี bug, service health) และ impact (ความพอใจของลูกค้า, adoption, การใช้งาน feature, การลดต้นทุน)
Activity สิ่งที่คนทำหรือผลิตออกมาแล้วนับได้ design document, pull request, commit และ review; build, test และ deployment; incident และการเข้าเวร on-call
Communication and collaboration คนและทีมคุยกัน ประสานงาน และช่วยกันได้ดีแค่ไหน หา documentation กับผู้เชี่ยวชาญได้ง่ายแค่ไหน, งานถูก integrate เข้าด้วยกันได้เร็วแค่ไหน, คุณภาพของ review, เวลา onboarding
Efficiency and flow งานไหลต่อไปได้โดยไม่ต้องหยุดและรอหรือเปล่า ทั้งของคนคนเดียวและทั้งระบบ handoff, ความรู้สึกว่ายังอยู่ใน flow ได้, การถูกขัดจังหวะ และเวลาทั้งหมด เวลาที่เพิ่มคุณค่า และเวลารอตลอดทั้งระบบ

คำแนะนำของ paper เรื่องการใช้ dimension เหล่านี้ (เรียบเรียงใหม่):

  • ใช้หลาย dimension พร้อมกัน เลือก metric จากอย่างน้อยสาม dimension และอย่าเติมชุดให้ยาวขึ้นด้วยตัววัดแบบเดียวกัน: commit, pull request และเวลาเขียนโค้ดล้วนเป็น activity ทั้งหมด เพราะ metric ส่งผลต่อพฤติกรรม ชุดตัววัดที่ดึงกันเองอยู่บ้าง (ความเร็วที่มากขึ้น กับ bug ที่หลุดไปถึงลูกค้าน้อยลง) เลยกันไม่ให้ตัวไหนถูก optimize อยู่ตัวเดียว ใช้แค่ไม่กี่ตัวก็พอ เพราะรายการเป้าหมายยาว ๆ ทำให้คนสับสนและหมดแรง
  • ความรู้สึกคู่กับข้อมูลจากระบบ ใส่ตัววัดแบบ perception อย่างน้อยหนึ่งตัว เช่นคำตอบจาก survey เพราะสิ่งที่คนเจอมักบอกสิ่งที่ instrumentation มองไม่เห็น ให้ถามคนถึงประสบการณ์ของตัวเอง (รู้สึกว่า productive ไหม, focus ได้ไหม) แทนการให้เขาให้คะแนนทีม
  • ระดับและความเป็นส่วนตัว metric ตัวหนึ่งอาจบอกเรื่องของคนคนเดียว ของทีมหรือกลุ่ม หรือของทั้งระบบ ให้รายงานเป็นผลรวมแบบไม่ระบุตัวตนในระดับทีมหรือกลุ่ม (paper บอกว่าในบางประเทศ การรายงาน productivity รายคนผิดกฎหมาย) ข้อมูลรายคนมีประโยชน์กับ developer คนนั้นเอง ไม่ใช่มีไว้จัดอันดับ
  • Bias ตรวจดูว่าอะไรทำให้ตัวเลขเบี้ยวได้บ้าง: การ normalize ตัวเลขตลอดช่วงเวลายาว ๆ จะลงโทษคนที่ลาเลี้ยงลูก และบางวัฒนธรรมก็ตอบ survey สูงหรือต่ำกว่าวัฒนธรรมอื่นอย่างเป็นระบบ คะแนนของแต่ละกลุ่มเลยมี baseline ต่างกัน และไม่ควรเอามาเทียบกันตรง ๆ

ตัว paper เชื่อม efficiency and flow ในระดับทีมและระบบเข้ากับ value stream mapping และยก deployment frequency กับ lead time ของ DORA เป็นตัวอย่างของตัววัด flow

DevEx (2023)

DevEx: What Actually Drives Productivity โดย Abi Noda (DX), Margaret-Anne Storey (University of Victoria), Nicole Forsgren (Microsoft Research) และ Michaela Greiler (DX) ตีพิมพ์ใน ACM Queue, vol. 21, no. 2 ในปี 2023 ตัว paper มอง developer experience ว่าเป็นสิ่งที่ developer เจอจริงในการทำงาน ตั้งแต่ความรู้สึกที่มีต่องาน ไปจนถึงความติดขัดที่เจอทุกวัน และต่อยอดจากงานวิจัยก่อนหน้าของผู้เขียน ที่พบ sociotechnical factor มากกว่า 25 ตัวอยู่เบื้องหลัง แล้ว paper ก็ย่อปัจจัยพวกนั้นลงเหลือสาม dimension:

  • Feedback loops: เครื่องมือและคนตอบสนองต่อสิ่งที่ developer ทำได้เร็วและดีแค่ไหน ตั้งแต่ build และ test ไปจนถึง code review และ deployment ถ้า loop ช้า คนก็ต้องรอหรือสลับไปทำงานอื่น
  • Cognitive load: แรงทางความคิดที่งานหนึ่งต้องใช้ โค้ดกับระบบที่มี documentation ไม่ดี และเครื่องมือที่กองเพิ่มขึ้นเรื่อย ๆ ทำให้มันสูงขึ้น
  • Flow state: การจมอยู่กับงานที่ต้อง focus อย่างเต็มที่ การถูกขัดจังหวะ งานที่ไม่ได้วางแผนไว้ และ meeting ที่กระจัดกระจาย ทำให้มันขาดตอน

เครื่องมือเป็นแค่ส่วนหนึ่งของเรื่อง: paper รายงานว่า human factor เช่นเป้าหมายของ project ที่ชัดเจน และความรู้สึกปลอดภัยทางใจ (psychologically safe) ในทีม ก็มีผลมากเหมือนกัน

ในเรื่องการวัด ตัว paper จับคู่ข้อมูลสองแบบให้แต่ละ dimension: perceptions ของ developer (ทัศนคติและความเห็น ส่วนใหญ่มาจาก survey) และ workflows ของเขา (ข้อมูลจากระบบและ process) เพราะข้อมูลแต่ละแบบพลาดสิ่งที่อีกแบบเห็น code review อาจดูเร็วในข้อมูล แต่ยังรู้สึกว่ารบกวนอยู่ ถ้ามันคอยขัดจังหวะงานที่ต้อง focus อยู่เรื่อย ๆ เหนือขึ้นไปมี KPIs ไม่กี่ตัว คือผลลัพธ์แบบ north star ที่การปรับปรุงทั้งหลายตั้งใจจะขยับ เช่น productivity, satisfaction, engagement และ retention ตัว KPI ช่วยกันไม่ให้การแก้เฉพาะจุดหลอกตัวเอง: การตัด meeting อาจเพิ่มเวลา focus แต่ก็ยังทำร้าย collaboration และ satisfaction โดยรวมได้ เรื่อง survey ตัว paper แนะนำให้ใช้คำถามที่สร้างบนแนวคิดที่นิยามไว้ชัดและผ่านการทดสอบด้วยการสัมภาษณ์มาแล้ว, แยกผลตามทีมและตาม persona (role, อายุงาน, ระดับ seniority) แทนการอ่านเป็นค่าเฉลี่ยทั้งบริษัท, เทียบกับ benchmark เพื่อดูบริบท, ใช้ transactional survey สั้น ๆ ในจังหวะเฉพาะของ workflow และตามต่อหลัง survey ทุกครั้ง เพราะคนจะตอบน้อยลงถ้าไม่เห็นอะไรเกิดขึ้น สำหรับองค์กรส่วนใหญ่ ตัว paper แนะนำให้ทำ survey ทุกไตรมาสหรือทุกหกเดือน

ทั้งสองเกี่ยวกันยัง⁠ไง และเกี่ยวกับ DORA ยัง⁠ไง

  • SPACE เลือกตัววัด ส่วน DevEx หาความติดขัด Acme ใช้ SPACE เลือก scorecard ที่สมดุลข้ามห้า dimension แล้วอ่าน survey ชุดเดียวกันผ่านสาม dimension ของ DevEx เพื่อตัดสินว่าจะแก้อะไร ทั้งสอง paper ขอให้ใช้ข้อมูล perception คู่กับข้อมูลจากระบบ
  • DORA วัดผลลัพธ์ของ delivery metric ของ DORA บอกเรื่อง delivery process ของ service หนึ่ง: throughput (change lead time, deployment frequency, failed deployment recovery time) กับ instability (change fail rate, deployment rework rate) มันบอกว่า delivery ดีขึ้นหรือเปล่า แต่ไม่ได้บอกว่างานรู้สึกยัง⁠ไง หรือ developer เสียเวลาไปตรงไหน หลายองค์กรเลยอ่านมันคู่กับ survey แบบ SPACE หรือ DevEx ส่วนคู่มือเรื่อง measurement framework ปี 2025 ของ DORA (Sarah D'Angelo, Ambar Murillo, Sarah Inman และ Kevin M. Storer) แนะนำให้เริ่มจากการตัดสินใจที่ตัวเลขควรช่วย, ชั่งน้ำหนักระหว่างข้อมูลที่คนรายงานเองกับข้อมูลจาก log (การรายงานเองจับประสบการณ์ได้ แต่ทำให้เป็นมาตรฐานและเทียบข้ามทีมได้ยาก ส่วน log ขยายได้ แต่ต้องมี instrumentation และไม่ได้ objective อย่างที่เห็น) และผสมหลาย framework เข้าด้วยกันเมื่อ framework เดียวตอบคำถามไม่ได้
  • Framework แบบผสม DX บริษัทที่ Abi Noda ก่อตั้ง ออก DX Core 4 (โดย Abi Noda, Laura Tacho, Margaret-Anne Storey และ Michaela Greiler) ที่รวม DORA, SPACE และ DevEx เป็นสี่ dimension: speed, effectiveness, quality และ business impact ส่วน guidance ของมันเองก็เตือนว่า throughput metric ของมันอย่าง diffs per engineer ต้องมีตัววัดด้าน experience มาถ่วงไว้ และห้ามผูกกับเป้าหมายหรือรางวัลเด็ดขาด
  • Goodhart's law ใช้กับทุกตัว: พอตัววัดไหนกลายเป็นเป้า มันก็เลิกเป็นตัววัดที่ดี ชื่อของแนวคิดนี้มาจากนักเศรษฐศาสตร์ Charles Goodhart ที่อธิบายมันไว้ในเรื่องนโยบายการเงินในปี 1975 ส่วนถ้อยคำที่คนส่วนใหญ่ยกมาอ้างกันมาจาก paper ปี 1997 ของนักมานุษยวิทยา Marilyn Strathern

ลงมือทำจริงยัง⁠ไง

  1. เริ่มจากคำถามและการตัดสินใจ CTO ของ Acme อยากรู้ว่าทำไม engineer ที่เพิ่มมา 15 คนไม่ได้ทำให้เร็วขึ้นเลย ส่วนการตัดสินใจเบื้องหลังคือจะลงทุนตรงไหนในไตรมาสหน้า เขียนทั้งสองอย่างไว้ก่อนเลือก metric
  2. เลือกตัววัดไม่กี่ตัวจากอย่างน้อยสาม dimension ของ SPACE โดยมีอย่างน้อยหนึ่งตัวมาจาก survey และรายงานเป็นรายทีม Acme เลือกตัววัดจาก survey หนึ่งตัวกับจากระบบหนึ่งตัวให้ทั้งห้า dimension (ตารางด้านล่าง) และตกลงกันไว้ก่อนว่าจะไม่มีอะไรถูกรายงานเป็นรายคน
  3. ทำ survey สั้น ๆ แบบไม่ระบุตัวตนตามรอบที่แน่นอน Acme ทำทุกไตรมาสและให้ใช้เวลาราวสิบนาที คำถามถามถึงไม่กี่สัปดาห์ที่ผ่านมาของแต่ละคนเอง (รอ CI นานแค่ไหน, focus ได้กี่ชั่วโมง) และลองถามกับ engineer ไม่กี่คนก่อน ผลจะแสดงเป็นรายทีมและราย role เฉพาะที่มีคนตอบอย่างน้อยห้าคน ส่วนกลุ่มที่เล็กกว่านั้นจะถูกรวมกัน (กติกาของ Acme) และให้ติดตาม response rate ด้วย: ใน Q2 มีคนตอบ 52 จาก 60 คน
  4. ดึงข้อมูลจากระบบที่มีอยู่แล้ว เวลารัน CI จากระบบ CI (เช่น GitHub Actions, GitLab CI หรือ Jenkins), เวลารอ review จาก Git host, deploy จาก deploy log, page ตอนกลางคืนจาก paging tool และภาระ meeting จากข้อมูล calendar ที่รวมเป็นรายทีม จดไว้ว่าตัวเลขแต่ละตัวคำนวณยัง⁠ไง และใช้วิธีเดิมทุกไตรมาส
  5. อ่านคำตอบผ่านมุมของ DevEx ในแต่ละ dimension ให้หาความติดขัดที่ใหญ่ที่สุด แล้วเช็กกับข้อมูลจากระบบ ตัว survey ของ Acme ชี้ไปที่ CI ที่ช้า (ปัญหาอันดับหนึ่งของ 31 จาก 52 คน), เครื่องมือห้าตัวที่ service ใหม่ต้องใช้ (ยากสำหรับ 27 จาก 52 คน) และ meeting ที่กระจัดกระจาย (focus ได้ 1.8 ชั่วโมงต่อวัน) แล้วข้อมูล CI ก็ตรงกัน: รอบละ 38 นาที
  6. แก้ไม่กี่เรื่อง โดยมีเจ้าของ ทีม platform ลด CI เหลือ 12 นาทีด้วย test sharding กับ build cache และทำให้ golden path ใน Launchpad เป็นวิธีเริ่ม service ใหม่ ส่วน engineering manager ก็ตกลงกันให้ช่วงเช้าไม่มี meeting
  7. ปิด loop แล้ววัดอีกรอบ Acme แชร์ผลของแต่ละทีมภายในสามสัปดาห์ บอกว่าจะเปลี่ยนอะไรและเมื่อไหร่ แล้วเทียบไตรมาสถัดไปกับไตรมาสนี้ (ตารางด้านล่าง)
  8. คอยดูตัวถ่วง พอการเปลี่ยนแปลงไหนช่วยตัววัดหนึ่ง ให้เช็กตัวที่มันอาจทำให้แย่ลง ช่วงเช้าที่ไม่มี meeting อาจทำให้ขอความช่วยเหลือยากขึ้น Acme เลยดู ขอความช่วยเหลือได้ง่ายแค่ไหน กับเวลารอ review แรก ส่วน CI ที่เร็วขึ้นอาจปล่อยให้ failure หลุดผ่านไปมากขึ้น Acme เลยดู change fail rate

ตัววัดของ Acme พร้อม baseline ของ Q2 2026 (ตัวเลขของตัวอย่างนี้เอง ไม่ใช่ผลวิจัย):

SPACE dimension ตัววัดจาก survey ตัววัดจากระบบ
Satisfaction and well-being ความพอใจในงาน: 3.1 จาก 5 page ตอนกลางคืน: 14 ครั้งต่อเดือน
Performance คะแนนคุณภาพของโค้ดที่ทีม ship: 3.2 จาก 5 Change fail rate: 15%
Activity เวลาเขียนโค้ดที่รายงานเอง: 14 h ต่อสัปดาห์ Production deploy: 42 ครั้งต่อสัปดาห์
Communication and collaboration ขอความช่วยเหลือได้ง่ายแค่ไหน: 2.8 จาก 5 รอ review แรก: 22 h (median)
Efficiency and flow เวลา focus แบบไม่ถูกขัดจังหวะ: 1.8 h ต่อวัน (median) CI รัน: 38 min (median)

ไล่ทีละไตรมาส (ตัวเลขของตัวอย่างนี้เอง):

Q1 2026 Q2 2026 Q3 2026
คนตอบ survey ไม่มี survey 52 จาก 60 55 จาก 60
Satisfaction (1 ถึง 5) ไม่ได้ถาม 3.1 3.6
CI รัน (median) ไม่ได้เก็บ 38 min 12 min
ตั้ง service ใหม่ ไม่ได้เก็บ เครื่องมือ 5 ตัว 1 template
เวลา focus ต่อวัน (median) ไม่ได้ถาม 1.8 h 3.1 h
ขอความช่วยเหลือได้ง่ายแค่ไหน (1 ถึง 5) ไม่ได้ถาม 2.8 2.9
รอ review แรก (median) ไม่ได้เก็บ 22 h 20 h
Production deploy ต่อสัปดาห์ 41 42 49
Change fail rate ไม่ได้เก็บ 15% 14%
อะไรเปลี่ยนไป leaderboard รายคน ที่ถูกเสนอแล้วก็ถูกยกเลิก survey ครั้งแรก แชร์ผลให้ทุกทีม test sharding กับ build cache, golden path, ช่วงเช้าที่ไม่มี meeting

อยู่ตรงไหนใน solution

  • DORA metrics วัดสิ่งที่ออกมาจาก delivery pipeline ส่วน SPACE กับ DevEx วัดประสบการณ์และ productivity ที่อยู่เบื้องหลัง ให้อ่านไปด้วยกัน: deploy ของ Acme เพิ่มจาก 42 เป็น 49 ครั้งต่อสัปดาห์หลัง CI เร็วขึ้น และ change fail rate ก็บอกว่าความเสถียรยังอยู่
  • Platform as a product ต้องการข้อมูลแบบนี้เลย developer survey คือวิธีที่ทีม platform รู้ว่าอะไรเจ็บ และตัววัดของ DevEx อย่างเวลารอ CI, แรงที่ต้องใช้ตอน setup และเวลา focus ก็บอกว่า platform ช่วยได้จริงไหม
  • Golden paths เป็นคำตอบตรง ๆ ของ cognitive load: เครื่องมือห้าตัวสำหรับ service ใหม่ของ Acme กลายเป็น template เดียว
  • Team Topologies ใช้ cognitive load ของทีมเป็นข้อจำกัดตอนวาดขอบเขตของทีม ส่วน DevEx ถามถึง load เดียวกันจากมุมของ developer แต่ละคน
  • Eliminating toil คืนเวลาและความสนใจให้คน: งาน manual ที่ทำซ้ำ ๆ และ page ตอนกลางคืนจะโผล่มาเป็น flow ที่หายไปและ well-being ที่แย่ลง
  • Continuous delivery กับ trunk-based development ทำให้ feedback loop สั้นลงด้วย CI ที่เร็วและ change เล็ก ๆ ที่ review ได้เร็ว
  • The Three Ways อธิบาย flow, feedback และการเรียนรู้อย่างต่อเนื่อง ส่วน efficiency and flow ของ SPACE กับ feedback loops ของ DevEx ก็เป็นวิธีวัดสองข้อแรก
  • Value stream mapping คือสิ่งที่ SPACE เองชี้ไปสำหรับ efficiency and flow ในระดับทีมและระบบ: มันแสดงว่างานไปรออยู่ตรงไหน
  • CALMS นับ measurement เป็นหนึ่งในสิ่งที่ต้องประเมินตอนนำ DevOps มาใช้ ส่วน SPACE กับ DevEx ก็เติมเรื่อง measurement นั้นในฝั่งของ developer

ใช้ตอนไหนดี

  • ตอนที่ผู้บริหารขอตัวเลข productivity scorecard ของ SPACE ให้คำตอบที่ไม่จัดอันดับคน และการอ่าน survey ชุดเดียวกันแบบ DevEx ก็เปลี่ยนมันเป็นรายการสิ่งที่ต้องแก้
  • ก่อนและหลังลงทุนกับ tooling, platform หรือวิธีทำงาน CI ที่เร็วขึ้น, golden path หรือวิธี review แบบใหม่ ควรโผล่ให้เห็นทั้งในคำตอบและในข้อมูลจากระบบ ถ้าขยับแค่ฝั่งเดียว ให้ดูให้ละเอียดขึ้น
  • ตั้งแต่ไม่กี่ทีมขึ้นไป ในทีมเดียวที่มีห้าหกคน retrospective ให้สัญญาณเดียวกันโดยลงแรงน้อยกว่า และถ้าผลชุดหนึ่งมาจากคนแค่ไม่กี่คน ก็ปกปิดตัวตนของคนตอบไม่ได้แล้ว
  • ไม่ใช่เพื่อประเมินผลงานหรือกำหนดเงินเดือน พอคำตอบ survey หรือจำนวน activity ถูกเอาไปใช้ประเมินรายคน คนก็เลิกตอบตามจริงและเริ่มปั่นตัวเลข
  • ตกลงกติกากันก่อน ในที่ที่กฎหมายความเป็นส่วนตัวหรือตัวแทนพนักงานมีสิทธิ์มีเสียง SPACE บอกไว้ว่าในบางประเทศ การรายงาน productivity รายคนผิดกฎหมาย ตกลงให้ชัดว่าจะเก็บอะไร รวมผลยัง⁠ไง และใครเห็นได้บ้าง ก่อนที่ survey ครั้งแรกจะถูกส่งออกไป
  • ทำก็ต่อเมื่อมีคนจะลงมือทำตามผล survey กินเวลาของ engineer ทุกคนทุกไตรมาส (ราวสิบนาทีคูณ 60 คนที่ Acme) และการตามต่อก็ต้องมีเจ้าของ ถ้าไม่มีใครลงมือทำอะไร survey ก็จะสอนคนว่าตอบไปก็ไม่มีประโยชน์

กับดักที่เจอบ่อย

  • จัดอันดับรายคน leaderboard และคะแนน survey รายคนลงโทษคนที่ review, pairing, เป็น mentor และถือ pager แล้วยังชวนให้ปั่นตัวเลข และทำให้ไม่มีใครตอบตามจริงอีก ให้คำตอบไม่ระบุตัวตน, รายงานเป็นรายทีมโดยมีขนาดกลุ่มขั้นต่ำ (ของ Acme คือห้าคน) และปล่อยข้อมูลรายคนไว้ให้คนที่มันพูดถึง
  • ตัวเลขเดียวแทน productivity ตัว index ที่เฉลี่ยทุกอย่างเป็นคะแนนเดียว อย่าง 72 ใน board deck ของ Acme จะซ่อนว่า dimension ไหนขยับและเพราะอะไร และชวนให้ไป optimize ตัว index แทน ให้แสดง dimension วางคู่กัน แล้วคุยกันว่าอะไรเปลี่ยนไป
  • Survey ที่ไม่มีใครทำอะไรต่อ พอผลหายไปเฉย ๆ คนก็ตอบน้อยลง (ทีม search ลดจาก 6 คำตอบเหลือ 2) และถ้าต่ำกว่าขนาดกลุ่มขั้นต่ำ ทีมก็จะไม่ได้ผลเลย แชร์ผลภายในไม่กี่สัปดาห์, รับปากว่าจะแก้หนึ่งหรือสองเรื่อง และบอกใน survey รอบถัดไปว่าอะไรเปลี่ยนไปแล้ว
  • เทียบทีมที่ทำงานต่างกัน payments ต้องรอ PCI approval ส่วน mobile app ต้องรอ app store review คะแนนของสองทีมนี้เลยสะท้อนตัวงานพอ ๆ กับตัวทีม ให้เทียบแต่ละทีมกับอดีตของตัวเอง และใช้ benchmark แค่ดูบริบท
  • มีแค่ข้อมูล survey หรือแค่ข้อมูลจากระบบ กราฟ CI ของ Acme บอก 12 นาที ขณะที่คำตอบบอกว่า flaky test ทำให้ต้องรันซ้ำ ในทางกลับกัน survey อย่างเดียวก็บอกไม่ได้ว่า CI ใช้เวลานานแค่ไหน หรือการรออยู่ตรงไหน ให้อ่านข้อมูลแต่ละแบบเทียบกับอีกแบบ แล้วขุดลงไปตรงที่มันไม่ตรงกัน
  • เปลี่ยนตัววัดให้เป็นเป้า เป้าที่ตั้งไว้กับ commit, deploy หรือคะแนน satisfaction ชวนให้ขยับตัวเลขแทนตัวงาน (Goodhart's law) ให้ตั้งเป้าที่ความติดขัดที่จะกำจัด แล้วใช้ตัววัดเช็กว่ามันหายไปจริงไหม
  • วัดเยอะเกินไป survey ยาว ๆ และ dashboard ที่มีกราฟเป็นสิบ ๆ ทำให้คนเหนื่อยและกลบสัญญาณ เก็บตัววัดไว้แค่ไม่กี่ตัว และใช้ survey ที่คนทำเสร็จได้ในราวสิบนาที
  • มองข้าม bias และบริบท ไตรมาสที่ incident เยอะหรือมีการปรับโครงสร้างองค์กร, การลายาว หรือกลุ่มที่ตอบ survey แบบถ่อมตัวกว่า ล้วนทำให้ตัวเลขขยับ อ่านตัวเลขพร้อมบริบทของมัน และให้คำถามกับนิยามคงที่ไว้ trend จะได้มีความหมาย