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