Software developer ทำอะไรได้บ้าง?

Photo by XPS on Unsplash

Software developer ทำอะไรได้บ้าง?

Software developer หรือ นักพัฒนา Software ทำอะไรได้บ้าง เป็นอาชีพที่มีความน่าสนใจขนาดไหน เรามาทำความเข้าใจไปด้วยกันครับ

หลายๆคนคงเคยได้ยินถึงอาชีพ Software developer, Web developer, Software engineer หรือ Programmer กันมาบ้างเนื่องจากเป็นอาชีพที่ได้รับความนิยมมากขึ้นเรื่อยๆในยุคสมัยที่โลกกำลังถูกขับเคลื่อนไปด้วย Technology

ความต้องการในตลาดงานเพิ่มสูงขึ้นอย่างมากทำให้อาชีพนี้ได้ค่าตอบแทนที่สูงตามไปด้วย...

ในฐานะ Software developer มืออาชีพคนหนึ่ง ผมอยากจะมาแบ่งปันให้คุณผู้อ่านได้ฟังครับ ว่า Software developer สามารถทำอะไรได้บ้าง

ไปรับชมกัน

🖥 พัฒนา Web

การพัฒนา Web เป็นสิ่งแรกที่ผมและใครอีกหลายๆคนน่าจะนึกถึงเป็นอย่างแรกถ้าพูดถึงอาชีพ Software developer ครับ

ในทุกๆวันมี Web เกิดขึ้นมาใหม่ประมาณ 252,000 Web ต่อวัน และผู้ที่จะสร้างสรรค์เว็บไซต์เหล่านี้ก็ไม่ใช่ใครอื่นแต่เป็น Web developer นั่นเอง

Web developer ก็ถือว่าเป็น Software developer เหมือนกันครับ แต่คือกลุ่มคนที่ทำหน้าที่พัฒนา Web เป็นหลักนั่นเอง

ประเภทของ Web

1. Web 1.0 หรือที่เราเรียกกันว่า Website

coding-beaver-web-capture.png

เป็นเว็บที่เกิดขึ้นในยุคแรกสุดของ Internet เลยครับ ถือว่าเป็น Web ที่มีความซับซ้อนน้อยที่สุด มีจุดประสงค์เพียงแค่แสดงข้อมูลต่างๆ ตามความต้องการของเจ้าของเว็บให้กับทุกคนที่สนใจได้ดูครับ ตัวอย่างเช่น www.coding-beaver.tech

2. Web 2.0 หรือที่เราเรียกกันว่า Web application

Screen Shot 2564-12-24 at 15.56.53.png

เป็นเว็บที่เกิดขึ้นมาทีหลัง Web 1.0 โดยผ่านการพัฒนาอย่างต่อเนื่องของเหล่า Software developer จนมีความซับซ้อนมากขึ้นพร้อมทั้งฟีเจอร์ที่น่าดึงดูดมากมาย ตัวอย่างเช่น Facebook, Youtube หรือ Google

3. Web 3.0 ตอนนี้ใหม่มากๆเลยยังไม่มีชื่อเรียก

Screen Shot 2564-12-24 at 15.57.17.png

เป็นอนาคตของ Web ที่กำลังเกิดขึ้นโดยเน้นการใช้คอนเซปต์ของ Decentralization เข้ามาเกี่ยวข้อง นั่นคือการกระจายศูนย์ของการควบคุม แทนที่จะไปกระจุกอยู่กับทีมผู้สร้างเพียงอย่างเดียว และยังมีการประยุกต์ใช้กับ Blockchain technology อย่างการเชื่อม Crypto wallet เข้ากับ Blockchain อีกด้วย

ประเภทของงานพัฒนา Web

ในการพัฒนาเว็บ 2.0 และ 3.0 ต่างประกอบด้วย 2 ส่วนหลักๆที่ทำงานร่วมกัน นั่นก็คือ

  1. หน้าบ้าน (Front-end) งานส่วนที่เกี่ยวกับหน้าตาของตัว Web และทุกอย่างที่ User จะได้เห็นและใช้งานโดยตรง

  2. หลังบ้าน (Back-end) งานส่วนที่ไม่ได้ถูกเห็นโดย User โดยตรงแต่ว่าช่วยทำให้เว็บทำงานอยู่ได้ (อย่างเช่น การ Add friend บน Facebook หรือการ Upload วีดีโอขึ้น Youtube)

ส่วน Web 1.0 เนื่องจากมีความซับซ้อนต่ำ ดังนั้นจึงมีแค่งานหน้าบ้าน (Front-end) เพียงอย่างเดียวครับ

ถ้าใครสนใจอยากเรียนรู้วิธีการพัฒนา Web​ ผมแนะนำให้อ่าน บทความ นี้ครับ

📱 พัฒนา Application

การพัฒนา Application เป็นอย่างที่สองที่ผมและหลายๆคนน่าจะนึกถึง เพราะเราก็ใช้งานอุปกรณ์อย่าง Smart phone, Tablet, และ Computer กันอยู่ทุกวัน

ไถ Facebook ต่อด้วย Instagram ปิดท้ายด้วยดูคลิป Youtube จาก Channel โปรด...

คงไม่มีใครปฏิเสธได้ว่า Application เหล่านี้ส่งผลกระทบต่อชีวิตเราอย่างมาก

ประเภทของ Application

  1. Mobile application พัฒนา Application บนมือถือ ซึ่งก็สามารถแบ่งย่อยไปได้อีกเป็น iOS, Android, Huawei Application

  2. Desktop application พัฒนา Application ที่รันบน Computer ของเรา ตัวอย่างเช่น Adobe photoshop หรือ Microsoft word เป็นต้น

การพัฒนา Application เหล่านี้ ต้องอาศัยทักษะใกล้เคียงกับการพัฒนา Web ครับ แต่ผมแนะนำว่าถ้าอยากจะเริ่มต้นควรเริ่มจาก Web ก่อนมากกว่า

🎮 พัฒนา Game

แน่นอนครับเกมเมอร์อย่างผมต้องไม่พลาดเรื่องการพัฒนาเกมส์

dota2.webp

การพัฒนาเกมส์มักอาศัยทักษะการเขียนโปรแกรม ร่วมไปกับการฝึกใช้ Software ที่ถูกออกแบบมาเฉพาะสำหรับพัฒนาเกมส์อย่างพวก Game engine ต่างๆ ไม่ว่าจะเป็น Unreal engine, Unitity, หรือ Godot

unreal-engine-5.jpeg

สำหรับคนที่รักการเล่นเกมส์และอยากมีส่วนในการพัฒนาเกมส์เจ๋งๆ เส้นทางนี้ก็เหมาะเจาะสุดๆเลยหล่ะครับ

🔐 พัฒนา Blockchain

bitcoin.jpeg

มาแรงสุดๆในยุคนี้ที่เหรียญ Crypto ทำคนจนเป็นเศรษฐี และทำเศรษฐีไปนอนข้างถนนกันมานักต่อนักแล้ว

และ Technology ที่ทำให้การซื้อขายเหรียญ Crypto currency เหล่านี้สามารถเกิดขึ้นจริงได้ก็คือ Blockchain นั่นเองครับ

และถ้าหาก Software developer ศึกษาเรื่องกลไกการทำงานของ Blockchain เพิ่มเติมจากความรู้พื้นฐานที่ใช้อยู่ทุกวันซักนิดหน่อย ก็จะสามารถกระโดดเข้ามาในวงการ Blockchain ได้อย่างไม่ยากเย็นจนเกินไปครับ

🖲 พัฒนา IoT (Internet of Things)

jorge-ramirez-cDK_VY_A9x8-unsplash.jpg

Photo by Jorge Ramirez on Unsplash

เมื่อความก้าวหน้าของอุปกรณ์ Chip ขนาดเล็กก้าวหน้าขึ้นไปเรื่อยๆ ทำให้มันเข้าไปอยู่ในสิ่งของมากมายในชีวิตประจำวันของเรา

และเมื่อรวมพลังเข้ากับ Internet จึงเกิดเป็น Technology ที่มีประโยชน์หลากหลายอย่าง ให้เราเผลอใช้สิ่งของเหล่านี้ไปโดยที่เราเองอาจไม่รู้ตัวด้วยซำ้

ตั้งแต่ระบบ Software ภายในยานพาหนะ อย่างรถยนต์​และ รถพลังงานไฟฟ้า (EV) ไปจนถึง Sensor ต่างๆที่คอยรายงานค่า PM2.5 หรือที่อยู่ในอุปกรณ์เล็กๆ อย่างกล้องวงจรปิด หรือระบบไฟใน Smart home

แน่นอนว่าทักษะการพัฒนา Software จะช่วยให้มีพื้นฐานสำหรับการพัฒนา Software ที่อยู่ภายในสิ่งของพวกนี้ได้เช่นกัน

💾 พัฒนา Software สำหรับใช้ภายในบริษัท

internal-software.jpeg

ขอบคุณรูปสวยๆจาก sea.pcmag.com

ถ้าคุณผู้อ่านเคยทำงานในบริษัทขนาดใหญ่หน่อย หรือว่าเคยจ้างคนมาทำ Software ให้กับบริษัทของตัวเองก็น่าจะพอเห็นภาพกันมาบ้างครับ

Software ภายในบริษัทสามารถเพิ่มประสิทธิภาพให้กับการทำงานได้มาก ถ้าหากเราแก้ปัญหาได้อย่างตรงจุด โดยเฉพาะงานที่อาศัยความถึกในการทำ

หลายๆบริษัทเลือกที่จะใช้เงินจำนวนมากเพื่อจ้างบริษัท IT Consultant เพื่อพัฒนา Software สำหรับใช้ภายในบริษัทตัวเองเพราะว่า Software ที่ดีนั้นคุ้มค่ากับราคาที่จ่ายนั่นเองครับ

และภาษาที่ใช้กันอย่างแพร่หลายมากที่สุดในการสร้าง Software ประเภทนี้ก็คือภาษา Java นั่นเองครับ

👨🏽‍💻 พัฒนา Program ทั่วไป

christopher-gower-m_HRfLhgABo-unsplash.jpg

Photo by Christopher Gower on Unsplash

การเป็น Software developer ไม่ได้แปลว่าเราจะต้องสร้างอะไรที่ยิ่งใหญ่อลังการ และใช้ Software devloper หลายสิบคนในการพัฒนาตลอดเวลา แต่เราสามารถสร้าง Program เล็กๆด้วยตัวคนเดียวเพื่อแก้ปัญหาบางอย่างที่อาจส่งผลกระทบในแง่ดีอย่างมากได้

ไม่ว่าจะเป็นงานตรวจเช็คเอกสาร ตรวจสอบตัวเลขง่ายๆให้เท่ากัน ที่ปกติแล้วใช้คนในการตรวจ เราอาจเขียนโปรแกรมง่ายๆมาตรวจให้กับเรา อาจจะใช้แรงหน่อยแต่เหนื่อยแค่ครั้งเดียว

หรืออาจประยุกต์มาใช้กับ Googlesheet หรือ Microsoft excel ก็ได้ครับ ผมทำบ่อยมาก ยกตัวอย่างเช่นการทำระบบตัดสต็อกสินค้าแบบง่ายๆ ด้วยการเขียน Code ลงไปบน Googlesheet ครับ

📖 สรุป

Software developer เป็นอาชีพที่สามารถนำความรู้มาประยุกต์ใช้กับงานได้หลากหลายสายงาน ไม่ใช่เพียงเท่าที่ผมยกตัวอย่างไปเท่านั้น แต่ยังมีอีกมากมาย และเป็นที่ต้องการอย่างมากในยุกสมัยปัจจุบัน และผมเชื่อว่าความต้องการนี้ก็จะเพิ่มสูงขึ้นเรื่อยๆ

และผม Coding Beaver ก็อยากจะเป็นคนนึงที่เตรียมคุณให้พร้อมสำหรับการเป็น Software developer ขอแค่คุณสนใจ

ลองอ่าน บทความอื่นๆ ของผม หรือ เริ่ม เรียนผ่าน Youtube ก็น่าจะเป็นการเริ่มต้นที่ดีครับ

Coding Beaver ขอเป็นกำลังใจให้ทุกคนนะครับ

ขอพระเจ้าอวยพรครับ

📖 เรียนรู้เพิ่มเติม