בכל תקופה נכנס 'באזז וורד' או 'מילת מפתח' חשובה לעולם ההייטק. השנה אנו שומעים מכל עבר את הביטוי "DevOps". מה משמעות ביטוי זה וכיצד הוא יכול להשפיע על הקריירה שלכם בתחום פיתוח התוכנה? בתום קריאת המאמר הזה, תוכלו להשתמש במילה זו כאילו הכרתם אותה מאז ומתמיד.
מי שנכנס בתקופה זו לאחד מהקורסים המובילים בדרך המהירה לעולם ההייטק, קורס תכנות בשפה זו או אחרת, מלא התרגשות כאשר הוא מתחיל לעבוד על פרויקט חדש ומנסה להוסיף פונקציונליות רבה ככל האפשר. אנשי DevOps – המילה המאחדת בין "מפתח" (Developer) לבין אחראי על התפעול (Operator) הם אלה שאחראים מחד על הוספת פונקציונליות חדשה ומאידך – על שמירה שהתוכנה תמשיך לעבוד בצורה יציבה.
האם התחום מתאים למתכנתים מתחילים?
בדרך כלל אנשי ה-DevOps יהיו דווקא מתכנתים ותיקים יותר, הבקיאים בתחום התכנות והפיתוח ובדרישות השונות שיש ללקוחות לאחר שהתוכנה יצאה לשוק. אם נחלק את המפתחים ואת האופרטורים לתחומים שונים, ניתן לחלק אותם בחלוקה גסה בין שני תחומים.
הראשון הוא מפתחים: מומחים שעברו קורס פיתוח תוכנה ולמדו את תהליך כתיבת הקוד עצמו המרכיב את התוכנה, אנשי בדיקות התוכנה או ה-QA ומנהלי המוצר המעבירים למתכנתים בשפה מקצועית את הדרישות השונות המגיעות מהלקוח. התחום השני הוא אנשי תפעול כמו מהנדסי הרשת השונים, מנהלי המערכות ואנשי אבטחת התוכנה. השילוב בין שניהם מצריך לימוד מעמיק של תחומים משני העולמות, על מנת לתפקד כגורם מקשר בין תחום הפיתוח לאופרציה שאחריו.
כיצד השינויים בעולם בתחום זה משפיעים על קורסי התכנות?
העובדה כי העולם צועד לכיוון אחידות רבה יותר בין התחומים השונים, הופך נושאים שונים הנלמדים במהלך לימודי תכנות לחשובים יותר ונדרשת גם יכולת הבנה של פיתוח המוצר מבחינת הדרך שבה הלקוח רואה אותו וכן הבנה של שיקולי אבטחת התוכנה, כמו גם העומס על הרשת בנוצר בתפעולה. למעשה, קוד הכתוב בצורה נכונה, על פי הספר, יתמוך בהיבטים אלה. אם אתם מתלבטים איזה תחום עדיף, ניהול רשתות או קורס תכנות, התשובה הפשוטה והנכונה ביותר תהיה: שניהם.
ואולי עדיף להיות רק בצד אחד של התחום?
אחרים, המעוניינים להתמקד דווקא בצד אחד של תחום ההייטק, באספקט אבטחת התוכנה בלבד או בתכנות הקוד – גם הם יוכלו ליהנות ממגוון עצום של משרות. הדרישה בתחום ההייטק לבוגרי קורס תכנות היא עצומה וגם אם כרגע אתם מתמקדים רק בכתיבת קוד – תמיד תוכלו ללמוד קורס נוסף או ללמוד במהלך העבודה את ההיבטים האחרים על מנת להפוך ל"דב-אופ" או למתכנת הלוקח בחשבון גם את שיקולי התפעול.
לראות את התמונה המלאה
בתחום זה נכנס לאחרונה המושג
Full Stack, שכוונתו אדם המודע לתמונה המלאה של הפיתוח שבו הוא עוסק. לדוגמה, אם מדובר באתר אינטרנט, המתכנת מודע לא רק לשלב התכנות אלא גם לתכנון המורכב שלו, לעיצובו ולבניית האפיון, לפיתוח ול-QA ולהפצת התוכנה בסוף היום. הרבה יותר משלבי הלימודי בכל קורסי תיכנות, יכולת הבנה של התמונה המלאה הופכת את המתכנת לחלק אינטגרלי מצוות גדול יותר, המסוגל לבנות את הפתרונות בצורה הטובה יותר הן מבחינת עלויות הפיתוח והן מבחינת דרישות השוק, ולאזן בין גורמי העניין השונים המעורבים בכל פרויקט.