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

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

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

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

ไปรับชมกัน

## 🖥 พัฒนา Web

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

ในทุกๆวันมี [Web เกิดขึ้นมาใหม่ประมาณ 252,000 Web ต่อวัน](https://siteefy.com/how-many-websites-are-there/) และผู้ที่จะสร้างสรรค์เว็บไซต์เหล่านี้ก็ไม่ใช่ใครอื่นแต่เป็น Web developer นั่นเอง

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

### ประเภทของ Web

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

![coding-beaver-web-capture.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337177283/e2DA175SZ.png align="left")

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

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

![Screen Shot 2564-12-24 at 15.56.53.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337233676/4WS3GZQex.png align="left")

เป็นเว็บที่เกิดขึ้นมาทีหลัง Web 1.0 โดยผ่านการพัฒนาอย่างต่อเนื่องของเหล่า Software developer จนมีความซับซ้อนมากขึ้นพร้อมทั้งฟีเจอร์ที่น่าดึงดูดมากมาย ตัวอย่างเช่น [Facebook](https://facebook.com), [Youtube](https://youtube.com) หรือ [Google](https://google.com)

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

![Screen Shot 2564-12-24 at 15.57.17.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337620231/RULQ6ytWe.png align="left")

เป็นอนาคตของ 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**​ ผมแนะนำให้อ่าน [บทความ](https://blog.coding-beaver.tech/first-thing-to-know-to-become-a-developer) นี้ครับ

## 📱 พัฒนา 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](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337676853/mXWjVAxLc.webp align="left")

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

![unreal-engine-5.jpeg](https://cdn.hashnode.com/res/hashnode/image/upload/v1640338114742/wpi14wqsT.jpeg align="left")

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

## 🔐 พัฒนา Blockchain

![bitcoin.jpeg](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337738064/-w2-Ykwrs.jpeg align="left")

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

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

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

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

![jorge-ramirez-cDK_VY_A9x8-unsplash.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1640338256798/DizdooAbd.jpeg align="left")

Photo by [Jorge Ramirez](https://unsplash.com/@jorgedevs?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/s/photos/iot?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)

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

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

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

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

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

![internal-software.jpeg](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337849913/mQLnUpPVb.jpeg align="left")

ขอบคุณรูปสวยๆจาก [sea.pcmag.com](https://sea.pcmag.com/news/4486/the-best-free-software-of-2020)

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

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

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

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

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

![christopher-gower-m_HRfLhgABo-unsplash.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1640337889673/8ryiNBLmM.jpeg align="left")

Photo by [Christopher Gower](https://unsplash.com/@cgower?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/s/photos/coding?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)

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

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

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

## 📖 สรุป

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

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

> ลองอ่าน [บทความอื่นๆ](https://blog.coding-beaver.tech) ของผม หรือ เริ่ม [เรียนผ่าน Youtube](https://www.youtube.com/channel/UCNPxaf4kKjkNkP9hgtwdb5w) ก็น่าจะเป็นการเริ่มต้นที่ดีครับ

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

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

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

* 🧑🏻‍💻 [รู้จัก Coding Beaver](https://coding-beaver.tech/about)
    
* 1️⃣ [สิ่งแรกที่ควรรู้ถ้าอยากเป็น Developer](https://www.youtube.com/watch?v=x5OzfQ6SE9I)
    
* 📚 [ช่องทางการเรียนรู้](https://www.coding-beaver.tech/#learning-channels)
