See the original English version of this article here
ใครที่อยู่ในแวดวง Software Development เชื่อว่า น่าจะต้องเจอเรื่องราว ความคิดเห็น หรือประสบการณ์มากมาย ทั้งที่ “ถูกต้อง” และ “ผิด” วันนี้ทีมงานได้รวบรวม ความเข้าใจผิด 50 ประการ ในแวดวง Software Development มาให้อ่านกัน ใครเคยเจอแบบไหนมาบ้าง มาแชร์กันได้เลย
- เขียน Unit Tests = ทำ Test Driven Development
- ทำ 100% Test Coverage Report = Code เสร็จเรียบร้อยแล้ว
- สร้าง deployment artifacts โดย central machine = ทำ Continuous Integration
- Developer ทุกคนเช็ค Code ใน Branch ของ Remote Central Repository เพื่อจะ Merge กับ Main Branch ในภายหลัง = ทำ Continuous Integration
- ใช้เวลา Coding นานหลายชั่วโมง = Commitment
- การขลุกอยู่กับ Code จำนวนมากๆ = Geek
- ทีม(ง่อยๆ) ที่พึ่งพาเพียง Developer เพียงคนเดียว = เป็น Developer ดาวเด่นของทีม
- คนในตำแหน่ง CTOs, Architects และตำแหน่งใกล้เคียง ไม่ชอบ Coding
- Commitment = Estimate
- CTO มีหน้าที่เป็นผู้นำ/แนะแนวทางให้ทีม Development ไม่จำเป็นต้องเข้าใจ Business
- การมี Product ที่มี Feature เยอะหลายอย่าง = สามารถรับประกันความสำเร็จได้ในเวลาอันสั้น
- Idea ถือเป็นสิ่งหายากและมีราคาแพง ส่วน Execution/Implementation มีราคาถูก
- Developers ไม่ต้องเข้าใจใน Business เพราะมันเป็นหน้าที่ของ Business Analysts และ Product Managers
- Developers ถือเป็นสิ่งที่ราคาถูกและสามารถทดแทนได้ง่าย
- MVP = Lean Startup
- รูปแบบของ MVP เช่น Minimum Lovable Product, Minimum Awesome Product และอื่นๆ เป็น Lean Startup++
- Startups ไม่ต้องทำ TDD เนื่องจากไม่มีเวลามากพอ
- Enterprises ไม่ต้องทำ TDD เพราะสามารถจ้าง Developers ที่เก่งๆ ได้
- Startups หวังว่าจะจ้างคนเก่งๆ ด้วยการพูดจาหว่านล้อมต่างๆ แต่ให้เงินเดือนที่น้อยกว่าที่ควรเป็น
- Enterprises หวังว่าจะจ้าง Developers เก่งๆ ด้วยการนำเสนอจุดเด่นขององค์กร
- Culture ของทีมที่เพิ่งตั้งใหม่(ยังไม่เสถียร) = Culture ทีมที่มีการเปิดกว้างทางความคิด
- การลด Level ของสายการบังคับบัญชาในองค์กร = สายการบังคับบัญชาแบบราบ(Flat hierarchy)
- ความสามารถในการคาดเดาความต้องการของ Users และเพิ่ม Features ใน Product = Product Management
- ผู้ที่เรียนจบ MBA สมควรได้เป็น Product Managers
- การมี Features มากๆ = มี UX ที่ดีมาก
- การขาย Product ไม่ใช่เรื่องยาก
- การพัฒนา Product ให้เติบโตและรุ่งเรื่องยิ่งขึ้น เป็นเรื่องของศาสตร์และไม่เกี่ยวกับเรื่องศิลป์
- Code ที่ดูฉลาดล้ำ ดีกว่า Code ที่อ่านได้ง่าย
- Code ที่มีความกระชับ ดีกว่า Code ที่ maintain ได้ง่าย
- Product Manager > BA > Developer > UX Specialist > Quality Analyst
- ทุกๆ Task เป็น User Story ใน Agile
- การเพิ่ม Story Points ลงใน Bugs = การปรับปรุงเรื่องความเร็ว
- SAFe เป็น Agile ที่ปลอดภัยสูงสุด
- ยิ่งเพิ่มความเร็ว = เพิ่มความเป็น Agile สูงขึ้น
- TDD ทำให้เสียเวลา และมันเหมาะกับ Developers ทั่วไปเท่านั้น
- Pair-Programming เหมาะสมที่จะใช้กับ Developers ทั่วไป
- Agile Certification = ผู้เชี่ยวชาญเกี่ยวกับ Agile
- SAFe เป็น scalable Agile
- การคาดเดาความต้องการของ End-User = การวิเคราะห์ Business
- การใช้ framework จะช่วยแก้ปัญหาเรื่อง scability ได้เสมอ
- Cloud = Scalability
- Machine Learning เป็นเรื่องเกี่ยวกับ Algorithms และไม่เกี่ยวข้องกับความรู้
- การวิเคราะห์ เป็นเรื่องที่ไม่เกี่ยวกับความรู้
- จุดแข็งของ Agile Coach คือการรู้จักที่จะใช้ Tools อย่าง Jira เป็นต้น
- Software Craftsmanship เป็นเรื่องของการใช้ Tools อย่าง Jenkins, SonarQube เป็นต้น
- ทีม DevOps เป็นชื่อใหม่เก๋ๆ ของทีม Infrastructure Management
- Agile เป็นวิธีการใหม่ในการบริหารจัดการ Developers
- UX เป็นทุกสิ่งทุกอย่างของ UI
- Full-Stack Developer = Frontend Developer + Backend Developer + Infrastructure Developer
- Product Manager คือ Project Manager คนใหม่
ไม่ทราบว่ามีใคร หรือคนรู้จักที่อยู่ในแวดวง Software Development กำลังเข้าใจอย่างในบทความนี้อยู่บ้าง???
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 25 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่
Source: https://hackernoon.com/