Screen Shot 2558-04-29 at 12.20.02 PM
อ่านเจอบทความเรื่อง How Developers Stop Learning: Rise of the Expert Beginner
และจากหนังสือ The Expert Beginner
ซึ่งเป็นเรื่องที่น่าสนใจมากๆ
ดังนั้นมาทำความรู้จักกับคำว่า Expert Beginner
มันเป็นอีกหนึ่งแนวทาง ที่ทำให้คุณหยุดพัฒนา และ หยุดเรียนรู้ !!

จาก Dreyfus model of skill acquisition
บอกไว้ว่า ในการเรียนรู้อะไรก็ตาม จะต้องผ่าน 5 ระดับนี้เสมอ
ซึ่งประกอบไปด้วย

  • Novice
  • Advance Beginner
  • Competent
  • Proficient
  • Expert

novice-expert1

โดยกลุ่มคนที่มีมากสุดๆ จากทั้ง 5 ระดับ คือ ระดับที่ 2 คือ Advance Beginner
เนื่องจากคนในระดับที่สองนั้น
เมื่อศึกษามาได้ระดับหนึ่งแล้ว
มักจะไม่กล้าตัดสินใจอะไรด้วยตนเอง
ทั้งที่มีความรู้นะ !!
เนื่องจาก ถ้าตัดสินใจอะไรลงไปแล้ว กลัวว่างานจะเข้าตนเอง
ดังนั้น อยู่ใน confort zone ของตัวเราเองดีกว่า !!

สามารถแสดงด้วยรูป
จะสังเกตุได้ว่า เป็นในช่วงของ Advance Beginner นั้น
สามารถเรียนรู้ และ ปรับปรุงความสามารถได้อย่างรวดเร็ว

Learning

คุ้นๆ กันไหมครับ ?
ในการศึกษาเทคโนโลยี หรือ ภาษาใหม่ๆ
คุณจะมีช่วงเวลาที่เรียนรู้ได้อย่างมากมาย

แต่เมื่อมาถึงช่วงเวลาที่คุณต้องเลือก
ว่าจะนำเทคโนโลยีต่างๆ มาใช้หรือไม่
นั่นเป็นเวลาที่คุณจะต้องพบกับปัญหา คุณจะต้องเลือก ?

แล้ว Expert Beginner ล่ะ มันอยู่ตรงไหนล่ะ ?

จาก Dreyfus model นั้น ไม่มี Expert Beginner นะ !!
แต่มันจะเป็นระดับที่ต่อมาจาก Advance Beginner ดังรูป

ExpertBeginner

แล้ว Expert Beginner มันเป็นอย่างไรล่ะ ?

คนในระดับนี้ มักจะมีงานให้ทำเยอะมากๆ
มากเสียจนไม่รู้ว่า จริงๆ แล้วทำงานอะไรบ้าง
เป็นระดับที่สูงกว่า Advance Beginner

และก็ไม่ยังขึ้นไประดับ Competent ได้
เนื่องจากยังไม่สามารถเข้าใจในภาพใหญ่
รวมทั้งเรื่องของการจัดการ และ ตัดสินใจในเรื่องต่างๆ

คำพูดที่สามารถอธิบาย Expert Beginner ได้ชัดเจน และไม่ต้องแปลเป็นไทยคือ

“ten years of experience or the same year of experience ten times”

โดยจะทำงานได้ดี และคิดว่าสิ่งที่ทำอยู่มันดีที่สุดแล้ว
ในบทความยกตัวอย่างการเล่นโบว์ลิ่ง
คนที่อยู่ในระดับ Expert Beginner นั้น
จะคิดว่าการเล่นโบว์ลิ่งให้ได้ 160 แต้มในทุกๆ ครั้งที่เล่น
นั่นแหละคือคะแนน หรือ สิ่งที่ดีที่สุดแล้ว
และจะทำแบบนั้น เชื่อแบบนั้น ไปเรื่อยๆ
เพราะว่า มันคือแนวทางที่จะชนะเพื่อนๆ หรือทำให้ดีกว่าเพื่อนๆ
ไร้ซึ่งหนทางการพัฒนาให้ดีกว่าเดิม
หรือลองผิดลองถูกในแนวทางใหม่ๆ เลย
และไม่มองออกไปข้างนอก ว่ามีวิธีการเล่นที่ได้คะแนนเยอะกว่านี้นะ !!

แล้วในการพัฒนา Software ล่ะ Expert Beginner เป็นอย่างไร ?

สิ่งที่เห็นได้ชัดเจนคือ devleoper นั่นเอง
developer จะมีประสบการณ์ จากการเขียน code
developer จะมีประสบการณ์ จากการแก้ไข code
developer จะมีประสบการณ์ จากการทดสอบระบบงาน
developer จะมีประสบการณ์ จากการทำงานที่ถูกออกแบบและวิเคราะห์มาให้แล้ว
โดย developer จะได้ประสบการณ์เหล่านี้ประมาณ 6 เดือนถึง 1 ปี
และมักจะพบว่า developer ก็จะทำแบบนี้ซ้ำกันไปเรื่อยๆ
developer บางคนพัฒนาระบบงานเดิมๆ กัน 5 ปีขึ้นไป
developer บางคนทำงานลักษณะเดิมๆ 5 ปีขึ้นไป

แน่นอนว่า developer คนนั้น
จะพัฒนามาสู่ระดับ Advance Beginner อย่างรวดเร็ว
เพราะว่าได้เรียนรู้หลากหลายเรื่อง รวมทั้งมีความเชี่ยวชาญสูงขึ้นมาก
ทำให้อาจจะได้เลื่อนตำแหน่งจาก programmer หรือ developer มาเป็น

  • Software engineer level 1 และ 2
  • Associate …
  • Senior …
  • Lead …
  • Architect …

โดยชื่อตำแหน่งหน้าที่เหล่านี้
มันบ่งบอกว่า คุณคือผู้เชี่ยวชาญในด้านนั้นๆ
และที่แปลกก็คือ มันทำให้คนในกลุ่มนี้
มักหลงลืมไปว่า จากระดับเริ่มต้น มาจนถึง Advance Beginner นั้น
ต้องทำอย่างไรบ้าง
ต้องศึกษาอะไรบ้าง
ต้องเจ็บปวดอย่างไรบ้าง
ต้องทำการ review อะไรบ้าง
ต้องทำการปรึกษาหารือกับทีมพัฒนาอย่างไร

ซึ่งการหลงลืมเหล่านี้ มันทำให้คุณก้าวไปสู่ระดับ Expert Beginner !!

มักจะไม่สนใจในรายละเอียด
มักจะไม่พูดคุยหรือปรึกษากับทีมพัฒนา
มักจะไม่สนใจการ review สิ่งที่คิด และ ทำ กับคนอื่นๆ
มักจะคิดว่าสิ่งที่ตัดสินใจมันดีที่สุดแล้ว
แต่ถ้าเกิดปัญหาขึ้นมา มักจะ blame ไปยังคนอื่นๆ ต่างๆ นานา ขึ้นมา
เช่น บอกแล้วไงว่าให้ทำแบบนั้นแบบนี้ !!
ทำไมไม่ทำตามวิธีการที่บอกไว้ล่ะ !!
และสุดท้ายก็คิด หรือ ถูกให้คิดว่า ตัวเองคือ Expert …

ดังนั้น จึงพร้อมแล้วสำหรับการโบยบิน หรือ ไปทำงานที่ไหนก็ได้
และแน่นอนย่อมได้เงินเดือนที่สูงอีกด้วย
นั่นแสดงว่า คุณอยู่ในระดับ Expert Beginner แบบ 100%

แล้วยังไงล่ะ ?

เห็นไหมว่า Expert Beginner นั้น
จะเกิดมาจากคุณหยุดศึกษา เรียนรู้ และ ลงมือทำ อย่างต่อเนื่อง
หรือทำการพูด มากกว่าลงมือทำนั่นเอง

แล้วคุณล่ะอยู่ในระดับ Expert Beginner หรือเปล่า ?