ללמוד תכנות לבד: מסלול מעשי ל-12 חודשים
זמן קריאה: 4 דקות
למידה עצמית עובדת, והיא גם הדרך שבה הכי הרבה אנשים נושרים. ההבדל בין השניים כמעט אף פעם אינו כישרון - הוא סדר הנושאים, גודל הפרויקטים, והאם יש דד-ליין חיצוני כלשהו. המסלול כאן בנוי סביב שלושת אלה.
לפני הכל: לבחור יעד, לא שפה
השאלה "איזו שפה ללמוד" היא השאלה השנייה. הראשונה היא איזה סוג תפקיד אתם רוצים, כי השפה נגזרת ממנו כמעט תמיד. מי שמכוון לפיתוח צד שרת, לדאטה ולאוטומציה יגיע לשפה אחת; מי שמכוון לממשק משתמש יגיע לאחרת.
אפשר לראות את זה בביקוש עצמו: בלוח שלנו 365 משרות מזכירות Python לעומת 44 משרות שמזכירות JavaScript ו-20 שמזכירות React - אבל ההבדל אינו "מה עדיף", אלא שהן משרתות עולמות שונים. הדירוג המלא נמצא במאמר על שפות התכנות המבוקשות.
בחרו יעד אחד לשנה. אפשר לשנות בהמשך, אבל אי אפשר ללמוד שלושה במקביל ולהגיע לרמה שמספיקה לראיון באף אחד מהם.
המסלול, לפי רבעונים
| תקופה | המטרה | סימן שאפשר להתקדם |
|---|---|---|
| חודשים 1-3 | יסודות השפה, מבני נתונים בסיסיים, שורת פקודה | אתם כותבים תוכנית של 100 שורות בלי מדריך |
| חודשים 4-6 | פרויקט ראשון מקצה לקצה, Git, קריאה מ-API | הפרויקט רץ אצל מישהו אחר, לא רק אצלכם |
| חודשים 7-9 | מסד נתונים, בדיקות, פריסה לשרת | אתם מתקנים תקלה בייצור בלי לכתוב הכל מחדש |
| חודשים 10-12 | קוד של אחרים, פרויקט שני, הכנה לראיונות | אתם מסבירים החלטה בקוד ולמה לא בחרתם אחרת |
העמודה הימנית חשובה יותר מהשמאלית. מי שמתקדם לפי לוח זמנים ולא לפי סימנים מגיע לחודש התשיעי בלי בסיס, וזו הנשירה הקלאסית.
למה הרבעון השני הוא זה שמפיל
בשלושת החודשים הראשונים יש תחושת התקדמות: כל שיעור מוסיף יכולת חדשה. ברבעון השני זה נגמר. הפרויקט הראשון נתקע על דברים שלא לימדו אתכם - הודעת שגיאה לא מובנת, ספרייה שלא מתקינה, קוד שעבד אתמול. זה לא סימן שאתם לא מתאימים; זה בדיוק העבודה.
שלושה דברים שמקטינים את הסיכון. הראשון: לבחור פרויקט קטן בטירוף - קטן יותר ממה שנראה לכם הגיוני. השני: לעבוד עם Git מהיום הראשון, כדי שתמיד אפשר לחזור לגרסה שעבדה. השלישי: לקבוע לעצמכם דד-ליין חיצוני, למשל להראות את הפרויקט למישהו בתאריך מסוים.
ההיכרות עם Git אינה נושא צדדי אלא חלק מהמקצוע, והיא נבדקת בראיונות לדרג כניסה. המינימום הנדרש קטן ממה שנדמה: להתחיל מאגר, לשמור גרסאות, לחזור אחורה ולעבוד בענף נפרד.
כמה שעות בשבוע זה ריאלי?
הגורם שמנבא הצלחה אינו מספר השעות אלא הרציפות. עשר שעות בשבוע לאורך שנה מייצרות תוצאה טובה יותר מעשרים שעות בחודשיים ואפס אחר כך, כי תכנות נשען על זיכרון עבודה שמתפוגג מהר.
מי שעובד במשרה מלאה צריך לתכנן ריאלית: שעה ביום חמישה ימים בשבוע, ובלוק ארוך אחד בסוף השבוע לפרויקט. זה מסתכם בשנה שהיא באמת שנה, ולא בשלושה חודשים דחוסים שמסתיימים בשחיקה.
איך יודעים שאפשר להתחיל להגיש?
- יש לכם פרויקט שמישהו אחר הריץ ולא רק צילום מסך.
- אתם יודעים לקרוא קוד שלא כתבתם ולהסביר מה הוא עושה.
- אתם מתקנים באג בלי לשכתב הכל - זה המבחן האמיתי.
- אתם מסבירים החלטה טכנית, כולל מה לא בחרתם ולמה.
- אתם עובדים עם מסד נתונים ולא רק עם קבצים; 133 משרות בלוח מזכירות SQL, והוא נבדק כמעט בכל ראיון.
לא צריך להגיע לכל החמישה כדי להתחיל להגיש - כדאי להתחיל קצת לפני שמרגישים מוכנים, כי תהליכי גיוס לוקחים זמן ממילא.
מה לא צריך בשנה הראשונה
שלושה דברים שגוזלים זמן ולא מקדמים: מעבר בין שפות אחרי חודש בכל אחת; לימוד מעמיק של תיאוריה לפני שכתבתם משהו שעובד; ורכישת קורסים נוספים כתחליף לישיבה מול הקוד. מי שיש לו שלושה קורסים לא גמורים לא צריך רביעי.
גם ההסמכות יכולות לחכות. בשלב הזה תיק עבודות שווה יותר, וזה נכון גם למי שמכוון לענן או לתשתיות. אם בכל זאת שוקלים, המאמר שלנו על פרויקטים לפורטפוליו שמרשימים מגייסים מסביר מה עושה פרויקט לשווה.
שאלות נפוצות
אפשר למצוא עבודה בלי תואר ובלי קורס?
אפשר, וזה קשה יותר. מה שמחליף את שניהם הוא הוכחה בדמות קוד שעובד וניסיון בעבודה על קוד של אחרים. שימו לב שרוב המודעות אינן מזכירות תואר בכתב, אך זה לא אומר שאין סינון בפועל.
איזה פרויקט לבחור?
כזה שפותר בעיה שאתם מכירים מהחיים או מהעבודה הקודמת. פרויקט כזה גם קל יותר לסיים, גם קל יותר להסביר בראיון, וגם מבדל אתכם ממאה מועמדים עם אותו תרגיל מהקורס.
האם כלי AI עוזרים או מזיקים ללמידה?
תלוי מתי. בשלב שבו אתם לומדים מושג חדש, קבלת קוד מוכן מדלגת בדיוק על החלק שבונה יכולת. בשלב שבו אתם כבר מבינים והצוואר הוא מהירות, הם עוזרים. כלל אצבע: אם אינכם יכולים להסביר את הקוד שקיבלתם, עוד לא למדתם אותו.
כמה זמן באמת לוקח?
שנה של למידה רציפה מביאה רוב אנשים לרמה שאפשר להגיש בה מועמדות לדרג כניסה. זה טווח ולא הבטחה, והוא תלוי בשעות, ברקע קודם ובאיכות הפרויקטים - לא בקצב שנראה ברשתות.
האם ללמוד לבד פוגע בסיכוי מול בוגרי קורס?
לא מהותית. בראיון בודקים יכולת, לא מקור. מה שכן חסר ללומד עצמאי הוא מסגרת ורשת קשרים, ולכן שווה להשלים אותם בקהילות ובמפגשים מקצועיים.