MeCoder הכניסה לעולם התכנות


איך למצוא עבודה כמתכנת?

get a job image under license, created by appeny

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

לפני שנדבר על מהי הגישה הנכונה, קודם כל צריך להבין למה כל כך הרבה בוגרי מדעי המחשב מתוסכלים מכך שהם לא מצליחים למצוא עבודה, אם תיכנסו לקבוצה "משרות הייטק ושיווק ללא ניסיון" (קבוצה שאני מאוד מעריך, בעיקר את תרומתו של העומד בראשה) תגלו אינספור פוסטים בסגנון "כולם מחפשים מצטייני דיקן בוגרי אוניברסיטה נחשבת, כמה כאלה כבר יש בארץ???" או "כולם מחפשים מתכנתים עם ניסיון. זה אבסורד! אין דרך להשיג ניסיון!!!". אז אני אנסה לפשט לכם את זה. רוב משרות התכנות אכן דורשות ניסיון של כמה שנים טובות מסיבה מאוד ברורה – הם צריכים מישהו שיכול לבצע ללא צורך בהדרכה או בליווי רב של המנהלים שלו. תחשבו על סטארט-אפ לדוגמא, יש לו רעיון מצוין (לכולם יש רעיונות מצוינים...) והוא צריך להוציא אותו לפועל בזמן הקצר ביותר, אין זמן או יכולת להתחיל ללמד אתכם איך לעבוד ולשפר את יכולותיכם. הם כמובן מוכנים לשלם בתמורה לא מעט כסף, העיקר שיוכלו להראות תוצאות בזמן הקצר ביותר. אז מי כן יכול להתאים לכם? מי כן מחפש מתכנתים חסרי ניסיון? חברות שמחזיקות תמהיל כלשהו של מתכנתים עם ניסיון רב ומתכנתים חסרי ניסיון. למה שהם יחזיקו תמהיל שכזה? זה פשוט - משיקולי תקציב. לשמחתנו, מתכנתים עם ניסיון מרוויחים לא מעט כסף, דבר שיוצר לחץ פיננסי על חלק מהחברות ו"מכריח" אותן לשכור מתכנתים חסרי ניסיון שעולים להם הרבה פחות.

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

אז עם מי נשארנו?

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

חשוב לציין גם שבתור מתכנת מתחיל יש מספר יתרונות מובהקים בלעבוד בחברת פרויקטים:

  1. בעקבות התמהיל הנ"ל בין מתכנתים חסרי ניסיון לבין מתכנתים עתירי ניסיון, בחברות אלו יש תרבות חזקה של העברת ידע מהמנוסים ללא מנוסים. הרווח כולו שלכם.
  2. עוד יתרון הנובע מהתמהיל הזה הוא שבהתחלה תקבלו משימות פשוטות יחסית, כגון עבודות HTML ו-CSS ופחות דגש על Javascript. זה ייתן לכם כניסה הרבה חלקה לתחום וגם יבנה לכם את היסודות בהיררכיה הנכונה. יותר חשוב שקודם תדעו HTML ו-CSS ברמה טובה ורק אז תיכנסו לעומק של Javascript.
  3. גיוון – חברות פרויקטים מתעסקות במגוון רחב של פרויקטים. כתוצאה מכך תיחשפו ותרכשו מגוון רחב של כלים ויכולות, וגרף הלימוד שלכם יהיה בעל שיפוע תלול במיוחד.

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

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

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

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

וכמובן... בהצלחה!