
זה לא סוד לאנשי משאבי אנוש ב-IT שאם העיר שלך היא לא עיר של מיליון פלוס, אז למצוא שם מתכנת זה בעייתי, ואדם שיש לו את ערימת הטכנולוגיה והניסיון הנדרשים זה אפילו יותר קשה.
עולם ה-IT קטן באירקוטסק. רוב היזמים בעיר מודעים לקיומה של חברת ISPsystem ורבים כבר איתנו. מועמדים מגיעים לרוב לתפקידים זוטרים, אך לרוב מדובר בבוגרי האוניברסיטאות מאתמול שעדיין צריכים לעבור הכשרה וליטוש נוסף.
אנחנו רוצים סטודנטים מוכנים שכבר עשו קצת תכנות ++C, מכירים את Angular וראו... Linuxאז היינו צריכים ללכת וללמד אותם בעצמנו: להציג להם את החברה ולתת להם את החומרים שהם צריכים כדי לעבוד אצלנו. כך נולד הרעיון לקורסי פיתוח backend ו-frontend. יישמנו אותו בחורף שעבר, ובמאמר הזה נספר לכם איך הכל קרה.
הדרכה
בהתחלה אספנו מפתחים מובילים ודנו איתם במשימות, משך ומתכונת השיעורים. יותר מכל, אנו זקוקים למתכנתי backend ו-frontend, אז החלטנו לקיים סמינרים בהתמחויות אלו. מכיוון שזו ההתנסות הראשונה וכמה מאמץ זה ידרוש לא ידוע, הגבלנו את הזמן לחודש אחד (שמונה שיעורים לכל כיוון).
החומר לסמינרים ב-backend הוכן על ידי שלושה אנשים, ונקרא על-ידי שניים, ב-front-end הנושאים חולקו בין שבעה עובדים.
לא הייתי צריך לחפש מורים הרבה זמן, וגם לא הייתי צריך לשכנע אותם. היה בונוס על ההשתתפות, אבל זה לא היה מכריע. משכנו עובדים בדרג הביניים ומעלה, והם מעוניינים לנסות את עצמם בתפקיד חדש, לפתח מיומנויות תקשורת והעברת ידע. הם בילו יותר מ-300 שעות בהכנות.
החלטנו לקיים את הסמינרים הראשונים לחבר'ה ממחלקת הסייבר של INRTU. זה עתה הופיע שם חלל עבודה משותף נוח, ותוכנן גם יום הקריירה - מפגש של סטודנטים עם מעסיקים פוטנציאליים, שאנו משתתפים בו באופן קבוע. הפעם, כרגיל, סיפרו לנו על עצמם ועל המשרות הפנויות, וגם הזמינו אותנו לקורס.
המעוניינים להשתתף קיבלו שאלון להבנת תחומי עניין, רמת הכשרה וידע בטכנולוגיה, איסוף אנשי קשר להזמנות לסמינרים וכן לברר האם למאזין יש מחשב נייד שהוא יכול להביא לשיעורים.
קישור לגרסה האלקטרונית של השאלון פורסם ברשתות החברתיות, והם גם ביקשו מעובד שממשיך ללמוד לתואר שני ב-INRTU לשתף אותו עם חברים לכיתה. אפשר היה גם להסכים עם האוניברסיטה לפרסם את החדשות באתר וברשתות החברתיות שלהם, אבל כבר היו מספיק אנשים שמוכנים להשתתף בקורס.
תוצאות הסקר אישרו את ההנחות שלנו. לא כל הסטודנטים ידעו מה זה backend ו-frontend, ולא כולם עבדו עם מחסנית הטכנולוגיה בה אנו משתמשים. חלקם שמעו עליה ואף השלימו פרויקטים ב-C++ ובשפות אחרות. Linuxמעט מאוד אנשים באמת השתמשו ב-Angular וב-TypeScript.
עד תחילת השיעורים היו 64 תלמידים, וזה היה די והותר.
ערוץ וקבוצה במסנג'ר אורגנו למשתתפי הסמינר. הם כתבו על שינויים בלוח הזמנים, פרסמו סרטונים ומצגות של הרצאות ומשימות בית. שם גם קיימו דיונים וענו על שאלות. כעת הסתיימו הסמינרים, אך הדיונים בקבוצה נמשכים. בעתיד, דרכו ניתן יהיה להזמין חבר'ה לערבי חנונים והאקתונים.
תוכן ההרצאות
הבנו: בקורס של שמונה שיעורים אי אפשר ללמד תכנות ב-C++ או ליצור אפליקציות אינטרנט ב-Angular. אבל רצינו להראות את תהליך הפיתוח בחברת מוצרים מודרנית ובמקביל להכיר לנו את ערימת הטכנולוגיה שלנו.
תיאוריה לא מספיקה כאן, יש צורך בתרגול. לכן שילבנו את כל השיעורים במשימה אחת – יצירת שירות לרישום אירועים. תכננו לפתח אפליקציה עם התלמידים שלב אחר שלב, ובו זמנית להציג בפניהם את המחסנית שלנו והחלופות שלה.
הרצאת מבוא
הזמנו את כל מי שמילא את הטפסים לשיעור הראשון. בהתחלה אמרו שרק Full stack - זה היה מזמן, אבל עכשיו בחברות פיתוח יש חלוקה לפיתוח קדמי ואחורי. בסוף ביקשו שנבחר את הכיוון הכי מעניין. 40% מהסטודנטים נרשמו ל-backend, 30% ל-frontend, ועוד 30% החליטו להשתתף בשני הקורסים. אבל לילדים היה קשה להשתתף בכל השיעורים, והם נעשו בהדרגה נחושים.

בהרצאת המבוא, מפתח הקצה האחורי מתבדח על הגישה לאימון: "הסמינרים יהיו כמו הנחיות לאמנים שואפים: שלב 1 - צייר עיגולים, שלב 2 - סיים לצייר את הינשוף"
תכנים של קורסים עורפיים
חלק משיעורי ה-backend הוקדשו לתכנות, וחלקם הוקדשו לתהליך הפיתוח באופן כללי. החלק הראשון נגע בקומפילציה, יצירת СMake ו-Conan, ריבוי הליכים, שיטות תכנות ותבניות, עבודה עם מסדי נתונים ובקשות http. בחלק השני דיברנו על בדיקות, אינטגרציה רציפה והספקה רציפה, Gitflow, עבודת צוות ו-refactoring.

שקף מתוך המצגת של מפתחי backend
תכנים של קורסי חזית
ראשית, הגדרנו את הסביבה: התקנו NVM, באמצעות Node.js ו-npm, השתמשנו בהם ב-Angular CLI, ויצירת פרויקט ב-Angular. אחר כך לקחנו מודולים, למדנו איך להשתמש בהנחיות בסיסיות וליצור רכיבים. לאחר מכן, הבנו כיצד לנווט בין דפים ולהגדיר ניתוב. למדנו מהם שירותים ומהן התכונות של עבודתם בתוך רכיבים בודדים, מודולים וכל האפליקציה.
התוודענו לרשימת השירותים המותקנים מראש לשליחת בקשות http ועבודה עם ניתוב. למדנו איך ליצור טפסים ולעבד אירועים. לצורך בדיקה, יצרנו שרת מדומה ב-Node.js. לקינוח, למדנו על הרעיון של תכנות ריאקטיבי וכלים כגון RxJS.

שקף מתוך מצגת של מפתחי קצה לסטודנטים
כלי עבודה
הסמינרים כוללים תרגול לא רק בכיתה, אלא גם מחוצה להם, ולכן היה צורך בשירות לקבלת ובדיקת שיעורי בית. הפרונט-אנדרים בחרו ב-Google Classroom, האחוריים החליטו לכתוב מערכת דירוג משלהם.

מערכת הדירוג שלנו. זה ברור מיד מה שהמגן כתב :)
במערכת זו נבדק אוטומטית הקוד שנכתב על ידי התלמידים. הציון היה תלוי בתוצאות המבחן. ניתן לקבל נקודות נוספות לבדיקה ועבור עבודה שהוגשה בזמן. הדירוג הכללי השפיע על המקום בדירוג.
הדירוג הכניס אלמנט של תחרות לכיתות, אז החלטנו לעזוב אותו ולנטוש את Google Classroom. לעת עתה, המערכת שלנו נחותה מבחינת נוחות מהפתרון של גוגל, אך ניתן לתקן זאת: נשפר אותה לקראת הקורסים הבאים.
Советы
התכוננו היטב לסמינרים וכמעט לא עשינו טעויות, אבל בכל זאת דרכנו על כמה טעויות. רשמנו את הניסיון הזה לעצות, למקרה שזה יהיה שימושי למישהו.
בחר את הזמן שלך וחלק את הפעילויות שלך בצורה נכונה
קיווינו לאוניברסיטה, אבל לשווא. בתום השיעורים התברר שהקורס שלנו התקיים במועד הכי לא נוח של שנת הלימודים - לפני המפגש. התלמידים חזרו הביתה אחרי השיעורים, התכוננו למבחנים, ואז התיישבו לעשות את המטלות שלנו. לפעמים הפתרונות הגיעו תוך 4-5 שעות.
כמו כן, חשוב לקחת בחשבון את השעה ביום ותדירות הפעילויות. התחלנו בשעה 19:00, אז אם השיעורים של תלמיד הסתיימו מוקדם, הוא היה צריך ללכת הביתה ולחזור בערב - זה היה לא נוח. בנוסף, התקיימו הלימודים בימי שני ורביעי או חמישי ושלישי, וכשהיה יום אחד לשיעורי בית, הילדים נאלצו לעבוד קשה כדי לסיים אותם בזמן. אחר כך התאמנו ובימים כאלה ביקשנו פחות.
הביאו עמיתים שיעזרו לכם במהלך השיעורים הראשונים
בהתחלה לא כל הסטודנטים יכלו לעמוד בקצב של המרצה, התעוררו בעיות עם פריסת הסביבה והקמתה. במצבים כאלה הם הרימו יד והעובד שלנו ניגש ועזר לסדר את זה. בשיעורים האחרונים לא היה צורך בעזרה, כי הכל כבר היה מסודר.
הקלט סמינרים בוידאו
כך תפתרו מספר בעיות בבת אחת. ראשית, תנו למי שהחמיץ את השיעור הזדמנות לצפות. שנית, מלאו את בסיס הידע הפנימי בתוכן שימושי, במיוחד למתחילים. שלישית, בהסתכלות על ההקלטה, ניתן להעריך כיצד העובד מעביר מידע והאם הוא יכול להחזיק את תשומת הלב של הקהל. ניתוח כזה מסייע לפתח את כישורי הביטוי של הדובר. לחברות IT תמיד יש מה לחלוק עם עמיתים בכנסים מיוחדים, וסמינרים יכולים להפיק דוברים מצוינים.

המרצה מדבר, המצלמה מתעדת
היה מוכן לשנות את הגישה שלך במידת הצורך
התכוונו לקרוא תיאוריה קטנה, לעשות קצת תכנות ולתת שיעורי בית. אבל התפיסה של החומר התבררה כל כך לא פשוטה וחלקה, ושינינו את הגישה לסמינרים.
במחצית הראשונה של ההרצאה החלו לשקול בפירוט את שיעורי הבית הקודמים, ובחלק השני החלו לקרוא את התיאוריה לקראת השיעור הבא. במילים אחרות, הם נתנו לתלמידים חכה, ובבית הם בעצמם חיפשו מאגר, פיתיון ותפסו דגים - התעמקו בפרטים והבינו את תחביר C++. בהרצאה הבאה דנו יחד במה שקרה. גישה זו התבררה כיעילה יותר.
אל תחליף מורה לעתים קרובות
היו לנו שני עובדים ערכו סמינרים ב-backend, ושבעה ב-frontend. לא היה הבדל גדול עבור הסטודנטים, אבל המרצים הקדמיים הגיעו למסקנה שכדי ליצור קשר פרודוקטיבי יותר צריך להכיר את הקהל, איך הוא תופס מידע וכו', אבל כשאתה מדבר בפעם הראשונה, הידע הזה לא קיים. לכן, אולי עדיף לא להחליף מורה לעתים קרובות.
שאל שאלות בכל שיעור
לא סביר שתלמידים עצמם יגידו אם משהו משתבש. הם חוששים להיראות טיפשים ולשאול שאלות "טיפשיות", ומתביישים להפריע למרצה. זה מובן, כי כבר כמה שנים שהם רואים גישה אחרת ללמידה. אז אם זה קשה, אף אחד לא יודה בזה.
כדי להפיג מתח, השתמשנו בטכניקת ה"פיתוי". עמיתו של המרצה לא רק עזר, אלא גם שאל שאלות במהלך ההרצאה והציע פתרונות. סטודנטים ראו שמרצים הם אנשים אמיתיים, אפשר לשאול אותם שאלות ואפילו להתבדח איתם. זה עזר לנטרל את המצב. העיקר כאן הוא לשמור על איזון בין תמיכה להפרעה.
ובכן, אפילו עם "פיתוי" שכזה, עדיין תשאלו על הקשיים, תבררו עד כמה עומס העבודה מתאים, מתי ואיך הכי טוב לנתח את שיעורי הבית.
ערכו פגישה לא רשמית בסוף
לאחר שקיבלנו את הבקשה הסופית בהרצאה האחרונה, החלטנו לחגוג עם פיצה ופשוט לשוחח באווירה לא רשמית. הם נתנו מתנות לאלה שהחזיקו מעמד עד הסוף, ציינו את חמשת הראשונים ומצאו עובדים חדשים. היינו גאים בעצמנו ובתלמידים, ושמחנו שסוף סוף זה נגמר :-).

אנו מעניקים פרסים. בתוך האריזה: חולצה, תה, פנקס, עט, מדבקות
תוצאות של
16 תלמידים הגיעו לסוף השיעורים, 8 לכל כיוון. לדברי פרופסורים באוניברסיטה, זה הרבה עבור קורסים בעלי מורכבות כזו. שכרנו או כמעט שכרנו חמישה מהטובים, ועוד חמישה יגיעו להתאמן בקיץ.
מיד לאחר השיעור הושק סקר לאיסוף משוב.
האם הסמינרים עזרו לך להחליט על בחירת הכיוון שלך?
- כן, אני אכנס לפיתוח אחורי - 50%.
- כן, אני בהחלט רוצה להיות מפתח קצה - 25%.
- לא, אני עדיין לא יודע מה מעניין אותי יותר - 25%.
מה התברר כיקר ביותר?
- ידע חדש: "אתה לא יכול לקבל את זה באוניברסיטה", "מבט רענן על ה-C++ הצפוף", הדרכה בטכנולוגיות להגברת הפרודוקטיביות - CI, Git, Conan.
- המקצועיות והתשוקה של המרצים, הרצון להעביר ידע הלאה.
- מתכונת הכיתה: הסבר ותרגול.
- דוגמאות מעבודה אמיתית.
- קישורים למאמרים והנחיות.
- מצגות הרצאות כתובות היטב.
העיקר שהצלחנו לספר שאחרי סיום הלימודים באוניברסיטה תהיה לחבר'ה הרבה עבודה מעניינת ומאתגרת. הם הבינו לאיזה כיוון הם רוצים לנוע והתקרבו קצת יותר לקריירה מצליחה בתחום ה-IT.
עכשיו אנחנו יודעים איך לבחור את פורמט ההכשרה המתאים, מה לפשט או להוציא מהתוכנית בכלל, כמה זמן לוקח להתכונן ועוד דברים חשובים. אנו מבינים את המאזינים שלנו טוב יותר; פחדים וספקות נשארים מאחור.
אולי אנחנו עדיין רחוקים מליצור אוניברסיטה תאגידית, למרות שאנחנו כבר מכשירים עובדים בתוך החברה ועובדים עם סטודנטים, אבל עשינו את הצעד הראשון לקראת המשימה הרצינית הזו. ובקרוב מאוד, באפריל, נלך ללמד שוב - הפעם באוניברסיטה הממלכתית של אירקוטסק, איתה אנו משתפים פעולה כבר זמן רב. תאחלו לנו בהצלחה!
מקור: www.habr.com
