วิศวกร DevOps เป็นผู้เชี่ยวชาญจากหลากหลายสาขาวิชาที่รู้วิธีทำให้กระบวนการเป็นอัตโนมัติ และรู้วิธีการทำงานของนักพัฒนา QA และผู้จัดการ พวกเขารู้วิธีการเขียนโปรแกรม เชี่ยวชาญเครื่องมือที่ซับซ้อนได้อย่างรวดเร็ว และไม่สูญเสียเมื่อเผชิญกับงานที่ไม่คุ้นเคย มีวิศวกร DevOps เพียงไม่กี่คน - พวกเขายินดีจ่ายเงิน 200-300 รูเบิล แต่ยังมีตำแหน่งงานว่างอีกมากมาย
Dmitry Kuzmin อธิบายว่า DevOps ทำอะไรกันแน่ และสิ่งที่คุณต้องศึกษาเพื่อสมัครตำแหน่งดังกล่าว โบนัส - ลิงก์สำคัญไปยังหนังสือ วิดีโอ ช่อง และชุมชนมืออาชีพ
วิศวกร DevOps ทำอะไร?
ในสถานการณ์ DevOps สิ่งสำคัญคือต้องไม่สับสนกับข้อกำหนด ความจริงก็คือ DevOps ไม่ใช่กิจกรรมเฉพาะ แต่เป็นปรัชญาทางวิชาชีพ เป็นวิธีการที่ช่วยให้นักพัฒนา ผู้ทดสอบ และผู้ดูแลระบบทำงานได้เร็วขึ้นและมีประสิทธิภาพมากขึ้นผ่านระบบอัตโนมัติและความราบรื่น
ดังนั้น วิศวกร DevOps จึงเป็นผู้เชี่ยวชาญที่นำวิธีการนี้ไปใช้ในกระบวนการทำงาน:
- ในขั้นตอนการวางแผน วิศวกร DevOps จะช่วยตัดสินใจว่าแอปพลิเคชันจะใช้สถาปัตยกรรมใด จะขยายขนาดอย่างไร และเลือกระบบการจัดการประสาน
- จากนั้นเขาก็ตั้งค่าเซิร์ฟเวอร์ การตรวจสอบและการอัพโหลดโค้ดอัตโนมัติ และตรวจสอบสภาพแวดล้อม
- จากนั้นจะทำการทดสอบและแก้ไขปัญหาการปรับใช้โดยอัตโนมัติ
- หลังการเปิดตัว การรวบรวมคำติชมจากผู้ใช้และดำเนินการปรับปรุงเป็นสิ่งสำคัญ DevOps ทำให้แน่ใจว่าผู้ใช้จะไม่สังเกตเห็นการปรับปรุงเหล่านี้ และกระบวนการอัปเดตจะดำเนินไปอย่างต่อเนื่อง
- และในขณะเดียวกันก็แก้ปัญหาต่างๆ มากมายที่ช่วยปรับปรุงระบบการทำงานของนักพัฒนา QA ผู้ดูแลระบบ และผู้จัดการ
ทุกสิ่งที่เขียนไว้ข้างต้นเกิดขึ้นในโครงการที่ใกล้เคียงกับอุดมคติ ในโลกแห่งความเป็นจริง คุณต้องเริ่มโปรเจ็กต์ที่พลาดการวางแผน สถาปัตยกรรมผิด และคุณเริ่มคิดถึงระบบอัตโนมัติเมื่อโปรเจ็กต์ทั้งหมดหยุดลง และการทำความเข้าใจปัญหาเหล่านี้ การแก้ปัญหาและทำให้ทุกอย่างได้ผลเป็นทักษะสำคัญของผู้เชี่ยวชาญ DevOps
มีความสับสนในตลาดผู้มีความสามารถ บางครั้งธุรกิจกำลังมองหาวิศวกร DevOps ในตำแหน่งวิศวกรระบบ วิศวกรก่อสร้าง หรือบุคคลอื่น ความรับผิดชอบยังเปลี่ยนแปลงไปตามขนาดของบริษัทและทิศทาง - บางแห่งพวกเขากำลังมองหาบุคคลที่ให้คำปรึกษา บางแห่งพวกเขาถูกขอให้ทำให้ทุกอย่างเป็นอัตโนมัติ และบางแห่งพวกเขาจำเป็นต้องทำหน้าที่ขั้นสูงของผู้ดูแลระบบที่รู้วิธีการเขียนโปรแกรม
สิ่งที่คุณต้องเริ่มต้นในอาชีพ
การเข้าสู่วิชาชีพต้องมีการเตรียมการเบื้องต้น คุณจะไม่สามารถเรียนหลักสูตรตั้งแต่เริ่มต้นโดยไม่เข้าใจอะไรเกี่ยวกับไอที และเรียนรู้จนถึงระดับจูเนียร์ได้ จำเป็นต้องมีพื้นฐานทางเทคนิค:
- เหมาะอย่างยิ่งหากคุณทำงานเป็นเวลาหกเดือนขึ้นไปในฐานะผู้ดูแลระบบ ผู้เชี่ยวชาญด้านการปฏิบัติงาน หรือการทดสอบ หรืออย่างน้อยก็มีความคิดว่าแอปพลิเคชันเริ่มต้นอย่างไร ในสภาพแวดล้อมใดที่แอปพลิเคชันสามารถพัฒนาได้ และควรทำอย่างไรหากคุณเห็นข้อผิดพลาด หากคุณไม่มีประสบการณ์การทำงาน ให้เรียนหลักสูตรการดูแลระบบ Linux โดยทำซ้ำทุกสิ่งที่เกิดขึ้นบนเครื่องที่บ้านของคุณ
- ทำความเข้าใจวิธีการทำงานของเทคโนโลยีเครือข่าย - เรียนรู้การติดตั้ง กำหนดค่า และจัดการเครือข่ายท้องถิ่นและบริเวณกว้าง
- ดูว่าการเขียนโปรแกรมทำงานอย่างไรและอย่างไร - เขียนสคริปต์สองสามตัวใน Python หรือ Go พยายามทำความเข้าใจหลักการของ OOP (Object-Oriented Programming) อ่านเกี่ยวกับวงจรการพัฒนาผลิตภัณฑ์ทั่วไป
- ความรู้ภาษาอังกฤษเชิงเทคนิคจะมีประโยชน์ - ไม่จำเป็นต้องสื่อสารในหัวข้อฟรี แต่ก็เพียงพอที่จะอ่านเอกสารและอินเทอร์เฟซได้
ไม่จำเป็นต้องรู้ทุกรายการโดยละเอียด เพื่อเริ่มเรียนรู้ DevOps ระดับการฝึกอบรมขั้นต่ำก็เพียงพอแล้ว หากคุณมีพื้นฐานด้านเทคนิค ลองลงทะเบียนเรียนในหลักสูตรต่างๆ
สิ่งที่ DevOps ควรรู้
วิศวกร DevOps ที่ดีคือผู้เชี่ยวชาญจากหลากหลายสาขาวิชาและมีทัศนคติที่กว้างมาก เพื่อให้ทำงานได้อย่างประสบความสำเร็จ คุณจะต้องเข้าใจด้านไอทีหลายด้านพร้อมกัน
ออกแบบ
DevOps จะเขียนสคริปต์ที่จะช่วยให้นักพัฒนาติดตั้งโค้ดบนเซิร์ฟเวอร์ จะสร้างโปรแกรมที่ทดสอบการตอบสนองของฐานข้อมูล “ได้ทันที” จะเขียนแอปพลิเคชันเพื่อควบคุมเวอร์ชัน สุดท้ายนี้ เพียงสังเกตปัญหาการพัฒนาที่อาจเกิดขึ้นซึ่งอาจปรากฏบนเซิร์ฟเวอร์
ผู้เชี่ยวชาญ DevOps ที่แข็งแกร่งรู้หลายภาษาที่เหมาะสำหรับระบบอัตโนมัติ เขาไม่เข้าใจสิ่งเหล่านี้อย่างละเอียด แต่เขาสามารถเขียนโปรแกรมขนาดเล็กหรืออ่านโค้ดของคนอื่นได้อย่างรวดเร็ว หากคุณไม่เคยพบกับการพัฒนามาก่อน ให้เริ่มต้นด้วย Python ซึ่งมีไวยากรณ์ง่ายๆ ทำงานกับเทคโนโลยีคลาวด์ได้ง่าย และมีเอกสารประกอบและไลบรารีมากมาย
ระบบปฏิบัติการ
เป็นไปไม่ได้ที่จะทราบความสามารถทั้งหมดของแต่ละเวอร์ชันของแต่ละระบบ คุณสามารถใช้เวลาหลายพันชั่วโมงในการฝึกอบรมดังกล่าว และจะไม่มีประโยชน์อะไร DevOps ที่ดีจะเข้าใจหลักการทั่วไปของการทำงานบน OS ต่างๆ แทน แม้ว่าเมื่อพิจารณาจากการกล่าวถึงตำแหน่งงานว่าง แต่ส่วนใหญ่ตอนนี้ทำงานใน Linux
วิศวกรที่ดีจะเข้าใจว่าระบบใดดีที่สุดในการปรับใช้โปรเจ็กต์ เครื่องมือใดที่จะใช้ และข้อผิดพลาดที่อาจเกิดขึ้นระหว่างการใช้งานหรือการปฏิบัติงาน
เมฆ
ตลาดเทคโนโลยีคลาวด์
ข้อกำหนดมาตรฐานสำหรับวิศวกรมักประกอบด้วย GCP, AWS และ Azure
ซึ่งรวมถึงความเชี่ยวชาญในเครื่องมือ CI/CD โดยทั่วไปแล้ว Jenkins ใช้สำหรับการรวมอย่างต่อเนื่อง แต่ระบบอะนาล็อกก็คุ้มค่าที่จะลองใช้ มีมากมายเช่น Buddy, TeamCity และ Gitlab CI การศึกษา Terraform จะมีประโยชน์ - เป็นเครื่องมือประกาศที่ช่วยให้คุณตั้งค่าและกำหนดค่าโครงสร้างพื้นฐานในระบบคลาวด์จากระยะไกล และ Packer ซึ่งจำเป็นสำหรับการสร้างอิมเมจ OS โดยอัตโนมัติ.
ระบบประสานและไมโครเซอร์วิส
สถาปัตยกรรมไมโครเซอร์วิสมีข้อดีหลายประการ ได้แก่ ความเสถียร ความสามารถในการปรับขนาดได้อย่างรวดเร็ว ลดความซับซ้อน และการนำกลับมาใช้ใหม่ DevOps เข้าใจวิธีการทำงานของไมโครเซอร์วิสและสามารถคาดการณ์ปัญหาที่อาจเกิดขึ้นได้
รู้จัก Docker และ Kubernetes เป็นอย่างดี เข้าใจวิธีการทำงานของคอนเทนเนอร์ วิธีสร้างระบบ เพื่อให้คุณสามารถปิดการใช้งานบางส่วนได้โดยไม่มีผลกระทบต่อระบบโดยรวม ตัวอย่างเช่น เขาสามารถสร้างคลัสเตอร์ Kubernetes โดยใช้ Ansible
DevOps ในอนาคตควรลองทำอะไรอีกบ้าง
รายการเครื่องมือที่เป็นประโยชน์สำหรับวิศวกร DevOps มีมากมายไม่รู้จบ บางคนทำงานเกี่ยวกับการจัดเตรียมโครงการ บางคนใช้เวลาส่วนใหญ่ในการปรับใช้และทดสอบโดยอัตโนมัติ และบางคนก็ปรับปรุงประสิทธิภาพในการจัดการการกำหนดค่า ในกระบวนการนี้จะมีความชัดเจนว่าจะต้องขุดที่ไหนและโครงการใดจะมีประโยชน์
นี่เป็นอีกหนึ่งขั้นต่ำเล็กๆ น้อยๆ ที่จะช่วยได้ตั้งแต่เริ่มต้น:
- ทำความเข้าใจว่า Git และ Github ทำงานอย่างไร หากคุณยังไม่ได้ดำเนินการ ติดตั้ง GitLab บนเซิร์ฟเวอร์ของคุณ
- ทำความคุ้นเคยกับภาษามาร์กอัป JSON และ YAML
- ติดตั้งและลองทำงานในฐานข้อมูล ไม่ใช่แค่ MySQL แต่ยังรวมถึง NoSQL ด้วย ลอง MongoDB ดูครับ
- ทำความเข้าใจวิธีจัดการการกำหนดค่าของเซิร์ฟเวอร์หลายเครื่องพร้อมกัน เช่น การใช้ Ansible
- ตั้งค่าการตรวจสอบโหลดและบันทึกทันที ลองใช้ชุด Prometheus, Grafana, Alertmanager
- มองหาโซลูชันที่ดีที่สุดสำหรับการปรับใช้สำหรับภาษาต่างๆ คุณเพียงแค่ต้องทำความคุ้นเคย นำไปใช้ และทำความเข้าใจในการฝึกอบรมหรือโครงการทำงาน
ทำไมคุณควรเริ่มเรียนรู้ DevOps ตอนนี้
ในตลาดขาดแคลนบุคลากรสำหรับวิศวกร DevOps สิ่งนี้ได้รับการยืนยันตามเงื่อนไขโดยปริมาณและคุณภาพของตำแหน่งงานว่าง:
- ในรัสเซีย บน HeadHunter เพียงอย่างเดียว มีตำแหน่งงานมากกว่า 2 ตำแหน่งสำหรับคำหลักนี้อย่างต่อเนื่อง
- และมีคนโพสต์เรซูเม่ของตนเพียง 1 คนเท่านั้น
เมื่อพิจารณาว่าการโพสต์เรซูเม่ไม่ได้หมายถึงการหางานอย่างแข็งขัน แต่ปรากฎว่าสำหรับผู้เชี่ยวชาญหนึ่งคนมีตำแหน่งงานว่างสองหรือสามตำแหน่ง - สถานการณ์นี้ไม่มีแม้แต่ในตลาดการพัฒนาเว็บไซต์ยอดนิยม เพิ่มตำแหน่งงานว่างเพิ่มเติมจากช่อง Habr และ Telegram ที่นี่ - การขาดแคลนผู้เชี่ยวชาญมีมาก
ให้ความสนใจกับข้อกำหนดเงินเดือนของผู้สมัคร
DevOps นั้นเป็นที่ต้องการไม่น้อยในโลก - หากคุณกำลังจะย้ายไปยังสหรัฐอเมริกาหรือยุโรป ให้ไปที่พอร์ทัลเท่านั้น
มีข้อเสนอสำหรับการทำงานฟรีแลนซ์น้อยลงหลายเท่า - วิศวกร DevOps กำลังมองหาพนักงานและตำแหน่งงานเต็มเวลาเป็นหลัก
การหาโครงการฟรีแลนซ์ที่เหมาะสมเป็นเรื่องยาก แต่ก็เป็นไปได้
เส้นทางอาชีพทั่วไปของวิศวกร DevOps สามารถจินตนาการได้ดังนี้:
- เขาทำงานเป็นผู้ดูแลระบบในบริษัทไอทีขนาดเล็กมาเป็นเวลาหกเดือนถึงหนึ่งปี ในเวลาเดียวกัน เขาได้ศึกษาภาษาที่เหมาะกับระบบอัตโนมัติ
- เขาเรียนหลักสูตรอย่างเข้มข้นเป็นเวลาประมาณหกเดือน
- ย้ายไปทำงานอื่น - ให้กับบริษัทที่ขายโซลูชั่นคลาวด์ ซึ่งเป็นสาขาขององค์กรขนาดใหญ่ ให้กับนักพัฒนาโครงการขนาดใหญ่ พูดง่ายๆ ก็คือ เมื่อมีความต้องการระบบอัตโนมัติและการใช้งานอย่างต่อเนื่อง ที่ตำแหน่งเริ่มต้นจะอยู่ที่ประมาณ 100 รูเบิล
- เขาทำงานและเรียนหนังสือมาหลายปี ทำให้มีรายได้เพิ่มขึ้นหลายเท่า
- กลายเป็นผู้เชี่ยวชาญในชุมชนมืออาชีพและก้าวเข้าสู่การให้คำปรึกษา หรือเติบโตเป็นสถาปนิกระบบหรือผู้อำนวยการฝ่ายไอที
DevOps นั้นยาก คุณต้องรวมทักษะของหลายอาชีพพร้อมกัน เป็นคนที่พร้อมจะเสนอการปรับปรุงโดยที่ผู้เชี่ยวชาญด้านไอทีคนอื่นๆ ไม่คิดเรื่องอื่นด้วยซ้ำ พวกเขาจ่ายเงินจำนวนมากเพื่อสิ่งนี้ แต่พวกเขาก็ต้องการความรู้จำนวนมากเช่นกัน
DevOps มีรายได้เท่าไหร่?
จากข้อมูลสำหรับไตรมาสที่สองของปี 2019 เงินเดือนเฉลี่ยสำหรับ Devops อยู่ระหว่าง 90 ถึง 160 รูเบิล มีข้อเสนอที่ถูกกว่า - ส่วนใหญ่ 60-70
มีข้อเสนออย่างต่อเนื่องสูงถึง 200 และมีตำแหน่งงานว่างที่มีเงินเดือนสูงถึง 330 รูเบิล
ในบรรดาผู้เชี่ยวชาญด้านการปฏิบัติงาน DevOps ได้รับค่าตอบแทนสูงกว่าคนอื่นๆ แหล่งที่มา:
ขณะนี้วิศวกร DevOps รวมถึงผู้เริ่มต้นเป็นที่ต้องการในธนาคารขนาดใหญ่ องค์กร บริการคลาวด์ ระบบการซื้อขาย และองค์กรอื่นๆ ที่สนใจเกี่ยวกับการบำรุงรักษาโซลูชันด้านไอทีของตน
ผู้สมัครที่ยอดเยี่ยมสำหรับตำแหน่งงานว่างระดับจูเนียร์ที่มีเงินเดือน 60–90 จะเป็นผู้ดูแลระบบมือใหม่โดยมีประสบการณ์ประมาณหนึ่งปีและมีประกาศนียบัตรเฉพาะทาง
ไม่มีสถิติดังกล่าว แต่ดูเหมือนว่าผู้ที่มีประสบการณ์ใน Linux จะได้รับค่าตอบแทนมากกว่า
สิ่งที่ควรดูและอ่านเพื่อพัฒนาอาชีพของคุณ
หากต้องการดำดิ่งสู่โลกแห่ง DevOps ให้ลองใช้แหล่งข้อมูลหลายแหล่ง:
มูลนิธิ Cloud Native Computing [YouTube, ENG] - วิดีโอมากมายจากการประชุมและการสัมมนาทางเว็บด้านการศึกษาช่อง DevOps [YouTube, RUS] - รายงานวิดีโอจากการประชุม DevOps ระดับมืออาชีพในรัสเซียคู่มือ DevOps [หนังสือ RUS] เป็นหนึ่งในหนังสือยอดนิยมเกี่ยวกับปรัชญา DevOps หนังสือเล่มนี้ประกอบด้วยหลักการทั่วไปของวิธีการ โดยจะบอกว่าอะไรที่ต้องใส่ใจเป็นอันดับแรกเมื่อทำงานในโครงการใดๆโทมัส ลิมอนเชลลี "แนวทางปฏิบัติด้านการบริหารระบบและเครือข่าย" [หนังสือ มาตุภูมิ] - ทฤษฎีและหลักการมากมายเกี่ยวกับวิธีจัดโครงสร้างการบริหารระบบเดวอปส์รายสัปดาห์ [หนังสือ ENG] - บทวิจารณ์ข่าวรายสัปดาห์เกี่ยวกับสิ่งที่เกิดขึ้นใน DevOps ทั่วโลกDevops_deflope [Telegram, RUS] - ข่าวอุตสาหกรรม ประกาศการประชุม ลิงก์ไปยังบทความและหนังสือใหม่ๆ ที่น่าสนใจDevops_en [Telegram, RUS] - แชทภาษารัสเซียที่คุณสามารถขอคำแนะนำและขอความช่วยเหลือเกี่ยวกับการกำหนดค่า- Devops.com เป็นเว็บไซต์ระหว่างประเทศขนาดใหญ่ที่มีบทความ การสัมมนาผ่านเว็บ พ็อดคาสท์ และคอลัมน์จากบริษัทที่ใหญ่ที่สุดในอุตสาหกรรม
Hangops_Ru — ชุมชนวิศวกร DevOps และโซเซียลมีเดียที่พูดภาษารัสเซีย- หนังสือที่ดีที่สุดสำหรับภาษาที่คุณจะใช้สำหรับการพัฒนา
จะเรียน DevOps ได้ที่ไหน
คุณสามารถรับความรู้เชิงโครงสร้างได้ในหลักสูตร”
- เรียนรู้วิธีวิเคราะห์โค้ดและใช้เครื่องมือควบคุมเวอร์ชันอย่างรวดเร็ว
- ทำความเข้าใจแนวทางปฏิบัติที่ดีที่สุดสำหรับการบูรณาการ การทดสอบ และการสร้างอย่างต่อเนื่อง
- เรียนรู้การจัดการและทำให้การเปลี่ยนแปลงแอปพลิเคชันเป็นแบบอัตโนมัติ
- ทดลองใช้เครื่องมือการกำหนดค่าและการจัดการ
- ทำความคุ้นเคยกับการเลือกและกำหนดค่าบริการที่จำเป็นสำหรับการตรวจสอบทันที
รับหลักสูตรการเขียนโปรแกรม Python เป็นโบนัส คุณจะแก้ปัญหาได้เร็วและง่ายขึ้น ทุกอย่างใช้งานได้จริง เราใช้ AWS, GCP หรือ Azure
นี่ก็เพียงพอที่จะเปลี่ยนวิศวกรมือใหม่หรือผู้ดูแลระบบให้เป็น DevOps ที่เป็นที่ต้องการ และเพิ่มราคาของคุณในตลาดแรงงานได้อย่างน่ายินดี
ที่มา: will.com