היי! כולנו חיפשנו כאן כי היינו מעוניינים לעבוד בתחום ה-IT. אבל במקום לחטט במומחיות ה-IT הראשונה שבה אתה נתקל, אולי כדאי להסתכל קצת על רשימת התחומים האפשריים בחברת IT? זהו החלק השני של הסקירה הקצרה שלי. בראשון , בדקנו התמחויות כמו גיוס, משאבי אנוש, מנהל מערכת, DBA, DevOps. היום נבחן את ההתמחויות המהוות את "עמודי השדרה" של כל צוות ובהתאם לכך, פרויקט. אם אני מבלבל משהו איפשהו, אל תנזוף בי יותר מדי, אלא תקן אותי בהערות: אני מסתכל על הכל מנקודת המבט של מפתח ג'אווה ואולי אני פשוט לא יודע את הניואנסים של כל ההתמחויות.
18.00 - מנהל פרויקט
תפקידו של מנהל פרויקטים הוא לתכנן, לארגן, לנהל פרויקטים טכניים במיומנות ולשפר את התקשורת בין חברי הצוות כדי להבטיח שהעבודה תתבצע בצורה חלקה ויעילה ככל האפשר. על המומחים הללו להכיר את צרכי הלקוחות ואת המטרות שהם חותרים אליהם, ולתאם את פעולות העובדים ככל האפשר על מנת להביא את הפרויקט לסיומו ההגיוני והחיובי. חיובי, כי לא תמיד ניתן להשלים פרויקטים בהצלחה בשל מספר סיבות: הפסקת מימון, חוסר שביעות רצון מהעבודה מצד הלקוח וכדומה... המשימה העיקרית של ראש הממשלה היא תיאום קבוצת עובדים לפתרון בעיות טכניות, כי מפתחים הם לא תמיד אנשים סופר חברותיים והם לא תמיד יכולים לתקשר בצורה מוכשרת אחד עם השני, וזה, בתורו, יכול רק לשחק נגד הפרויקט. ובכן, או, למשל, המפתח נתקע במשהו: הוא עלול לשבת הרבה זמן ולא לדעת איך להתמודד עם בעיה כלשהי. כולנו לא אוהבים להודות שאנחנו לא יודעים או לא יכולים לעשות משהו, ומפתחים אפילו יותר. כאן בא לעזרה ראש הממשלה , שיעזור לך למצוא אדם שאליו תוכל לפנות לקבלת מידע נוסף, או שכבר נתקל במשהו דומה. תחומי אחריות ראש הממשלה כוללים:- קביעת יעדי הפרויקט הכוללים;
- פיתוח תוכניות להשגת יעדים אלו;
- שמירה על מועדי פרויקט ודוחות מצב עדכני;
- ניהול משאבי פרויקט (עובדים וציוד טכני);
- שיפור תיאום האינטראקציה בין חברי צוות הפרויקט;
- מעקב אחר יעילות הפרויקט ועמידה בלוח הזמנים המתוכנן;
- עריכת הערכות סיכונים לפרויקטים;
- ארגון פגישות שונות לדיון ביעדים, התקדמות נוכחית, היבטים חיוביים ושליליים של הפרויקט.
- אנגלית עילית בינונית ומעלה, שכן ראש הממשלה מתקשר עם הלקוח מטעם הצוות;
- ידע טכני רחב, אבל לא מאוד עמוק, כדי שתוכלו להבין מי עושה מה, איך העבודה מתרחשת באופן כללי, מבלי להעמיק מדי;
- מיומנויות בניהול פרויקטים וצוותים המעורבים בהם;
- כישורי תקשורת חזקים, שכן עבודתו של ראש הממשלה מורכבת בעיקר מתקשורת עם חברי הצוות וההנהלה;
- פיתח כישורי התכתבות. לדוגמה, לעתים קרובות אתה צריך לשלוח מכתבים למייל של הלקוח בשם צוות או חברה, ואף אחד לא יעריך מכתב שנכתב בצורה לא נכונה או עם שגיאות;
- מוח אנליטי שיהיה שימושי בפתרון בעיות המתעוררות תוך כדי עבודה על פרויקט;
- מיומנויות ניהול זמן, שהשימוש בהן יאפשר לכם לשמור על פרויקטים בלוח זמנים ובתקציב (בכל זאת, זמן = כסף);
- כישורי תכנון משאבים ומשימות.
- מנהל מסירה ( DM ) הוא המשך ישיר של PM -a, עומד מיד מעל קבוצת ראשי הממשלה ומתאם את הפרויקטים שלהם ברמה גבוהה יותר;
- מנהל תוכנית - מרכז מספר פרויקטים הקשורים זה בזה, אבל אני בעצמי לא ממש מבין את ההבדל עם ה-DM;
- קצין טכני ראשי ( CTO ) - מנהל טכני אחראי לפיתוח מוצרים ושיפור תהליכי היצירה שלהם;
- מנכ"ל ( מנכ"ל ) - מנכ"ל;
- מנהל חשבונות ( AM ) - מנהל שירות לקוחות;
- להתאמן מחדש ולעבור להתמחות אחרת))
7. מפתח פרונטנד
מפתח חזיתי הוא מפתח שאחראי על הטמעת החלק הוויזואלי של אפליקציה שמשתמשים רואים ומקיימים איתו אינטראקציה באפליקציית אינטרנט. ככלל, מומחים אלו משתפים פעולה עם מפתחי Backend אשר אחראים על החלק הלוגי (שרת) של האפליקציה, אשר ממשיך את החלק הוויזואלי של האפליקציה שנוצרו על ידי מפתחי Frontend . מפתחי Frontend, כמו מפתחי Backend, הם עמוד השדרה של הפיתוח של כל פרויקט. אלה שתומכים בפרויקטים. אחרי הכל, לא משנה מה העסק, הוא נשען על עובדים קשים רגילים, כביכול. אז המפתחים פועלים כעובדים קשוחים כאלה. ככלל, יש הרבה יותר מהם מאשר נציגים של התמחויות אחרות, והם נחוצים ביותר בכל פרויקט. תחומי האחריות של מפתחי Frontend כוללים:- פיתוח פונקציונליות חדשה ושיפור ישנות;
- עיבוד מחדש של קוד לשיפור הביצועים, שלעיתים עלול לסבול מאוד; קריאות, כך שמפתחים אחרים יוכלו להבין במהירות את הקוד והלוגיקה שלו; הרחבה, כך שבעתיד יהיה קל יותר ליישם פונקציונליות חדשה על ידי שימוש חוזר בחלקים מהישן;
- סקירה (סקירה) של הקוד שנשלח לשרת. לדוגמה, מפתח אחד כתב את הקוד, אחר סוקר אותו ויכול להחזיר אותו לראשון עם הערות על מה שצריך לתקן;
- תקשורת עם לקוחות וחברי צוות - מפתחי Frontend וגם Backend ;
- יישום טכני של פריסת ה-UI/UX הגרפית שנערכה על ידי המעצב;
- מעקב אחר ביצועי האפליקציה;
- תיקון באגים (שגיאות).
- רמת אנגלית - בינונית ;
- הבנה של כל תהליך פיתוח האינטרנט (עיצוב, פיתוח ופריסה);
- עבודה עם Angular 5+ ;
- ידע ב- JavaScript , TypeScript , RxJS , Sass , webpack ;
- מיומנויות פריסה ( HTML , CSS );
- מיומנויות בעבודה עם Git ;
- הבנת דפוסי עיצוב;
- ידע טוב בלינוקס .
- tech lead - מומחה טכני (גורו) בתחום זה;
- מוביל צוות - ראש צוות פיתוח (מפקד שדה). מכאן אתה יכול לצמוח לכיוון ניהולי, למשל, CTO ;
- מפתח מלא מחסנית - מפתח שבבעלותו גם החלק האחורי וגם החלק הקדמי , כלומר, אתה צריך ללמוד את החלק האחורי ;
- אדריכל פתרונות - מומחה המקבל החלטות לגבי הארכיטקטורה של המכשיר הפנימי והממשקים החיצוניים של המוצר;
- יועץ טכנולוגי - יועץ טכני בטכנולוגיה מסוימת;
- להתאמן מחדש ולעבור להתמחות אחרת.
8. מפתח אחורי
מפתחי Backend - יוצרים ומשפרים את חלק השרת האחראי על הלוגיקה העסקית של האפליקציה, שמתחבר לחלק הוויזואלי (הממשק) של האפליקציה (למשל דרך ה- REST API ). השילוב של חלק השרת של האפליקציה ( Backend ) + החלק הוויזואלי של האפליקציה ( Frontend ) יוצר אפליקציית אינטרנט איתה משתמש הקצה מקיים אינטראקציה. מפתחי Backend אחראים ליצירה, תחזוקה, בדיקה וניפוי באגים של ה-backend כולו. זה כולל בדרך כלל לוגיקה של יישום ליבה, אינטראקציה עם מסדי נתונים, אינטראקציה עם ממשקי API שונים ותהליכים פנימיים אחרים. מומחה בפרופיל זה, בנוסף לידע בתחביר השפה שלו ובמסגרות הבסיסיות שלו, חייב להיות בעל ידע כללי בבסיסי נתונים, בפרט רלציוניים , להיות מסוגל לכתוב מבחני יחידה ואינטגרציה לקוד שלו, להיות בעל ידע בבונה האפליקציות - Maven או Gradle , תוכל להשתמש ב-Git - ohm אחריות המפתחים האחוריים כוללים:- פיתוח פונקציונליות חדשה;
- שחזור קוד;
- סקירת קוד ממפתחי Backend אחרים ;
- כתיבת תיעוד כדי לעזור למפתחי backend חדשים ,
- מי שיגיע לפרויקט יבין במהירות את ההיגיון של האפליקציה;
- תיקון באגים;
- כתיבת מבחנים (יחידה, בדיקות אינטגרציה);
- תקשורת עם חברי צוות אחרים.
- רמת אנגלית - בינונית ;
- ידע ב- Java Core - התחביר של שפת Java ומערך טכנולוגיות בסיסיות;
- הבנה של כל תהליך פיתוח האינטרנט;
- ידע בשפת SQL ;
- ידע של מסדי נתונים יחסיים, כגון PostgreSQL או MySQL ;
- מיומנויות באינטראקציה עם מסד נתונים באמצעות JDBC , Hibernate ;
- הכרת מסגרות האביב הבסיסיות (Spring Core, Spring Data, Spring Web) ;
- הכרת Git , Maven ;
- מיומנויות בבדיקת יחידות ואינטגרציה, למשל באמצעות JUnit ו- Mockito .
- מוביל טכנולוגי ;
- ראש צוות ;
- מפתח ערימה מלאה - אתה צריך ללמוד חזית קצה ;
- אדריכל פתרונות ;
- יועץ טכנולוגי ;
- להתאמן מחדש ולעבור להתמחות אחרת.
9.QA ידני
אבטחת איכות ידנית הינו מומחה הפועל להבטחת איכות המוצר, שמטרתו לשפר את תהליך פיתוח האפליקציה עצמו, לנתח תיעוד ועל פיו לזהות שגיאות ואי דיוקים בתפעול המוצר. בדרך כלל, אבטחת איכות, המטופלת במדריך ה-QA , מורכבת מ:- עריכת הערכות סיכונים;
- ניתוח מפרטים ודרישות;
- הפקת רעיונות לשיפור איכות המוצר;
- עריכת תוכניות בדיקה;
- ניתוח ותיעוד של תוצאות הבדיקה שהתקבלו.
- לימוד דרישות, מפרטים ותיעוד אחר;
- צפייה ובדיקה של המערכת ומאפייניה הטכניים לעמידה במפרט (רשימת דרישות);
- פיתוח אסטרטגיות ותוכניות בדיקה יעילות;
- כתיבת סקריפטים למבחן (מקרי בדיקה), על בסיסם יוצרת QA Automation בדיקות אוטומטיות;
- ביצוע ידני של מקרי בדיקה, ניתוח תוצאות;
- במקרה של כשלים או חוסר עקביות במהלך הבדיקה, עליך לערוך דוח, ליצור משימות (ליצור באגים) ולשלוח אותם למפתחים לשיפור;
- בדיקת רגרסיה של המוצר;
- תיעוד שלבי הבדיקה;
- תקשורת עם צוותי פיתוח על חוסר עקביות פונקציונליות ובאגים.
- רמת אנגלית - בינונית ;
- הבנה טובה של מתודולוגיות ופרקטיקות של אבטחת איכות יישומים;
- ידע בבדיקות רגרסיה;
- יכולת תיעוד שגיאות;
- מיומנויות בסקירה מפורטת של דרישות תוכנה;
- אוריינטציה טכנית בסיסית;
- הבנת JSON , XML ;
- ידע בסיסי ב-SQL ;
- מיומנויות בעבודה עם כלים לארגון תיעוד מבחן, למשל - Testrail ;
- תשומת לב לפרטים;
- חשיבה ביקורתית.
- QA lead - מוביל QA בצוות;
- להתאמן מחדש ולעבור להתמחות אחרת, למשל, להפוך למפתח קצה או אחורי .
10. QA אוטומציה
QA Automation הוא מומחה לאיכות מוצר המשתמש בכלי תוכנה שונים כדי ליצור בדיקות המבוססות על סקריפטים שנכתבו באופן אישי או על ידי QA Manual . אוטומציה של QA היא משהו כמו הרמה הבאה אחרי QA Manual . אם QA Manual עושה הכל באופן ידני, אז QA Automation משתמש בשפת תכנות כלשהי כדי לכתוב מבחנים הבודקים את הפעולה הנכונה של פונקציונליות האפליקציה. בדיקות אלו מופעלות בדרך כלל אוטומטית בתנאים מסוימים: כאשר האפליקציה נבנית, או כל יום בזמן כלשהו, וכן הלאה. בדרך כלל, תחומי האחריות של AQA כוללים :- לימוד דרישות, מפרטים ותיעוד אחר;
- יצירה והגדרה של סביבות בדיקה לביצוע מקרי בדיקה ותסריטים;
- תכנון, יצירה וביצוע אוטומציה של מקרי בדיקה (תכניות בדיקה) באמצעות סלניום בהתאם לתקנים ומתודולוגיות של אבטחת איכות מוגדרים;
- לימוד בדיקה ידנית של האפליקציה והצעת הצעות לאפשרות לאוטומציה;
- שמירה על מקרי בדיקות אוטומציה עדכניים;
- כתיבת תיעוד;
- שמירה על רמת כיסוי הבדיקה הנדרשת;
- במידת הצורך, עזרה בבדיקה ידנית. יכול לבצע באופן ידני מקרי בדיקה ותסריטים עבור מוצרים בפיתוח באמצעות כלי ניהול בדיקות;
- השתתפות בפיתוח, כלומר בניהול תהליך בקרת האיכות;
- תקשורת עם צוותי פיתוח על חוסר עקביות פונקציונליות ובאגים.
- רמת אנגלית - בינונית ;
- הבנה טובה של מתודולוגיות ופרקטיקות של אבטחת איכות;
- ידע מצוין בתחביר של שפה אחת (לדוגמה, Java או JavaScript ), כי מבחנים צריכים להיכתב במשהו;
- כתיבת בדיקות אוטומטיות באמצעות סלניום ;
- היכרות עם CI/CD ;
- יכולת לעבוד עם Git ;
- תשומת לב לפרטים;
- חשיבה ביקורתית.
- מוביל QA ;
- להתאמן מחדש ולעבור להתמחות אחרת.
GO TO FULL VERSION