การพัฒนาปลายด้านหลังคืออะไร?
คิดเกี่ยวกับการย้ายเข้าสู่เขตการเจริญรุ่งเรืองของการพัฒนาเว็บ?
ดังที่คุณทราบอยู่แล้วมีนักพัฒนาเว็บสามประเภท: 44
- Front-end
- ปลายด้านหลัง
- และกองเต็ม (ซึ่งรวมทั้ง)
ด้านล่างนี้ผมจะเน้นเฉพาะผู้พัฒนาแบ็กเอนด์โดยดูจากสิ่งที่พวกเขาทำทักษะที่จำเป็นในการเป็นนักพัฒนาซอฟต์แวร์แบ็กเอนด์และวิธีที่คุณจะได้รับในที่สุด
นักพัฒนาซอฟต์แวร์ด้านหลังทำอะไรได้บ้าง?
นักพัฒนาซอฟต์แวร์ Back end มีหน้าที่รับผิดชอบในการสร้าง "ฝั่งเซิร์ฟเวอร์" ในแอ็พพลิเคชันเว็บ
ทุกสิ่งที่เกิดขึ้นก่อนที่จะกดปุ่มเบราว์เซอร์ของคุณซึ่งเรียกว่า "ฝั่งไคลเอ็นต์" (โดยทั่วไป นักพัฒนาซอฟต์แวร์หน้า จะเป็นผู้รับผิดชอบในการสร้างประสบการณ์ในฝั่งไคลเอ็นต์)
ในขณะที่นักพัฒนาแบ็กเอนด์มุ่งเน้นที่การทำงานด้านบนของแอ็พพลิเคชันเว็บแอ็พพลิเคชันพวกเขายังคงทำงานควบคู่ไปกับนักพัฒนาหน้าเว็บด้วยการหันมาใช้องค์ประกอบแอ็พพลิเคชันเว็บภายนอกด้านตรรกะฝั่งเซิร์ฟเวอร์
นักพัฒนาแบ็กเอนด์จะเพิ่มตรรกะนี้โดยใช้ภาษาสคริปต์ฝั่งเซิร์ฟเวอร์เช่น Ruby หรือ PHP
นอกเหนือจากการใช้งานเว็บแอ็พพลิเคชันแล้วนักพัฒนาแบ็กเอนด์ยังมีหน้าที่ในการเพิ่มประสิทธิภาพแอพพลิเคชันสำหรับความเร็วและประสิทธิภาพ
นอกจากนี้นักพัฒนาแบ็กเอนด์มักสร้างโซลูชันการจัดเก็บข้อมูลด้วยฐานข้อมูล
ฐานข้อมูล เป็นส่วนประกอบที่สำคัญสำหรับแอ็พพลิเคชันเว็บทั้งหมดเพื่อเก็บข้อมูล (เช่นผู้ใช้ความคิดเห็นโพสต์ ฯลฯ ) ฐานข้อมูลทั่วไป ได้แก่ MySQL, MongoDB และ PostgreSQL
ใครเป็นผู้พัฒนางานด้านหลังให้ทำงานด้วย?
นักพัฒนาซอฟต์แวร์แบ็กเอนด์มักทำงานร่วมกับทีมอื่น
แม้แต่ภายในทีมที่มีขนาดใหญ่มักมีการออกแบบส่วนหน้า (วิศวกร สถาปนิก UX ฯลฯ ) และทีมงานด้านหลัง
ทีมแบ็กเอนด์จะทำงานร่วมกับวิศวกรซอฟต์แวร์ หนึ่งสามารถทำเพียงการพัฒนา REST API หรือที่เกี่ยวข้อง อีกอย่างหนึ่งก็คือการประกันคุณภาพ (QA) วิศวกร
ที่คุณเห็นแม้ภายในแบ็กเอนด์มีหน้าที่แตกต่างกัน
ทักษะ / เทคโนโลยีที่ฉันต้องรู้เพื่อเป็นนักพัฒนาซอฟต์แวร์ให้กลับมา?
การใช้เทมเพลตคำอธิบายงานรวมของแบ็กเอนด์ทั้งหมดเป็นข้อมูลอ้างอิงด้านล่างคือทักษะหลักและเทคโนโลยีที่ผู้พัฒนาแบ็กเอนด์ต้องรู้
- ความรู้ความชำนาญของภาษาโปรแกรม / กรอบการทำงานด้านหลังที่ บริษัท กำหนดขึ้นอยู่
- ความเข้าใจเกี่ยวกับ เทคโนโลยีเว็บหน้าเว็บ เช่น HTML, CSS และ JavaScript (เพื่อสื่อสารกับสมาชิกในทีมที่ส่วนหน้า)
- ความสามารถในการจัดการสภาพแวดล้อมของโฮสติ้งรวมทั้งการจัดการฐานข้อมูลรวมถึงการปรับขนาดแอพพลิเคชันเพื่อจัดการกับการเปลี่ยนแปลงโหลด
- ความรู้เกี่ยวกับการเข้าถึงและการปฏิบัติตามข้อกำหนดด้านความปลอดภัย
- ประสบการณ์ในการควบคุมเวอร์ชันเช่น Git
ฉันสามารถเรียนรู้ทักษะการจบหลังเหล่านี้ได้ที่ไหน
นักพัฒนาแบ็กเอนด์ส่วนใหญ่และผู้ที่ทำงานในทีมแบ็กเอนด์มีการฝึกอบรมแบบเป็นทางการด้วยวิธีนี้หรืออีกรูปแบบหนึ่ง AKA ปริญญาวิทยาศาสตร์คอมพิวเตอร์ (CS)
เมื่อเทียบกับนักพัฒนาหน้าเว็บนักพัฒนาซอฟต์แวร์ด้านหลังอาจต้องใช้สิ่งที่เป็นนามธรรมมากขึ้น อาจเป็นข้อมูลการทำเหมืองการเขียนขั้นตอนวิธีนามธรรมและอื่น ๆ นั่นเป็นเหตุผลที่การศึกษาระดับปริญญา CS เป็นเรื่องที่มีประโยชน์
อย่างไรก็ตามถ้าคุณอยู่นอกเหนือจากปีที่วิทยาลัยมีทั้งหลักสูตรสำหรับคน (หรือค่ายฝึกฝน) และตัวเลือกออนไลน์ที่พร้อมใช้งานเพื่อเตรียมพร้อมสำหรับการพัฒนาอาชีพด้านแบ็กเอนด์
หลักสูตรพัฒนาผู้สนับสนุนในคน
แน่นอนว่าเมื่อทำแบบเรียนแบบตัวต่อตัวก็คือทุกสิ่งทุกอย่าง
วิธีที่ดีที่สุดในการหาหลักสูตรการพัฒนาเบื้องหลังคนใกล้คุณคือการทำวิจัยออนไลน์
อย่างไรก็ตามนี่เป็นคำแนะนำสองข้อเพื่อให้ได้ลูกกลิ้ง:
- การประชุมสมัชชา มีหลักสูตรการพัฒนาด้านหลัง 10 สัปดาห์
- Betamore มีหลักสูตรแบ็กเอนด์ 12 สัปดาห์ (ซึ่งเป็น part-time)
ค่าย boot / หลักสูตรสำหรับคนไม่ได้ราคาถูก แต่ราคาไม่แพงกว่าระดับ CS ที่เป็นทางการ (Plus, แตกต่างจากชั้นเรียนออนไลน์คุณมีความหรูหราของความสามารถในการโต้ตอบกับ peers และผู้สอน.)
ตัวเลือกการเรียนรู้ออนไลน์แบ็กเอนด์ (หรือเต็มกอง)
ไม่ใช่เรื่องง่ายที่จะหาหลักสูตรออนไลน์แบบแบ็กเอนด์ ส่วนใหญ่สอน stack เต็ม - ดังนั้นทั้งด้านหน้าและส่วนหลัง อย่างไรก็ตามนี่คือบางหลักสูตรออนไลน์ที่จะต้องพิจารณา:
- Udacity มีการจัดระดับ nano แบบเต็มรูปแบบโดยเน้นการพัฒนาแบ็กเอนด์
- Bloc.io มีหลักสูตรออนไลน์แบบสแต็คเต็มรูปแบบพร้อมด้วยการให้คำปรึกษาแบบตัวต่อตัว
- Udemy มีความหลากหลายของตัวเลือกหลักสูตรออนไลน์รวมทั้งการพัฒนาแบ็กเอนด์ (ตรวจสอบให้แน่ใจเพื่ออ่านความคิดเห็นเกี่ยวกับ Udemy ก่อนที่จะลงทะเบียน)
ข้อสรุป
ในที่สุดนักพัฒนาซอฟต์แวร์แบ็กเอนด์มีบทบาทสำคัญในทีมพัฒนาเว็บ พวกเขามีหน้าที่รับผิดชอบในการจัดการข้อมูลและมั่นใจได้ว่าเนื้อหาจะถูกส่งไปยังส่วนหน้า
ถ้าคุณรู้จักใครบางคนที่คิดจะก้าวไปสู่การพัฒนาเว็บโปรดแชร์บทความนี้กับพวกเขา