Golang

Talance Hiring Guide : Go Developer #9

admin

06 Oct 2022 | 2 นาทีอ่าน

Go เรียกอีกอย่างว่า Golang หรือ Go language เป็นภาษาโปรแกรมแบบโอเพ่นซอร์สและการพิมพ์แบบ static ซึ่งถูกออกแบบโดย Google ตามวัตถุประสงค์ที่ต้องการให้ภาษาออกมาเรียบง่าย ประสิทธิภาพสูง และเข้าใจง่าย 

เป็นความจริงที่ภาษา Go ได้รับการออกแบบโดย Robert Griesemer, Rob Pike และ Ken Thompson เหล่าวิศวกรคอมพิวเตอร์ที่ไม่ชื่นชอบการเขียนโปรแกรมด้วยภาษา C++ เลยแม้แต่น้อย 

แต่เริ่มแรกภาษา Go ได้รับการออกแบบภายใต้แรงบันดาลใจจากภาษาที่เรียบง่ายและใกล้เคียงภาษามนุษย์มากที่สุดอย่าง Python แต่ยังคงต้องการความรวดเร็วแบบภาษา C ทำให้ภาษา Go มีประสิทธิภาพมากยิ่งขึ้้นอีกด้วย โดยได้รับการเผยแพร่ต่อสาธารณชนเมื่อปี 2009 และถูกทำให้กลายเป็นโอเพ่นซอร์สเวอร์ชันแรกที่มีชื่อว่า Golang 1.0 ในปี 2012  

จุดเด่นของ Go

มีหลายเหตุผลที่ทำไม Golang ถึงเป็นภาษาที่มาแรงอย่างมากในปีที่ผ่านมา ด้วยความโดดเด่นด้านการทำ back-end ที่ช่วยให้โปรเจกต์มีประสิทธิภาพเพิ่มมากขึ้นหรือแม้กระทั่งสามารถพัฒนา smart contract ที่ช่วยสร้างความโดดเด่นให้กับองค์กรสมัยใหม่ได้

ทั้งนี้ Golang ยังมีจุดเด่นอีกมากมาย ซึ่งวันนี้ Talance จะพาคุณมารู้จักกับจุดเด่นต่าง ๆ เหล่านี้

  • Performance & Speed : มีความรวดเร็วพอ ๆ กับภาษา Java แม้มีขนาดของโค้ดที่ยาวกว่าก็ตาม
  • Community :  คอมมูนิตี้ของ Go กำลังเติบโตอย่างต่อเนื่องโดยปัจจุบันมีผู้คนบน Github มากกว่า xxxx ราย และผู้ติดตามบน Twitter มากกว่า xxxxx ราย
  • Easy Learning : ภาษา Go เป็นภาษาโปรแกรมที่ง่ายที่สุดหากคุณมีพื้นฐานในการเขียนภาษาคอมพิวเตอร์อื่น ๆ อยู่แล้ว โดยนักพัฒนาซอฟแวร์หลายรายสามารถสร้างแอปขั้นสูงด้วย Go ได้ภายในเวลาไม่กี่ชั่วโมง
  • Well-Scaled : Goroutines ใช้หน่วยความจำเพียง 2 kB ซึ่งทำให้สามารถปรับขนาดได้เมื่อจำเป็นอีกทั้งยังไม่ต้องพึ่งพา multi-threading แบบดั้งเดิมอีกด้วย
  • High-Demand : Go เป็นภาษาโปรแกรมที่มีความต้องการมากที่สุดอันดับ 1 ของโลกในปี 2021 และดูเหมือนความต้องการในปีนี้ก็ไม่ลดลงเช่นเดียวกัน

ความนิยมของ Go ในช่วงที่ผ่านมา

เป็นเรื่องตลกร้ายที่ภาษา Go ถูกออกแบบมาเพื่อให้มีคำค้นหาที่ง่าย โดย Golang มาจากชื่อโดเมนของเว็บไซต์ทางการของ Go อย่าง golang.org ซึ่งมันมีประโยชน์อย่างมากเนื่องจากผู้คนส่วนใหญ่มักค้นหาคำว่า “Go” โดยทั่วไปบน Google ซึ่งทำให้คนใหม่ ๆ ที่กำลังมองหาข้อมูลเกี่ยวกับการเขียนโปรแกรมสามารถมองเห็นมันได้อยู่ตลอดเวลา

อย่างไรก็ตามองค์กรขนาดใหญ่จำนวนมากเริ่มใช้ Golang เพิ่มขึ้นเป็นอย่างมากในช่วงที่ผ่านมา ได้แก่ Google, Cloudflare, Dropbox, MongoDB, Netflix, SoundCloud, Twitch และ Uber เป็นต้น

จากการสำรวจที่จัดทำโดยชุมชน Golang อย่างเป็นทางการจะเห็นได้ว่าภาษา Go ส่วนใหญ่มักถูกใช้สำหรับการเขียน Web programming, Database และการใช้งานที่เกี่ยวข้องกับ DevOps ตามการอ้างอิงจากข้อมูลในปี 2019-2020 แสดงให้เห็นว่าการใช้งานภาษา Go สำหรับ Web programming ยังคงได้รับความนิยมอย่างต่อเนื่อง

ที่มา : devopscube

ต่อมาไม่นานด้วยความเรียบง่ายของ Go ทำให้กลายหนึ่งในสาเหตุหลักที่ทำให้ภาษาโปรแกรมได้รับความนิยมเพิ่มขึ้น 5 อันดับจากอันดับที่ 10 เป็น 5 ตามการสำรวจนักพัฒนา StackOverflow ในปี 2020 จากความคิดเห็นของนักพัฒนากว่า 65,000 ราย

ความนิยมในการเรียนรู้ของนักพัฒนาตามการสำรวจจาก StackOverflow ในปี 2020

ด้วยการเปลี่ยนแปลงทางเทคโนโลยีอย่างรวดเร็วของภาษาคอมพิวเตอร์ทำให้ประเทศต่าง ๆ กว่า 162 ประเทศมีการใช้งานภาษาที่แตกต่างกันออกไป โดย Golang ได้รับความนิยมด้านการค้นหามากถึง 1.24% จากจำนวนภาษาคอมพิวเตอร์ทั้งหมดในปี 2021

ที่มา : SIMFORM

ปัจจุบันในปี 2022 Go Developer ถูกใช้งานใน solidity หรือ blockchain development เนื่องจากเป็นภาษาสำหรับการเขียน smart contract ในเครือข่าย Ethereum blockchain ซึ่งเป็นเครือข่ายบล็อกเชนขนาดใหญ่ที่สุดของโลกเป็นอันดับที่สองที่มาแรงเป็นอย่างมาก

อีกทั้ง Golang ยังถูกใช้ในการทำ Decentralized Applications (DApps) ซึ่งเป็นแอปพลิเคชันหรือโปรแกรมดิจิทัลที่ทำงานบนเครือข่ายบล็อกเชนและทำงานแบบ P2P โดยอยู่นอกขอบเขตและการควบคุมของหน่วยงานใดหน่วยงานหนึ่ง โดยได้รับความนิยมอย่างมากจากการเติบโตของบล็อกเชนในปี 2021-2022 

Insight จาก Talance

ในปี 2021 ที่ผ่านมา ได้มีผู้ว่าจ้างตามหา Go Developer คิดเป็นจำนวน 2 โปรเจกต์จากทั้งหมด 161 โปรเจกต์หรือคิดเป็น 1.24% จากจำนวนโปรเจกต์ในปี 2021 ทั้งหมด 

อย่างไรก็ตามในช่วง 9 เดือนแรกของปี 2022 ก็ได้มีผู้ว่าจ้างตามหานักพัฒนาภาษา Go เพิ่มขึ้นเป็น 13 โปรเจกต์จากทั้งหมด 250 โปรเจกต์หรือคิดเป็น 5.2% จากจำนวนโปรเจกต์ในปี 2022 ทั้งหมด

สิ่งนี้แสดงให้เห็นว่า Go Developer ได้รับความนิยมจากผู้จ้างงานมากขึ้นเมื่อเทียบกับปี 2021 โดยปัจจุบัน Talance มี Go Developer อยู่บนแพลตฟอร์มทั้งหมด 29 รายซึ่งส่วนใหญ่มีเวลาว่างสำหรับการรับงานฟรีแลนซ์สัปดาห์ละ 20-25 ชั่วโมง 

หา Go Developer ได้จากที่ไหนบ้าง

แน่นอนหากคุณกำลังมองหา Go Developer อันดับแรกเลยคือคุณต้องเข้าใจจุดประสงค์ขององค์กรก่อนว่ากำลังต้องการทำโปรเจกต์ระยะสั้นหรือยาว แม้กระทั่งลักษณะของโปรเจกต์ว่ากำลังต้องการพนักงานแบบ Full-time Developer หรือ Freelance Developer กันแน่ ซึ่งวันนี้ Talance จะมาช่วยพาให้คุณขยายทีมด้วย Full-time Developer และ Freelance Developer แบบจัดเต็ม

ขยายทีมด้วย Full-time Developer

การมองหา Full-time Developer ในภาษา Go นั้นควรเริ่มจากถามหาความต้องการขององค์กรก่อนว่าต้องการนักพัฒนาในระดับไหน เช่น Junior Developer, Mid-Level Developer หรือ Senior Developer ซึ่งหากได้ข้อสรุปแล้วจึงจะเริ่มโพสต์ตามหา Full-time Developer ตามกลุ่มต่าง ๆ

ทั้งนี้การตามหา Full-time Developer ในระยะเวลาสั้น ๆ เป็นเรื่องที่เกิดขึ้นได้ยากอย่างมากเนื่องจากขั้นตอนการค้นหา สมัคร คัดเลือก สัมภาษณ์ และเซ็นสัญญาจ้างงาน ซึ่งจะใช้เวลาโดยเฉลี่ยต่อการเปิดรับ Full-time Developer อยู่ที่ 30-60 วัน (ประมาณ 1-2 เดือน) แต่ก็ยังคงคุ้มค่าหากต้องการจ้างงานในระยะยาว เช่น องค์กรมีโปรเจกต์ในระยะยาวหรือมีปริมาณงานจำนวนมาก

แต่อย่างไรก็ตามหากการจ้างงาน Full-time Developer ไม่ตอบโจทย์ของคุณในตอนนี้ ก็ยังมีทางเลือกอื่น ๆ เช่น Outsource หรือ Freelance Developer เป็นตัวเลือกอยู่

ขยายทีมด้วย Freelance Developer

Freelance Developer ถือเป็นตัวเลือกที่ตอบโจทย์อย่างมากหากคุณต้องการตามหานักพัฒนาในระยะเวลาอันรวดเร็วเนื่องจากไม่ต้องผ่านขั้นตอนต่าง ๆ ให้ยุ่งยากหรือเป็นเวลานาน

Talance แพลตฟอร์มค้นหา Freelance Developer ที่จะช่วยให้องค์กรต่าง ๆ ได้นักพัฒนาไปช่วยพัฒนาโปรเจกต์ได้ภายใน 7 วัน ซึ่งเร็วกว่าการหาพนักงานประจำถึง 4-8 เท่า พร้อมเรทราคารายชั่วโมงที่ถูกกว่าการจ้างพนักงานประจำในระยะสั้นอีกด้วย

เงินเดือนของ Go Developer

Go Developer ในตลาดแรงงานหลัก ๆ แล้วถูกแบ่งออกเป็น 2 ประเภท ได้แก่ พนักงานประจำ และ ฟรีแลนซ์ ซึ่งทั้งสองแบบจะมีเรทค่าใช้จ่ายที่แตกต่างกันตามความยากง่ายของโปรเจกต์ แน่นอนว่าหากเรากำลังต้องการโปรแกรมเมอร์ในระยะยาวการจ้างพนักงานประจำย่อมตอบโจทย์กว่าฟรีแลนซ์ซึ่งเป็นการเพิ่ม Fix-cost ให้กับบริษัท แต่หากองค์กรของคุณต้องการโปรแกรมเมอร์ในระยะสั้นฟรีแลนซ์ย่อมตอบโจทย์มากกว่าเนื่องจากบริษัทไม่ต้องแบกรับ Fix-cost ในระยะยาว

พนักงานประจำ 

ตามข้อมูลจากกลุ่ม Facebook เช่น โปรแกรมเมอร์ หา งาน หา โปรแกรมเมอร์, Thai Work From Home งานประจำทำที่บ้าน, Jobs for Thai Programmers รวมถึง Linkedin และ JobDB ของ Developer ภายในประเทศไทยพบว่าสถิติการจ้างงานพนักงานประจำนั้นมีอัตราเงินเดือนที่แตกต่างกันออกไป โดยแบ่งได้ออกเป็น 3 ระดับได้แก่ Junior, Mid-Level และ Senior

Junior Developer : มีฐานเงินเดือนอยู่ที่ 20,000 – 35,000 บาทต่อเดือน 

Mid-Level Developer : มีฐานเงินเดือนอยู่ที่ 35,000 – 70,000 บาทต่อเดือน

Senior Developer : มีฐานเงินเดือนอยู่ที่ 90,000 – 120,000 บาทต่อเดือน

หมายเหตุ : ฐานเงินเดือนแปรผันกับ “ประเภทของบริษัท, company size, job qualification, ประสบการณ์ที่ต้องการ และอื่น ๆ อีกมากมาย” โดยเก็บข้อมูลผ่านกลุ่มตัวอย่างเท่านั้น

Freelance

องค์กรส่วนใหญ่มักกังวลว่า Freelance Developer จะมีค่าใช้จ่ายที่เยอะเกินงบประมาณที่ตั้งไว้ของบริษัท แน่นอนว่าหากคุณเทียบค่าตอบแทนที่จ่ายกับพนักงานประจำต่อฟรีแลนซ์ในแต่ละเดือนนั้น ฟรีแลนซ์อาจมีเรทที่สูงกว่าอย่างแน่นอน อย่างไรก็ตามฟรีแลนซ์ส่วนใหญ่นั้นมักมีประสบการณ์ทำงานที่สูงและมีความเชี่ยวชาญในหลายสายงานทำให้การจ้างฟรีแลนซ์เข้ามาช่วยพัฒนาองค์กรในแต่ละครั้งยังช่วย “เสริมสร้างและพัฒนาทีมในองค์กร” ได้อีกด้วย

ตามข้อมูลจากการจ้างฟรีแลนซ์รายโปรเจกต์นั้นจะมีราคาอยู่ระหว่าง 9,500 – 600,000 บาทต่อโปรเจกต์ทั้งนี้ขึ้นอยู่กับความยากง่ายของแต่ละโปรเจกต์รวมทั้งหากองค์กรของคุณต้องการความพิเศษในทักษะอื่น ๆ เป็นอย่างมากก็จะยิ่งมีเรทค่าใช้จ่ายที่เพิ่มมากยิ่งขึ้น

ทราบหรือไม่ว่าเรทค่าตอบแทนรายชั่วโมงของ Golang Developer ในทวีปเอเชียนั้นอยู่ที่ราว ๆ 18-42 ดอลลาร์ต่อชั่วโมง ซึ่งราคาถูกกว่าทวีปอื่น ๆ 5 – 40% เลยทีเดียว

วิธีการประเมิน Skill ของ Go

วิธีการประเมิน skill เบื้องต้นของ Goalng Developer นั้นมีอยู่มากมายแต่ทั้งนี้ควรประเมินทักษะที่แข็งและอ่อนของพวกเขา มาดูกันว่านักพัฒนา Go ควรมีทักษะอะไรบ้าง

  1. มีความเชี่ยวชาญกับแนวคิดพื้นฐานของภาษา Go
  2. มีความเข้าใจอย่างลึกซึ้งกับ Goroutine
  3. มีความรู้เรื่อง Go frameworks เป็นอย่างดี
  4. มีความรู้เกี่ยวกับการสร้าง Go Template
  5. มีความคุ้นเคยกับ Godoc
  6. มีความเข้าใจกับ Go channel patterns

Talance แนะนำคำถามสำหรับ Go Developer

Q : Gopath environment variable คืออะไร

A : Gopath environment variable ใช้เพื่อกำหนดตำแหน่งของพื้นที่ทำงานภาษา Go

Q : Go interfaces คืออะไร

A : Go interfaces ได้รับการพัฒนาเพื่อกำหนดพฤติกรรมของ object สิ่งเหล่านี้สร้างขึ้นโดยใช้คำสั่ง ‘type’ ตามด้วยชื่อและอินเทอร์เฟซของคำสั่งหลัก

Q : Golang มีโครงสร้างการวนซ้ำกี่แบบ?

A : Golang เสนอโครงสร้างลูปเดียวเท่านั้น นั่นคือ ‘for’ เท่านั้นแต่ลูปนั้นจะมี 3 องค์ประกอบที่แตกต่างกัน

จ้าง Go Developer กับ Talance

ท้ายที่สุดหากคุณกำลังมองหา Freelance Developer ผู้เชี่ยวชาญ Talance เป็นหนึ่งในคำตอบแรกที่จะช่วยให้คุณสามารถหาคนที่ตอบโจทย์กับลักษณะโปรเจกต์พร้อมเลือกได้แบบ on-demand

หากคุณต้องการจ้าง Golang Developer กับ Talance พวกเรามีหน้า “Talant Profile Showcase” ที่จะช่วยให้คุณตัดสินใจเลือก Developer ต่าง ๆ ได้ง่ายยิ่งขึ้น 

Talant Profile Showcase เป็นพื้นที่สำหรับองค์กรที่ต้องการ Resource เพื่อไปพัฒนาโปรเจกต์ที่องค์กรของคุณต้องการ วันนี้เรายกมาให้ดูทั้ง ประสบการณ์ทำงาน, Technology, ประเภทโปรเจกต์, จำนวนชั่วโมงทำงานต่อสัปดาห์ และ ค่าบริการรายชั่วโมงเริ่มต้น ให้องค์กรเลือกกันแบบจัดเต็ม

รู้หรือไม่? ผู้ว่าจ้างยอมจ่ายเงินให้กับนักพัฒนาภาษา Go ต่อโปรเจกต์อยู่ที่ 39,000 – 156,000 บาท ซึ่งใช้ระยะเวลาการจ้างงาน 320 ชั่วโมง หรือจ่ายเพียงประมาณ 39,000 บาทในแต่ละเดือนเท่านั้น

สรุป

Golang กำลังได้รับความนิยมอย่างมากจากอุตสาหกรรมบล็อกเชนและ Web programming เป็นอย่างมากในปี 2022 ดังนั้นหากคุณต้องการจ้างพวกเขาอย่าลืมที่จะสอบถามความคุ้นเคยกับภาษา Go และ Go Framework รวมทั้งประสบการณ์ในอุตสาหกรรมต่าง ๆ ที่ผ่านมา

ทั้งนี้ Ethereum ได้เปลี่ยนกลไกฉันทามติจาก Proof-of-Work สู่ Proof-of-Stake ทำให้การเขียน smart contract กำลังเพิ่มมากขึ้นในช่วงท้ายไตรมาสของปี นั่นรวมถึง Golang Developer ก็กำลังจะได้รับความนิยมเพิ่มมากขึ้นเช่นเดียวกัน

ท้ายที่สุดทำไมคุณถึงยังไม่สร้าง Freelance Developer ผู้เชี่ยวชาญผู้ผ่านประสบการณ์มากถึง 5-7 ปีในเรทราคาสบายกระเป๋ากันหล่ะ? รออะไรจ้างเลย!

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments

บทความที่เกี่ยวข้อง

Talance Hiring Guide : Kotlin Developer #11

Kotlin Developer หรือนักพัฒนา Kotlin กำลังได้รับความนิยมอย่างแพร่หลายทั้งในอุตสาหกรรม Mobile Application แบบ Cross-Platf

Jo

02 Nov 2022 | 2 นาทีอ่าน

Talance Hiring Guide : Java Developer #10

Java Developer หรือนักพัฒนาภาษา Java ได้รับความนิยมอย่างแพร่หลายสำหรับการเขียนโค้ดเว็ปแอปพลิเคชัน ซึ่งได้รับความนิยมมายา

Jo

19 Oct 2022 | 2 นาทีอ่าน

Talance Hiring Guide : Swift Developer #8

Swift Developer หรือนักพัฒนาภาษา Swift เป็นสายงานที่ได้รับความนิยมอย่างมากไม่ว่าจะในอดีตหรือปัจจุบัน ด้วยลักษณะของภาษาที

admin

23 Sep 2022 | 2 นาทีอ่าน

Talance Hiring Guide : Scala Developer #7

นักพัฒนา Scala  Developer กำลังเป็นที่นิยมและมาแรงอย่างมากในปี 2022 เนื่องจากเป็นภาษาที่ออกมาเพื่อแก้ไขข้อบกพร่องขอ

admin

24 Aug 2022 | 2 นาทีอ่าน

Talance Hiring Guide : Flutter Developer #6

Flutter Developer กำลังเป็นที่นิยมอย่างมากหลังธุรกิจแพลตฟอร์ม เช่น Mobile Apps กลับมาเติบโตในช่วงการระบาดของโควิด-1

admin

10 Aug 2022 | 2 นาทีอ่าน

Talance Hiring Guide : Unity Developer #5

นักพัฒนา Unity Developer ไม่ได้หายากอย่างที่คิดเพียงแต่คุณอาจจะยังไม่เจอแนวทางการจ้างนักพัฒนาที่ถูกต้อง ซึ่งหากคุณต้องกา