ได้อ่านบทสัมภาษณ์ของคุณ David Heinemeier Hansson หรือ DHH
ผู้สร้าง Ruby On Rails (RoR) และ CTO ของ Basecamp
เป็นเรื่องเกี่ยวกับรับ Software Engineer เข้ามาทำงาน
ซึ่งเป็นมุมมองที่น่าสนใจอย่างมาก
จึงนำมาสรุปไว้นิดหน่อยดังนี้
อธิบายไว้ว่า
- 80% ของผู้สมัครเข้ามา จะโยนทิ้งไปเพราะข้อมูลในใบสมัคร หรือ ใน resume มันแย่!!
- 20% ถูกตัดออกไปอีก ด้วยเหตุผลที่น่าสนใจอย่างมาก !!
มาดูขั้นตอนการรับคนเข้าทำงานของ Basecamp กัน
พร้อมคำแนะนำต่าง ๆ เพื่อผู้สมัครจะไม่ทำกันอีก ประกอบไปด้วย 2 ขั้นตอน ดังนี้ขั้นตอนที่ 1 ดู resume และ ใบสมัครงาน
ซึ่งประมาณ 80% จะโดนตัดออก และ ทิ้งไป เนื่องจากมักจะมีข้อมูลต่าง ๆ เหล่านี้- ข้อมูลการศึกษา
- ข้อมูล GPA
- ข้อมูลบริษัทที่ทำงานมา
โดยข้อมูล resume มันไม่ได้บ่งบอกว่า คุณมีความสนใจ ใส่ใจในบริษัทที่จะสมัครมาทำงานเลย เป็นเพียง template ที่หาได้ทั่วไปในโลก internetลองคิดดูสิว่า บริษัทจะรับสมัครคนที่ไม่มีความสนใจในบริษัทหรือ ?
ขั้นตอนที่ 2 ทำการ review code ของผู้สมัคร
คือ 20% ที่เหลือรอดมานั่นเอง โดยจะพิจารณาเกี่ยวกับ code เพราะว่า มันคือสิ่งที่ต้องทำ ประกอบไปด้วย- คุณให้ความสนใจ ใส่ใจกับ code มากเท่าไร ?
- คุณให้ความสนใจ ใส่ใจกับ คุณภาพของ code มากไหม ?
สิ่งที่น่าสนใจมาก ๆ คือ Your Code is Clean, But Not Great
เพราะว่า เราต้องทำการปรับปรุง code ให้ดีขึ้นอย่างต่อเนื่อง มาดูรูปแบบ code ที่มันแย่ ๆ มักพบเจอบ่อย ๆ- แต่ละ method เกิน 15 บรรทัด
- แต่ละ method ทำงานเยอะมาก
- ใช้งาน global variable เยอะมาก ๆ
- ตั้งชื่อตัวแปรได้แย่มาก ๆ
- ทำการ comment ที่แย่ และ ไร้ประโยชน์
- Smalltalk: Best Practice Patterns
- Clean Code by Robert C. Martin
- Refactoring: Improving the Design of Existing Code
- Practical Object-Oriented Design in Ruby by Sandi Metz