จากบทความ Helping our developers stay productive while working remotely ของ Microsoft
เป็นคำแนะนำสำหรับการจัดการ productivity ของ Developer
ที่ต้องทำงานในรูปแบบ Remote กันมากขึ้น หรือ Work From Home
โดยให้คำแนะนำกว้างไปถึงทั้งองค์กร
ซึ่งมีหัวข้อต่าง ๆ ดังนี้
- User identity และ การเข้าใช้งาน environment ต่าง ๆ
- Multi-factor authentication (MFA)
- การจัดการ device ต่าง ๆ ทั้ง PC/Notebook/Mobile รวมไปถึง OS ต่าง ๆ เช่น Windows, Mac, Linux, iOS และ Android รวมไปถึงการสนับสนุน BYOD (Bring Your Own Device)
- Productivity application คือเครื่องมือที่ใช้งานต้องช่วยเพิ่ม productivity ไม่ใช่เป็นคอขวด
- การจัดการเรื่องช่องทางการทำงานร่วมกัน การพุดคุยและการประชุมต่าง ๆ
- Application และ Service monitoring เนื่องจากมีคนใช้งานแบบ remote จำนวนมาก เรื่องนี้จึงสำคัญมาก ๆ ถ้ามีปัญหาขึ้นมาจะส่งผลกระทบหนักมาก ๆ
- สิ่งที่สำคัญสุด ๆ คือ เรื่องของ culture และ change management
ข้อมูลเกี่ยวกับ Developer productivity ที่ทาง Microsoft เปิดเผยออกมา
คือ การ monitor ดูว่าทีมพัฒนา
ทำการส่งการเปลี่ยนแปลงต่าง ๆ มายังระบบกลาง (commit, pull request)
พบว่ามีจำนวนที่สูงกว่าปี 2019 ดังรูป
ส่วนช่วงเวลาการทำงาน พบว่า
ทีมพัฒนาเริ่มงานเร็วกว่าปกติ และ เลิกงานช้ากว่าปกติ
ส่วนช่วง low peak อยู่ช่วงเที่ยงวัน แสดงดังรูป
ข้อมูลนี้อาจจะแตกต่างกันไปตามแต่ละองค์กร
แต่สิ่งที่พบว่าต้องจัดการให้ดี เพื่อยังคง producitvity อยู่ก็คือ
Culture และ การทำงานร่วมกันของทีม
ยกตัวอย่าง กำหนดกรอบการทำงานร่วมกัน เช่น
- ช่องทางการพูดคุยกัน และ เวลาการพูดคุยที่ชัดเจน
- มีการทำ Virtual lunch และ coffee break ร่วมกัน
- พักการทำงาน ออกไปเดินเล่น ยืดเส้นยืดสาย หรือโทรคุยกันภายในทีมและระหว่างทีม
- มีการ conference call สำหรับทำกิจกรรมอื่น ๆ ที่ไม่ใช่งาน เพื่อการผ่อนคลาย เช่น เกมส์ หรือ กิจกรรมร่วมกัน เป็นต้น
- มีการ update กับในทุก ๆ วัน ไม่ใช่ทุก ๆ ชั่วโมงนะ
รวมทั้งการใช้งานเครื่องมือที่เป็นมิตรต่อทีมพัฒนา
ซึ่งต้องให้ทีมพัฒนาตัดสินใจเลือกเครื่องมือที่จะใช้กันเอง
รวมทั้งไปถึงเรื่อง hardware และ network connection ต่าง ๆ
เพื่อให้ทีมพร้อมอยู่อย่างเสมอ
อีกทั้งยังต้องทำการ monitoring เรื่องของ productivity อยู่อย่างสม่ำเสมอ
เพื่อแก้ไขและปรับปรุง
สิ่งสุดท้ายที่สำคัญคือ การดูแลสุขภาพของตัวเราเอง
แต่ก็อย่าลืมว่า การทำงานแบบ remote นั้น
มักจะมีสิ่งที่รบกวนเยอะมาก ๆ ต้องจัดการให้ดี
รวมทั้งการประชุมที่อาจจะเยอะมากกว่าเดิมจนผิดปกติ
ก็ยิ่งส่งผลเสียอย่างมากต่อการทำงาน
หรืออีกหนึ่งรูปแบบของการขัดจังหวะคือ
การตามงานอยู่ตลอดเวลาหรือในทุก ๆ ชั่วโมง แบบนี้ก็ไม่ดีเลย
การให้ requirement หรือ specification ที่ไม่ชัดเจน
ก็อาจก่อให้เกิดปัญหาหนัก
หรือเราเริ่มทำกันเมื่อยังไม่ชัด
หรือทำไปแก้ไขไป
หรือเปลี่ยนไปเปลี่ยนมา
แบบนี้ไม่น่าจะดีเลยนะ