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

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

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

apple-iphone-books-desk-in-article

מה זה Full Stack?

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

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

מה זה  Full Stack WordPress Developer?

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

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

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

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

זה דבר עם שונות די גדולה בסך הכול. שאלו עשרה מפתחי וורדפרס מה צריך לדעת בשביל להיחשב בעיניהם  FULL STACK וודאי תקבלו עשרה רשימות שונות במידה כזו או אחרת, של כישורים שונים. אולם אישית, באופן הכי כללי ובסיסי, הייתי אומר שצריך הכרות טובה עם CSS, HTML, PHP, WORDPRESS CODEX ו- JQUERY.

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

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

סיכום

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

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

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

אהבתם את המאמר? הרשמו לעדכונים!

מאמרים נוספים שאולי יעניינו אותך
4 תגובות
  1. יובל הולצמן

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

    • יובל כץ

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

  2. דנית

    אחלה פוסט. בהיר , נגיש ולעניין. תודה !

  3. אלי

    לא מזמן נכנסתי למשרדי ג׳ון ברייס במטרה להרשם לקורס .netאבל כיוון שקורס כזה לא נפתח בקרוב הציעו לי קורס full stack באורך של 300 שעות, אני עדיין בדילמה האם להרשם והאם תהיה לי תעסוקה בתחום. יש למישהו עצה?

השארת תגובה ל-דנית

ביטול