CodeGym /בלוג Java /Random-HE /סיפור לקהל בני 30+
John Squirrels
רָמָה
San Francisco

סיפור לקהל בני 30+

פורסם בקבוצה
ובכן, מצאתי זמן בידיים שלי לשתף את הסיפור הקטן שלי.

פּרוֹלוֹג

נתחיל מזה שאני בן 30, בעל השכלה גבוהה בכימיה (לא אפרט), ואני עובד במפעל כמעט 8 שנים. העבודה דווקא הייתה מעניינת למדי, אבל בהסתכלתי על חברי לעבודה, הבנתי שאני לא רוצה לעבוד כאן עשרים שנה עד הפנסיה. זו לא הדרך שבה אני רוצה לבלות את חיי. אני גם רוצה להוסיף שיש לי משפחה, כולל שני ילדים (הגדול שלי בן 6, הקטן בן שנה), וכצפוי, משכנתא. לבסוף החלטתי לנסות לעבור למקום אחר, למפעל אחר עם שכר גבוה יותר וצמיחה אמיתית בקריירה. הנחתי שורשים במפעל הראשון, אז היה קשה לעזוב, אבל החלטתי. הטיול שלי לסנט פטרסבורג נמשך חודש. הייתי שם בתפקיד רשמית במשך שבוע כשהבנתי שהמצב עם מפעלים בארצנו (סביאטוסלב מרוסיה - הערת המערכת) עגום ברובו. חזרתי לעיר הולדתי. לא רציתי לחזור, שכן נראה לי שמדובר בצעד אחורה. בשלב זה, החלטתי שאם אשנה את חיי - ואשנה אותם באופן קיצוני! במשך כשבוע התלבטתי באיזו שפת תכנות לבחור, ובכן, הבחירה נפלה על ג'אווה. לאחר מכן התחלתי לחפש קורסים. המציאות היא שיש הרבה קורסים טובים, חלקם אפילו במחירים סבירים, אבל הייתה לי בעיה: הייתה לי מוטיבציה גדולה והיה לי הרבה זמן ללמוד, אבל הכרית הכלכלית שלי תחזיק מעמד לכל היותר 3-4 חודשים. כל הקורסים שאהבתי היו למשך חצי שנה או יותר עם שני שיעורים בשבוע (לרוב). אבל אז חברה המליצה לי על CodeGym לאחר ששמעה שזה משאב טוב מאוד. ראיתי שבקורס הזה יש את כל מה שאני צריך:
  • מנוי עם חומרי למידה ומשימות;
  • ללא מגבלות זמן - יכולתי ללמוד בדיוק כפי שלוח הזמנים שלי (שהיה פתוח לרווחה) והרצון שלי (כפי שאמרתי למעלה, הייתי בעל מוטיבציה גבוהה) יאפשר.

חלק 1: בחיפוש אחר ידע

ב-26 בנובמבר 2019 נרשמתי והתחלתי את לימודיי. אני אגיד מיד שהיו ימים שבהם ישבתי 14 שעות רצופות, למדתי, קראתי את כל הקישורים הקשורים, וניסיתי למצוא פתרונות יפים יותר (בלי להציץ בעזרה). רק כשחשבתי שהפתרון שלי הוא הטוב ביותר, הסתכלתי על העזרה. לא פעם נדהמתי מהפתרונות שהיו אפילו יותר יפים ותמציתיים. בסוף ינואר, כשהגעתי לרמה 17, החלטתי להתחיל ללכת לראיונות, להדביק את הכישורים שלי ולראות מה השוק בכלל רוצה. כפי שקרה, אף אחד לא ממש הגיב לי, אבל היה משרד אחד שקיבל אותי כמתמחה על תנאי ללא שכר: החודש הראשון ללא שכר, השני והשלישי כללו קצבה קטנה. לאחר מכן יהיה ראיון נוסף על סמך הביצועים שלי לאחר שלושה חודשים, ואם ההתמחות הייתה מוצלחת - אז תעסוקה.

חלק 2: ממהרים לקרב

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

ערימת טכנולוגיה:

Java 11 (הפרויקט נכתב לגמרי מאפס), Spring (אתחול, אבטחה, OAuth2); השתמשתי ב- MongoDB עבור מסד נתונים; לבדיקות אוטומטיות, השתמשתי ב-AssertJ, Mockito ו-Spring-boot-starter-test; והשתמשתי בזרימת GitHub הפופולרית למדי (ראה מאמר זה ). אגב, אם אתה נאבק באנגלית, זה הזמן לייעץ לך ללמוד אותה. רמת השטף שלי היא A2, אבל אני תמיד משתדל לקרוא מאמרים באנגלית (בלי להשתמש במתרגם, כמובן). זה היה הקושי הגדול ביותר שלי כשהתחלתי את פרויקט ההתמחות, כי הייתי צריך לעבוד עם CRM של צד שלישי, וכל התיעוד שלו היה באנגלית. כמו כן, כשעובדים עם Spring, עדיף לקרוא את התיעוד המקורי. זה מאוד טוב ומפורט. מה גם שכמעט כל התיעוד הוא באנגלית (קצת מ-Captain Obvious). כמו כן, המנטור שלי אמר לי לכתוב את כל ההערות בקוד ובתיעוד ה-API באנגלית, אז אני חוזר שוב: למד אנגלית, אם אינך דובר שפת אם! גם אם אתה לא הולך לעבוד עם לקוחות זרים או לנסוע לחו"ל, המיומנות הזו פשוט תפשט מאוד את הלימוד וההתפתחות שלך.

חלק 3: תוצאה

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

חלק 4: היה סוף טוב, למרות שהדברים רחוקים מלהסתיים ;)

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

אֶפִּילוֹג

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

הנה כמה מאמרים שאני רוצה לשתף:

  • הבנת ארכיטקטורה . אני אישית קראתי את המאמר הזה 4 פעמים בדיוק בזמן שעבדנו על הארכיטקטורה של יישום עתידי. אני משתמש במילה "אנחנו", כי המנטור שלי בדק הכל ושלח אותו בחזרה לתיקונים (כלומר הוא עשה ביקורות קוד). בפעם הראשונה לא הבנתי הרבה. אחר כך קראתי אותו 3 חודשים לאחר מכן, וגיליתי שהבנתי למה. מאוחר יותר, קראתי אותו עוד 2 פעמים על מנת לגבש ולהטמיע במלואו את כל המידע.
  • לימוד Git אינטראקטיבי .
  • אני ממליץ לכולם ללמוד איך לעבוד עם זרמים. הם באמת מפוארים: לעתים קרובות אתה יכול להחליף נפחים אדירים של קוד בזרם קטן.
  • תיעוד אביב.
  • מכיוון שעבדתי עם מסד נתונים לא יחסי, ורוב החברות (במיוחד הגדולות) עובדות עם SQL, בזמני הפנוי ניסיתי לפתור לפחות כמה בעיות הקשורות לבניית שאילתות SQL. יש הרבה אתרים שונים בשביל זה.
  • הייתי ממליץ לקרוא גם על כתיבת מבחנים (Assertj, Mockito), אבל אני לא זוכר מאמרים טובים, רק תיעוד.
  • וכשאתה מפתח אפליקציה (אבל עכשיו אנחנו מעבר לרמת מתחילים), נסה להשתמש בדפוסי עיצוב . לפחות תסתכל במהירות על דפוסים ידועים. זה יהיה שימושי כשאתה מתחיל.
שוב, אני מאחל לכולכם בהצלחה בהגשמת חלומותיכם!
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION