นักพัฒนาที่รักการเขียนโปรแกรม แต่เกลียดอุตสาหกรรมการเขียนโปรแกรม
(deathbyabstraction.com)-
ผู้เขียนรู้สึกว่าตัวเองปรับตัวเข้ากับอาชีพวิศวกรรมซอฟต์แวร์ได้ไม่ค่อยดี
- พอเริ่มเข้าใจตรรกะภายในของ codebase ในระดับหนึ่งแล้ว ด้านเทคนิคกลับกลายเป็นเรื่องน่าเบื่อ อยากทำอะไรให้มากกว่านั้น และอยากทำในวิธีที่ต่างออกไป
- ผู้เขียนสงสัยเกี่ยวกับการตัดสินใจด้านการออกแบบและเป้าหมายในภาพกว้างของมัน แต่กลับถูกบอกว่า “คิดมากเกินไป” หรือ “ใส่ใจมากเกินไป”
- ไม่ใช่แค่เรื่องความถนัดหรือชื่อตำแหน่งไม่ตรงกันเท่านั้น แต่โดยพื้นฐานแล้วผู้เขียนไม่เห็นด้วยกับวิธีที่สถานที่แบบนี้ดำเนินงาน และอยากทำงานเพื่อเปลี่ยนมันมากกว่าจะคงสภาพมันไว้
-
เมื่อมองดูประกาศรับสมัครงานในปี 2023 ผู้เขียนก็หมดภาพฝันเกี่ยวกับวงการวิศวกรรมซอฟต์แวร์
- ในกรณีส่วนใหญ่ เห็นได้ชัดว่าโค้ดที่วิศวกรจะต้องเขียนนั้นแยกขาดอย่างสิ้นเชิงจากปัญหาสำคัญของมนุษยชาติหรือของปัจเจกบุคคล
- วัฒนธรรมสตาร์ตอัปยืนอยู่แนวหน้าของนโยบายแบบ “เขียนโค้ดให้มากขึ้น และตั้งคำถามให้น้อยลง” ของอุตสาหกรรมนี้
- สตาร์ตอัปส่วนใหญ่มักพยายามหาผู้ใช้แบบจ่ายเงินด้วยการหมุนเงินของนักลงทุนไปมา แต่ท้ายที่สุดเวลาก็ถูกเผาผลาญไปกับงานของวิศวกร และเงินทุนร่วมลงทุนก็ตกไปอยู่ในมือของผู้ที่มีทุนมากอยู่แล้ว
- โฆษณารับสมัครงานที่พยายามทำให้สิ่งนี้ดูเป็นความพยายามที่น่าตื่นเต้นและมีความหมาย ถือเป็นการดูหมิ่นสติปัญญา
-
บริษัทเทคโนโลยีแบบดั้งเดิมจะแตกต่างจากสตาร์ตอัปในเชิงโครงสร้างองค์กรและการเงิน แต่ในเชิงวัฒนธรรมแทบไม่ต่างกัน
- โค้ดที่เขียนใน FAANG อาจไปถึงมือผู้ใช้จริงได้ แต่การที่ปัจเจกจะครุ่นคิดถึงทุกแง่มุมของการเขียนโค้ดกลับไร้ความหมายยิ่งกว่าที่เคย
- วิศวกรไม่ได้เป็นเพียงฟันเฟืองในเครื่องจักรที่สร้างผลิตภัณฑ์เพื่อทำให้ด้านที่เลวร้ายที่สุดของทุนนิยมเป็นระบบอัตโนมัติเท่านั้น แต่ยังถูกลดทอนให้เป็นแค่ตัวเลข เช่น ขนาดของ backend stack คะแนนสัมภาษณ์เชิงเทคนิค หรือคะแนนประเมินผลงาน
- ยังมีความคาดหวังอีกว่าวิศวกรควรโหยหางานอันว่างเปล่าและน่าอัปยศนี้ให้มากขึ้น และการตั้งคำถามกับมันก็ยิ่งถูกกดทับ
- โปรแกรมเมอร์ควรถูกทำให้โฟกัสแค่ “ทำอย่างไร” แทบไม่แตะ “ทำอะไร” และไม่มีวันแตะ “ทำไปทำไม”
- สำหรับ code monkey จำนวนน้อยที่สามารถและเต็มใจวิจารณ์ระบบ ข้อความที่ส่งออกมาก็ชัดเจนว่า ให้ทิ้งความคิดแบบนั้นไว้นอกประตู
-
วิธีคิดแบบทำให้มากขึ้นและถามให้น้อยลงในโลกเทคโนโลยีเช่นนี้ อาจผลิตโค้ดได้มากขึ้น แต่ก็พาไปสู่ซอฟต์แวร์ที่แย่ลง
- แม้ในเวลาที่ทุนและอำนาจอื่น ๆ ที่เราไม่อาจควบคุม เปิดทางในทางทฤษฎีให้เราสร้างซอฟต์แวร์อย่างยั่งยืน ส่งผลบวกต่อโลก หรือมีประโยชน์ใช้สอยจริงได้ ในทางปฏิบัติเราก็มักไม่ทำ เพียงเพราะแรงเฉื่อยธรรมดา ๆ
- แรงเฉื่อยแบบนี้แทรกซึมไปทั่วทั้ง tech stack ที่ถูกสร้างขึ้นเพื่อผลิตผลิตภัณฑ์ซึ่งไร้ประโยชน์ต่อสังคม
- ตั้งแต่ภาษา ไลบรารี เฟรมเวิร์ก ไปจนถึง pattern ของโค้ด เทคโนโลยีเต็มไปด้วยความหมกมุ่นในความใหม่และลูกเล่น ก่อนจะเกิดนวัตกรรมที่แท้จริง ซึ่งเป็นโรคระบาดไปทั่วทั้งอุตสาหกรรม
- หากไม่ได้กำลังแก้ปัญหาที่นอกกรอบของแนวปฏิบัติเดิม ก็ไม่มีเหตุผลอะไรที่จะต้องการวิศวกรรมที่นอกกรอบของแนวปฏิบัติเดิม
-
ปัญหาทางวิศวกรรมที่น่าสนใจที่สุด คือปัญหาที่เกิดขึ้นเองตามธรรมชาติในสังคมของเรา
- สิ่งนี้ตรงข้ามกับปัญหาที่ตั้งให้ความก้าวหน้าทางเทคโนโลยีเป็นเป้าหมายในตัวเอง หรือพยายามสร้างความต้องการของตลาดขึ้นมาแบบฝืน ๆ ในที่ซึ่งไม่มีความต้องการอยู่ก่อน
- ความจำเป็นทางสังคมคือแรงขับเคลื่อนที่ดีที่สุดของนวัตกรรม และในทางประวัติศาสตร์ ความสำเร็จที่ก้าวล้ำที่สุดของยุคคอมพิวเตอร์ระยะแรกก็เกิดขึ้นเพื่อประโยชน์ที่ใหญ่กว่า
- ผู้เขียนต้องการให้ทุกวิธีการ ตั้งแต่ภาษาโปรแกรมและกระบวนทัศน์ สถาปัตยกรรม ไปจนถึงทุกบรรทัดของโค้ดและทุกไวยากรณ์ ถูกกำหนดโดยเหตุผลของระบบที่กำลังสร้างอยู่
- และหวังว่าเหตุผลนั้นจะเป็นภาพสะท้อนของความจำเป็นที่มีอยู่จริง ไม่ใช่ตัวชี้วัดทางธุรกิจไร้สาระที่มีอยู่เพื่อคงอยู่ด้วยตัวมันเองเท่านั้น
ความเห็นของ GN⁺
- ดูเหมือนว่าวิศวกรซอฟต์แวร์จำนวนมากจะรู้สึกคลางแคลงใจกับบรรยากาศปัจจุบันของอุตสาหกรรมที่มุ่งเน้นเพียงการยกระดับทักษะทางเทคนิคหรือความก้าวหน้าของเทคโนโลยีในตัวมันเอง ผมเห็นด้วยว่าการนำเทคโนโลยีไปใช้เพื่อแก้ปัญหาสังคมจริงและสร้างคุณค่าจริงนั้นสำคัญกว่า
- แม้นวัตกรรมทางเทคโนโลยีในตัวมันเองจะสำคัญ แต่การย้อนกลับมามองว่ามันส่งผลต่อโลกอย่างไรในทางปฏิบัติก็อาจเป็นหนึ่งในบทบาทสำคัญของวิศวกร ดูเหมือนว่าเราจำเป็นต้องมีท่าทีที่ไม่ใช่แค่เขียนโค้ดให้เยอะและเร็ว แต่ต้องครุ่นคิดถึงเป้าหมายและทิศทางของมันด้วย
- ปัญหาของวัฒนธรรมในบริษัทใหญ่หรือสตาร์ตอัปอาจเป็นสิ่งที่วิศวกรแต่ละคนเปลี่ยนได้ยาก แต่ก็ดูมีความหมายไม่น้อย หากแต่ละคนเลือกองค์กรที่สอดคล้องกับคุณค่าของตัวเอง หรือร่วมกับคนรู้จักทดลองแก้ปัญหาด้วยวิธีทางเลือก
- เป็นเรื่องน่ากังวลที่ตรรกะของทุนมีอิทธิพลมากเกินไปต่อการกำหนดทิศทางการพัฒนาเทคโนโลยี ดูเหมือนว่าเราจำเป็นต้องคิดมากขึ้นว่าเทคโนโลยีจะมีส่วนช่วยต่อฉันทามติทางสังคมหรือประโยชน์สาธารณะได้อย่างไร และต้องมีความพยายามอย่างมีสำนึกเพื่อมุ่งไปในทิศทางนั้น
- คงจะดีไม่น้อยหากมีพื้นที่ให้วิศวกรที่เหมือนผู้เขียน ซึ่งตั้งคำถามกับธรรมเนียมปฏิบัติของอุตสาหกรรมและพยายามแสวงหาทางเลือก ได้มารวมตัวและแลกเปลี่ยนกันมากขึ้น หวังว่าจะได้เห็นการเติบโตของชุมชนที่ร่วมกันสร้างเทคโนโลยีที่ยั่งยืนและมีความหมายต่อสังคม
1 ความคิดเห็น
ความเห็นบน Hacker News
สรุปได้ดังนี้: