באופן מסורתי בתעשיית הטכנולוגיה מפתחים מחולקים לארבע הדרגות על סמך רמות ההסמכה שלהם: ג'וניור, בינוני, בכיר וראש צוות. בשני מאמרים קודמים כבר כיסינו את כל היסודות של איך זה להיות מפתח ג'וניור
וברמה בינונית
. עכשיו הגיע הזמן לעבור להדרגה הבאה. מפתח בכיר, איך זה להיות אחד וכיצד הבכיר שונה מקודד ברמה בינונית? בוא נגלה.

מיהו מפתח בכיר?
במאמרים כאלה על מקצועות והתמחויות בפיתוח תוכנה עלינו תמיד לעשות איזשהו כתב ויתור, להסביר שהתפיסה וההבנה של תפקיד מסוים עשויות להשתנות מאוד, בהתאם לחברה, לתעשייה בה היא פועלת וגורמים נוספים. . יש אנשים, בעיקר אלה שנוטים להיות מעט שמרניים, מאמינים שמותר לך לקרוא לעצמך קשיש רק אם יש לך למעלה מ-10 שנות ניסיון בקידוד, וזה אחראי. כלומר, רק שנים שבהן בעצם קידדתם כמספר עובדים במשרה מלאה, אינכם יכולים להתחיל לספור מרגע שניסיתם לראשונה לתכנת ב-Basic בגיל 12 (כפי שמקודדים צעירים רבים נוטים לעשות, ומעצבנים מתכנתים בכירים אמיתיים. ). בהיותם פחות שמרניים, אנשים רבים מאמינים שיותר מחמש שנים של עבודה במשרה מלאה כמפתחי תוכנה מאפשרת לך לקרוא לעצמך בכירה. מצד שני, ניסיון של שנים הוא רק מספר, מה שחשוב באמת הוא ידע, כישורים וניסיון ישים. זה המקום שבו אתה צריך באמת לספק כדי להגיע לתואר הבכיר, כי מפתח בכיר נתפס לעתים קרובות כאשף קידוד יודע כל, כל יכול. בתפיסת ההנהלה, Senior הוא בדרך כלל זה שיודע לפתור כל משימה הקשורה לפרויקט או איך לכתוב את הקוד הנדרש. אבל אחת התפקידים החשובים ביותר של מפתח בכיר בפרויקט פיתוח תוכנה ספציפי הוא הכרת הפרויקט עצמו על כל הנושאים, הצרכים, הניואנסים שלו וכו'. היכולת לעבוד אוטונומית היא תכונה חשובה של קשיש. המשמעות היא שהבכיר יודע מה ומתי לעשות, ואינו זקוק לפיקוח על מנת לספק את העבודה שהוא מצפה לעשות. וזו תכונה חשובה למדי בעיני כל מעסיק, שכן זה אומר שאתה יכול לתת למפתח הזה משימה הקשורה לפרויקט ולהשאיר לו/ה את כל השאר. כאשר "כל השאר" הוא: להבין את הצרכים, הדרישות והמגבלות להשלמת המשימה, להגיע לגישה הנכונה, מציאת מכשירים מתאימים, חלוקת המשימה הגדולה למשימות קטנות יותר ומתן אלו לרמה בינונית וג'וניור מפתחים וכו'. ישנו היבט מרכזי נוסף שמבדיל בין ה-Seniors לבין קודנים בינוניים וג'וניורים. זה כתוב בקוד שהם כותבים, ובדרך שבה הם עושים את זה. בכיר בדרך כלל הוא וצריך להיות זה שכותב את הקוד הכי ברור, פשוט ותמציתי. לפעמים במידה שבה הקוד הזה נראה פשוט מדי ובסיסי באופן פרימיטיבי. הסיבה לכך היא כי על Senior לשקול לא רק את השלמת המשימה כתוצאה הסופית, אלא את ההשפעה הכוללת של הקוד החדש על בסיס הקוד של הפרויקט. מפתחים בכירים כותבים את הקוד שלהם מתוך מחשבה על תחזוקה ומדרגיות, וזו החוזק העיקרי שלהם, שיכול לבוא רק עם ניסיון ולא שום דבר אחר.מהן תחומי האחריות של מפתח בכיר?
כעת בואו נדבר בפירוט רב יותר על כמה מהאחריות הסטנדרטית והנפוצה ביותר של מפתח בכיר, תוך התמקדות באופן טבעי באחריות האופיינית למתכנתי Java.- זיהוי וניתוח דרישות המשתמש;
- תעדוף, הקצאה וביצוע משימות קידוד;
- פיתוח יישומי Java;
- סקירת עבודת קוד עבור דיוק ופונקציונליות;
- ניתוח קטעי קוד באופן קבוע;
- להישאר מעודכן בטכנולוגיה חדשה וללמד מפתחי ג'וניור כיצד להשתמש בה;
- יצירת רעיונות ופתרונות הקשורים למחזור הפיתוח עם חברי צוות אחרים;
- לקיחת אחריות כללית על כל עבודת הפיתוח והקוד של הפרויקט.
דרישות למפתח בכיר
להלן רשימה של הדרישות הנפוצות והטיפוסיות ביותר למפתח בכיר שעליכם לעמוד בהן כדי לקבל עבודה זו. כמובן, הדרישות ישתנו בהתאם למדיניות העסקה של החברה, הטכנולוגיות המשמשות בפרויקט ושפת התכנות שלך.- ידע כללי נרחב בפיתוח תוכנה וטכנולוגיותיה;
- ידע רב ב-Java;
- ניסיון בתכנון, בנייה ובדיקה של יישומים ארגוניים;
- ידע מעמיק במסגרות Java פופולריות כמו Spring, Spring Boot או Java EE, JSF ואחרות;
- ניסיון בעיצוב מונחה עצמים (OOD).
- כישורי העברת משלחת וניהול זמן טובים;
- יכולות פתרון בעיות;
- כישורי תקשורת טובים;
- כישורי תקשורת כתובים ומילוליים חזקים;
- יכולת עמידה בזמנים וחשיבה אסטרטגית.
GO TO FULL VERSION