โปรแกรมเมอร์

จากวิกิพีเดีย สารานุกรมเสรี
ข้ามไปที่การนำทาง ข้ามไปที่การค้นหา

นักเขียนโปรแกรมคอมพิวเตอร์
ผู้หญิงสองคนที่ปฏิบัติการ ENIAC (ความละเอียดเต็ม).jpg
Betty JenningsและFran Bilasเป็นส่วนหนึ่งของทีมเขียนโปรแกรมENIAC ชุดแรก
อาชีพ
ชื่อนักเขียนโปรแกรมคอมพิวเตอร์
ประเภทอาชีพ
วิชาชีพ
ภาคกิจกรรม
เทคโนโลยีสารสนเทศ , อุตสาหกรรมซอฟต์แวร์
คำอธิบาย
สมรรถนะการเขียนและแก้จุดบกพร่องรหัสคอมพิวเตอร์
การศึกษาที่จำเป็น
แตกต่างกันไปตั้งแต่การฝึกงานจนถึงระดับปริญญาตรี

โปรแกรมเมอร์คอมพิวเตอร์ซึ่งบางครั้งเรียกว่านักพัฒนาซอฟต์แวร์โปรแกรมเมอร์หรือล่าสุดคือผู้เข้ารหัส (โดยเฉพาะอย่างยิ่งในบริบทที่ไม่เป็นทางการมากขึ้น) คือบุคคลที่สร้างซอฟต์แวร์คอมพิวเตอร์ คำว่าโปรแกรมเมอร์คอมพิวเตอร์สามารถอ้างถึงผู้เชี่ยวชาญในด้านคอมพิวเตอร์ ด้านใดด้านหนึ่ง หรือถึงผู้เชี่ยวชาญทั่วไปที่เขียนโปรแกรมคอมพิวเตอร์

ภาษาคอมพิวเตอร์ที่ใช้บ่อยที่สุดของโปรแกรมเมอร์(เช่นAssembly , C , C++ , C# , JavaScript , Lisp , Python , Java ) อาจนำหน้าคำว่าprogrammer บางคนที่ทำงานด้วย ภาษา โปรแกรมเว็บก็นำหน้าชื่อด้วย เว็บ

ศัพท์เฉพาะ

ไม่มีคำศัพท์ที่เป็นมาตรฐานสำหรับอุตสาหกรรม ดังนั้น "โปรแกรมเมอร์" และ " วิศวกรซอฟต์แวร์ " อาจหมายถึงบทบาทเดียวกันในบริษัทต่างๆ โดยทั่วไปแล้ว ผู้ที่มีตำแหน่งงานเป็น "โปรแกรมเมอร์" หรือ "นักพัฒนาซอฟต์แวร์" อาจมุ่งเน้นที่การใช้ข้อกำหนดโดยละเอียดในโค้ดคอมพิวเตอร์ แก้ไขข้อบกพร่อง และดำเนินการตรวจสอบโค้ด พวกเขาอาจมีปริญญาด้านวิทยาการคอมพิวเตอร์ระดับอนุปริญญาหรืออาจจะเรียนรู้ด้วยตนเองหรือเข้าร่วมหลักสูตรติวเข้มด้าน การเขียนโปรแกรม ผู้ที่มีตำแหน่งงานเป็น " วิศวกรซอฟต์แวร์ " จะต้องเข้าใจ หลัก วิศวกรรมซอฟต์แวร์คณิตศาสตร์ขั้นสูง และวิธีการทางวิทยาศาสตร์และอาจจำเป็นต้องสำเร็จการศึกษาด้านวิศวกรรมซอฟต์แวร์ วิศวกรรมคอมพิวเตอร์หรือวิทยาการคอมพิวเตอร์ บางประเทศจำเป็นต้องมีปริญญาวิศวกรรมที่แท้จริงเรียกว่าวิศวกร ในบริษัทที่สร้างความแตกต่าง วิศวกรซอฟต์แวร์อาจมีความรับผิดชอบในระดับที่กว้างกว่าและสูงกว่า เช่น การออกแบบหรือ "การออกแบบ" โปรแกรม คุณลักษณะ และแพลตฟอร์มใหม่ การจัดการวงจรชีวิตการพัฒนาซอฟต์แวร์รวมถึงการออกแบบ การนำไปใช้ การทดสอบ และการปรับใช้ นำทีมโปรแกรมเมอร์ สื่อสารกับลูกค้าธุรกิจ โปรแกรมเมอร์ และวิศวกรอื่นๆ โดยคำนึงถึงความเสถียรและคุณภาพของระบบ และสำรวจวิธีการพัฒนาซอฟต์แวร์ [1]

ประวัติ

Ada Lovelaceถือเป็นโปรแกรมเมอร์คอมพิวเตอร์คนแรกๆ [2]

อาดา เลิฟเลซเคานท์เตสและนักคณิตศาสตร์ชาวอังกฤษมักถูกมองว่าเป็นโปรแกรมเมอร์คอมพิวเตอร์คนแรก เนื่องจากเธอเป็นคนแรกที่เผยแพร่ส่วนหนึ่งของโปรแกรม (โดยเฉพาะอัลกอริทึม ) ที่มีจุดประสงค์เพื่อนำไปใช้กับ เครื่องมือ วิเคราะห์ของCharles Babbageในเดือนตุลาคม ค.ศ. 1842 อัลกอริทึมถูกนำมาใช้ เพื่อคำนวณตัวเลขเบอร์นูลลี [2] เนื่องจากเครื่องจักรของ Babbage ไม่เคยสร้างมาตรฐานให้สำเร็จในสมัยของเลิฟเลซ เธอจึงไม่มีโอกาสได้เห็นอัลกอริธึมทำงานจริง

คนแรกที่รันโปรแกรมบนคอมพิวเตอร์อิเล็กทรอนิกส์ที่ใช้งานได้และทันสมัยคือKonrad Zuse นักวิทยาศาสตร์คอมพิวเตอร์ ในปี 1941

ทีม เขียนโปรแกรม ENIACซึ่งประกอบด้วยKay McNulty , Betty Jennings , Betty Snyder , Marlyn Wescoff , Fran BilasและRuth Lichtermanได้รับการยกย่องให้เป็นโปรแกรมเมอร์คอมพิวเตอร์รายแรกๆ [3] [4]

อุตสาหกรรมซอฟต์แวร์

บริษัทแรกที่ก่อตั้งขึ้นเพื่อจัดหาผลิตภัณฑ์และบริการซอฟต์แวร์โดยเฉพาะคือบริษัทComputer Usage ในปี 1955 ก่อนหน้านั้น คอมพิวเตอร์ถูกตั้งโปรแกรมโดยลูกค้าหรือผู้ผลิตคอมพิวเตอร์เชิงพาณิชย์เพียงไม่กี่รายในสมัย นั้นเช่นSperry RandและIBM [5]

อุตสาหกรรมซอฟต์แวร์ขยายตัวในช่วงต้นทศวรรษ 1960 เกือบจะในทันทีหลังจากที่คอมพิวเตอร์ขายครั้งแรกในปริมาณการผลิตจำนวนมาก มหาวิทยาลัย รัฐบาล และธุรกิจต่างสร้างความต้องการซอฟต์แวร์ หลายโปรแกรมเหล่านี้เขียนขึ้นเองโดยเจ้าหน้าที่โปรแกรมเมอร์ประจำ บางส่วนถูกแจกจ่ายระหว่างผู้ใช้เครื่องหนึ่งๆ โดยไม่มีค่าใช้จ่าย ในขณะที่บางเครื่องถูกขายในเชิงพาณิชย์ บริษัทอื่นๆ เช่นComputer Sciences Corporation (ก่อตั้งขึ้นในปี 2502) ก็เริ่มเติบโตเช่นกัน ในไม่ช้าผู้ผลิตคอมพิวเตอร์ก็เริ่มรวมระบบปฏิบัติการซอฟต์แวร์ระบบและสภาพแวดล้อมในการเขียนโปรแกรมเข้ากับเครื่องของตน IBM 1620มาพร้อมกับ 1620 Symbolic Programming System และฟอร์ท ราน . [6]

อุตสาหกรรมขยายตัวอย่างมากตามการเพิ่มขึ้นของคอมพิวเตอร์ส่วนบุคคล (PC) ในช่วงกลางทศวรรษ 1970 ซึ่งนำคอมพิวเตอร์มาสู่พนักงานออฟฟิศโดยเฉลี่ย ในปีถัดมา พีซียังช่วยสร้างตลาดที่เติบโตอย่างต่อเนื่องสำหรับเกม แอพพลิเคชั่น และซอฟต์แวร์ยูทิลิตี้ ส่งผลให้มีความต้องการนักพัฒนาซอฟต์แวร์เพิ่มขึ้นในช่วงเวลานั้น [7]

ลักษณะงาน

โปรแกรมเมอร์คอมพิวเตอร์เขียน ทดสอบตรวจแก้จุดบกพร่องและรักษาคำแนะนำโดยละเอียด เรียกว่าโปรแกรมคอมพิวเตอร์ซึ่งคอมพิวเตอร์ต้องปฏิบัติตามเพื่อทำหน้าที่ของตน โปรแกรมเมอร์ยังคิด ออกแบบ และทดสอบโครงสร้างเชิงตรรกะเพื่อแก้ปัญหาด้วยคอมพิวเตอร์ นวัตกรรมทางเทคนิคมากมายในการเขียนโปรแกรม — เทคโนโลยีคอมพิวเตอร์ขั้นสูงและภาษาใหม่ที่ซับซ้อนและเครื่องมือการเขียนโปรแกรม — ได้กำหนดบทบาทของโปรแกรมเมอร์ใหม่และยกระดับงานเขียนโปรแกรมส่วนใหญ่ที่ทำอยู่ในปัจจุบัน ตำแหน่งงานและคำอธิบายอาจแตกต่างกันไปขึ้นอยู่กับองค์กร [8]

โปรแกรมเมอร์ทำงานในการตั้งค่าต่างๆ มากมาย รวมถึง แผนก เทคโนโลยีสารสนเทศ ขององค์กร (IT) บริษัทซอฟต์แวร์ขนาดใหญ่ บริษัทบริการขนาดเล็ก และหน่วยงานภาครัฐทุกขนาด โปรแกรมเมอร์มืออาชีพหลายคนยังทำงานให้กับบริษัทที่ปรึกษาที่ไซต์ของลูกค้าในฐานะผู้รับเหมา ไม่จำเป็นต้องมี ใบอนุญาตในการทำงานเป็นโปรแกรมเมอร์ แม้ว่าโปรแกรมเมอร์จะ มี ใบรับรองระดับมืออาชีพก็ตาม การเขียนโปรแกรมถือเป็นอาชีพอย่าง แพร่หลาย (แม้ว่าเจ้าหน้าที่[ ใคร? [8]

งานของโปรแกรมเมอร์แตกต่างกันไปขึ้นอยู่กับประเภทของธุรกิจที่พวกเขาเขียนโปรแกรม ตัวอย่างเช่น คำแนะนำที่เกี่ยวข้องในการอัปเดตบันทึกทางการเงินนั้นแตกต่างอย่างมากจากคำแนะนำที่จำเป็นในการทำซ้ำเงื่อนไขบนเครื่องบินสำหรับการฝึกนักบินในเครื่องจำลอง การ บิน โปรแกรมธรรมดาสามารถเขียนได้ภายในเวลาไม่กี่ชั่วโมง งานที่ซับซ้อนกว่าอาจต้องใช้เวลามากกว่าหนึ่งปีในขณะที่งานอื่นไม่ถือว่า 'สมบูรณ์' แต่จะได้รับการปรับปรุงอย่างต่อเนื่องตราบใดที่ยังใช้งานอยู่ ในกรณีส่วนใหญ่ โปรแกรมเมอร์หลายคนทำงานร่วมกันเป็นทีมภายใต้การดูแลของโปรแกรมเมอร์อาวุโส [9]

ประเภทของซอฟต์แวร์

โปรแกรมแก้ไขโปรแกรม หรือที่เรียกว่าโปรแกรมแก้ไขซอร์สโค้ดคือโปรแกรมแก้ไขข้อความที่ออกแบบมาโดยเฉพาะสำหรับโปรแกรมเมอร์หรือนักพัฒนาในการเขียนซอร์สโค้ดของแอพพลิเคชันหรือโปรแกรม โปรแกรมแก้ไขเหล่านี้ส่วนใหญ่มีคุณลักษณะที่เป็นประโยชน์สำหรับโปรแกรมเมอร์ ซึ่งอาจรวมถึงการเน้นไวยากรณ์ สี การเยื้องอัตโนมัติ การเติมข้อความอัตโนมัติ การจับคู่วงเล็บเหลี่ยม การตรวจสอบไวยากรณ์และอนุญาตให้ใช้ปลั๊กอิน คุณลักษณะเหล่านี้ช่วยผู้ใช้ในระหว่างการเข้ารหัส การดีบักและการทดสอบ [10]

โลกาภิวัตน์

การเปลี่ยนแปลงของตลาดในสหราชอาณาจักร

จากรายงานของBBC Newsพบว่า 17% ของนักศึกษาวิทยาการคอมพิวเตอร์ไม่สามารถหางานทำในสาขาของตนได้ภายใน 6 เดือนหลังจากสำเร็จการศึกษาในปี 2552 ซึ่งเป็นอัตราสูงสุดของวิชาในมหาวิทยาลัยที่ทำการสำรวจ ในขณะที่ 0% ของนักศึกษาแพทย์ตกงานในการสำรวจเดียวกัน (11)

การเปลี่ยนแปลงของตลาดในสหรัฐอเมริกา

หลังจากการล่มสลายของฟองสบู่ดอทคอม (พ.ศ. 2542-2544) และภาวะถดถอยครั้งใหญ่ (พ.ศ. 2551) โปรแกรมเมอร์ชาวอเมริกันจำนวนมากถูกทิ้งไว้โดยไม่มีงานทำหรือได้รับค่าแรงที่ต่ำกว่า [12] [13]นอกจากนี้ การลงทะเบียนเรียนในระดับที่เกี่ยวข้องกับคอมพิวเตอร์และระดับ STEM อื่นๆ (การขัดสี STEM) [14]ในสหรัฐอเมริกาลดลงเป็นเวลาหลายปี โดยเฉพาะสำหรับผู้หญิง[15]ซึ่งตาม Beaubouef และ Mason [16]อาจเนื่องมาจากการขาดความสนใจทั่วไปในด้านวิทยาศาสตร์และคณิตศาสตร์ และด้วยความกลัวที่ชัดเจนว่าการเขียนโปรแกรมจะอยู่ภายใต้แรงกดดันเช่นเดียวกับอาชีพการผลิตและเกษตรกรรม สำหรับโปรแกรมเมอร์สำนักงานสถิติแรงงานสหรัฐ(BLS) อาชีว Outlook คาดการณ์การลดลงร้อยละ 7 จาก 2016 เป็น 2026 ลดลงอีกร้อยละ 9 จาก 2019 เป็น 2029 และการลดลงร้อยละ 10 จาก 2020 เป็น 2030 [17]เนื่องจากการเขียนโปรแกรมคอมพิวเตอร์สามารถทำได้จากที่ใดก็ได้ใน ทั่วโลก บริษัทบางครั้งจ้างโปรแกรมเมอร์ในประเทศที่ค่าจ้างต่ำกว่า [17] อย่างไรก็ตาม สำหรับนักพัฒนาซอฟต์แวร์ โครงการ BLS สำหรับปี 2019 ถึงปี 2029 มีการจ้างงานเพิ่มขึ้น 22% จาก 1,469,200 เป็น 1,785,200 ตำแหน่ง โดยมีฐานเงินเดือนเฉลี่ยอยู่ที่ $110,000 ต่อปี การคาดคะเนนี้ต่ำกว่าปี 2010 ถึงปี 2020 ที่คาดการณ์ไว้ว่าจะเพิ่มขึ้น 30% สำหรับนักพัฒนาซอฟต์แวร์ [18] [19] [20]แม้ว่าความแตกต่างจะค่อนข้างคลุมเครือ แต่นักพัฒนาซอฟต์แวร์มีส่วนร่วมในแง่มุมต่างๆ ที่กว้างขึ้นของการพัฒนาแอปพลิเคชันและโดยทั่วไปแล้วจะมีทักษะสูงกว่าโปรแกรมเมอร์ ทำให้การเอาท์ซอร์สมีความเสี่ยงน้อยลง [21] [22]อีกเหตุผลหนึ่งที่ทำให้โปรแกรมเมอร์ลดลงคือทักษะของพวกเขาถูกรวมเข้ากับอาชีพอื่น ๆ เช่นนักพัฒนา เนื่องจากนายจ้างเพิ่มข้อกำหนดสำหรับตำแหน่งเมื่อเวลาผ่านไป

ดูเพิ่มเติม

อ้างอิง

  1. ^ [1] [2] [3] [4]
  2. อรรถเป็น Fuegi เจ.; ฟรานซิส เจ. (ตุลาคม–ธันวาคม 2546). "Lovelace & Babbage และการสร้าง 'โน้ต' ในปีพ. ศ. 2386". IEEE Annals of the History of Computing . 25 (4): 16–26. doi : 10.1109/MAHC.2003.1253887 .
  3. ^ "อนุสรณ์สถาน" . Eniacprogrammers.org . สืบค้นเมื่อ13 มีนาคม 2021 .
  4. ^ "ข่าวเอบีซี: สารคดีคอมพิวเตอร์เรื่องแรกที่สร้างแรงบันดาลใจ " เอบีซีนิวส์.go.com 4 ธันวาคม 2550 . สืบค้นเมื่อ13 มีนาคม 2021 .
  5. เอลเมอร์ ซี. คูบี (ฤดูร้อน พ.ศ. 2537) "ความทรงจำของบริษัทซอฟต์แวร์แห่งแรก". พงศาวดารของประวัติศาสตร์คอมพิวเตอร์ 16 (2): 65–71. ดอย : 10.1109/85.279238 . S2CID 5733812 . 
  6. ^ "คลังเก็บไอบีเอ็ม: 1620 ระบบประมวลผลข้อมูล" . www.ibm.comครับ 23 มกราคม 2546 . สืบค้นเมื่อ17 มีนาคม 2021 .
  7. ^ สำนัก สำมะโนสหรัฐ. "อาชีพด้านเทคโนโลยีสารสนเทศ" . สำนักงานสำมะโนสหรัฐ. สืบค้นเมื่อ21 มีนาคมพ.ศ. 2564 .
  8. ^ a b "โปรแกรมเมอร์คอมพิวเตอร์ : คู่มืออาชีวศึกษา: : สำนักงานสถิติแรงงานสหรัฐ" . www.bls.gov . สืบค้นเมื่อ13 มีนาคม 2021 .
  9. ^ "โปรแกรมเมอร์คอมพิวเตอร์ | ComputerScience.org" . รับการศึกษาที่โลกต้องการ | ComputerScience.org . 13 ตุลาคม 2563 . สืบค้นเมื่อ20 กันยายนพ.ศ. 2564 .
  10. ^ "BBC Bitesize - GCSE Computer Science - ซอฟต์แวร์การเขียนโปรแกรมและ IDE - Revision 4 " www.bbc.co.uk ครับ สืบค้นเมื่อ13 มีนาคม 2021 .
  11. แชงเคิลแมน, มาร์ติน (1 กรกฎาคม 2010) "'หนึ่งใน 10' ผู้สำเร็จการศึกษาจากสหราชอาณาจักรว่างงาน" . BBC News . สืบค้นเมื่อ13 มีนาคมพ.ศ. 2564
  12. ^ แมน อามาร์; นูเนส, โทนี่ (สิงหาคม 2552). "หลังฟองสบู่ดอทคอม: การจ้างงานและค่าจ้างไฮเทคในซิลิคอนแวลลีย์ในปี 2544 และ 2551" (PDF ) รายงานระดับภูมิภาค สำนักงานสถิติแรงงานสหรัฐ : 1–8 . สืบค้นเมื่อ13 มีนาคม 2021 .
  13. ^ "วิกฤตสะเต็มเป็นตำนาน" . 30 สิงหาคม 2556.
  14. ^ "STEM Attrition: เส้นทางของนักศึกษาวิทยาลัยเข้าและออกจากสาขา STEM " nces.ed.gov _ 26 พฤศจิกายน 2556 . สืบค้นเมื่อ13 มีนาคม 2021 .
  15. ^ "พอร์ทัลนักพัฒนาของ hp | HP International Women's Week: Women in Computer Science ลดลงตั้งแต่ปี 1980 " Developers.hp.com . สืบค้นเมื่อ13 มีนาคม 2021 .
  16. ^ โบบูฟ เทเรซ่า; เมสัน, จอห์น (มิถุนายน 2548). "ทำไมอัตราการออกจากงานสูงสำหรับนักศึกษาวิทยาการคอมพิวเตอร์: ความคิดและการสังเกตบางอย่าง". กระดาน ข่าวACM SIGCSE 37 (2): 103–106. ดอย : 10.1145/1083431.1083474 . S2CID 207157501 . 
  17. ^ a b "โปรแกรมเมอร์คอมพิวเตอร์ : คู่มืออาชีวศึกษา: : สำนักงานสถิติแรงงานสหรัฐ" .
  18. ^ "นักพัฒนาซอฟต์แวร์ นักวิเคราะห์การประกันคุณภาพ และผู้ทดสอบ: คู่มือ Outlook อาชีว: สำนักงานสถิติแรงงานสหรัฐ " www.bls.gov . สืบค้นเมื่อ 29 กรกฎาคม 2021
  19. ^ "นักพัฒนาซอฟต์แวร์ นักวิเคราะห์การประกันคุณภาพ และผู้ทดสอบ : คู่มือ Outlook อาชีว: : สำนักงานสถิติแรงงานสหรัฐ " เก็บจากต้นฉบับเมื่อ 1 กันยายน 2556
  20. ^ "วิกฤตสะเต็มเป็นตำนาน" . 30 สิงหาคม 2556.
  21. ^ "โปรแกรมเมอร์คอมพิวเตอร์ กับ นักพัฒนาซอฟต์แวร์: ถอดรหัสความแตกต่าง " www.rasmussen.edu . สืบค้นเมื่อ 29 กรกฎาคม 2021
  22. ^ "การเปรียบเทียบสองอาชีพหลัก: นักพัฒนาซอฟต์แวร์กับโปรแกรมเมอร์ " online.maryville.edu . 31 กรกฎาคม 2563 . สืบค้นเมื่อ 29 กรกฎาคม 2021

อ่านเพิ่มเติม

  • Weinberg, Gerald M. , จิตวิทยาการเขียนโปรแกรมคอมพิวเตอร์ , New York: Van Nostrand Reinhold, 1971
  • การศึกษาเชิงประสบการณ์เกี่ยวกับธรรมชาติของงานเขียนโปรแกรม: Lucas, Rob. "Dreaming in Code" New Left Review 62 มีนาคม–เมษายน 2553 หน้า 125–132
  • ทอมป์สัน, ไคลฟ์ (2019). Coders: การสร้างเผ่าใหม่และการสร้างโลก เพนกวินกด ISBN 978-0735220560.

ลิงค์ภายนอก