Table of Contents
הנוף של הנדסה מחוספסת בקנה מידה
קבוצות פיתוח מבוזרות אינן עוד סידור זמני או ניסוי שוליים.עבור ארגונים הפועלים בקנה מידה, ארגון הנדסי מפוזר ברחבי העולם הוא לעתים קרובות מבנה ברירת המחדל.השינוי מביא יתרונות ברורים: גישה לבריכת כישרון רחבה יותר, עלויות הגיוס מופחתות בשווקים מסוימים, וסביבות מחזורי הפרודוקטיביות של השעה.עם זאת, דרוג מודל זה מעבר קומץ של עובדים מרחוק מציג מורכבות שיכולה לספק, קידוד איכות וסריקה, מערכות קומפונקציה, קבוצות מורכבות, ניהולית, ניהולית, קבוצות תקשורת, ומערכת ניהולית, ניהולית, ניהול עקביות, מערכת ניהולית, מערכת ניהולית, מערכת ניהולית, מערכת ניהולית ומערכת תקשורת ממוקדת, ניהולית, היא דורשות.
מאמר זה מתאר אסטרטגיות מעשיות עבור מנהיגי הנדסה המפקחים על ארגונים מבוזרים של חמישים עד חמש מאות מפתחים או יותר.ההתמקדות היא על דפוסים מעשיים, חוזרים על עצמם כי להפחית את החיכוך, להאיץ את קבלת ההחלטות, ולקיים תרבות הנדסית בריאה בכל אזורי זמן ויבשות.
נקודות הפרידה Core ב- Distributed Development
לפני פריסת פתרונות, זה עוזר לקרוא את נקודות החיכוך הספציפיות כי בקנה מידה לא ליניארי עם גודל צוות ופיזור גיאוגרפי.הבנת הכוחות האלה מאפשר למנהיגים להשקיע במערכי הנגד הנכונים ולא ליישם ייעוץ עבודה מרחוק גנרי שעובד עבור סטארט-אפ בן עשרה אנשים, אלא buckles בקנה מידה.
תקשורת Aסימטריה
בצוות משותף, מידע זורם דרך ערוצים לא רשמיים: שיחות ששמעו, סקיצות לוח לבן, אולמות מלכודות מסדרון בקבוצה גדולה מבוזרת, הערוצים האלה נעלמים.התוצאה היא איסימטריה תקשורת, שבו כמה חברי צוות - בדרך כלל אלה באותו אזור זמן כמו מנהיגות או צוות המוצר - יש גישה יותר קונטקסט מאשר אחרים.סימטריה זו מובילה לעבודה משוכפלת, עדיפויות מזיקות, ופגיעה של אזרחות שנייה אבל שלילית של אזרחות שנייה.
אזור הזמן מתפוגג והחלטה
כאשר צוות משתרע על 12 אזורי זמן או יותר, החלון של חפיפה סינכרונית יכול לכווץ עד שעתיים או שלוש שעות ביום, או אפילו אפס בהתאם להתפלגות.החלטות הדורשות דיון בזמן אמת - ביקורות אדריכלות, תיאום אירועים, תקדימי מסחר בעדיפות - יכול לקחת ימים במקום דקות.התתתתוללות כצוותים צומחות, כי כל שרשרת תלות שעוברת גבול של זמן מציג חצי יום או עיכוב מלא.
תרבות ושפה
קבוצות מחוסמות לעתים קרובות כוללות מהנדסים מרקע תרבותי רב עם נורמות תקשורת שונות. Directness כי מוערך בתרבות אחת ניתן לראות כמבשרת באחרת.שתיקה בפגישה עשויה לסמן הסכמה בהקשר אחד ובלבול או מחלוקת באחר.תקשורת כתובה, עמוד השדרה של עבודה מבוזרת, מעצימה את קצבאות אלה כי טון, הומור, הדגש הם קשים יותר להעביר ללא רמזים חזותיים או אודיו.
קונסולת התיאום ב- Scale
ככל שגודל הצוות עולה, מספר נתיבי התקשורת גדל באופן חד-משמעי.ללא מבנה מכוון, מהנדסים מבלים יותר זמן התאמה למי עושה מה מאשר בעצם לבנות. זה מעל פניות מתגשם בפגישות מוגזמות, חוטי Slack ארוכים, והפצת טקסים מגובשים הסטטוס-update שצורכים אנרגיה ללא שיפור התוצאות.
פרוטוקולי תקשורת שדרגו
הקבוצות המופצות היעילות ביותר מתייחסות לתקשורת כמערכת שתכוונת, לא תוצר לוואי טבעי של גיוס אנשים טובים.הם מקימים פרוטוקולים ברורים המפחיתים את האווירה ולהבטיח שהמידע יגיע לאנשים שזקוקים לה, כאשר הם זקוקים לה.
מטרת ערוץ ומשמעת
מטרות מפורשות לכל ערוץ תקשורת.Slack ערוצים, למשל, צריך להיות מסמך מתועדו הקובע מה שייך לשם ומה לא. AFLT:0 ערוצים הוא לדיון טכני והחלטות לגבי ממשק API ספציפי זה, לא להודעות כלליות או צ'אט חברתי.AFLT:1 הוא לשידורי סטטוס מסונכרוניים, לא לוויכוחים מקטינים.
זמן סינכרוני כ-Scarce
הגנה על זמן סינכרוני אגרסיבי.בקבוצה מבוזרת גדולה, כמה שעות של חפיפה צריך להיות שמור לפעילויות הדורשות אינטראקציה בזמן אמת: עיצוב היערכות על תכונות מורכבות, רטרוספקטיביות אירועים, רטרוספקטיביות קבוצתיות, וקשיים גבוהים בפסווי גבוה לפתרון העדכונים של סטטוס, דוחות התקדמות ותיעוד החלטות שייך בצורת כתובה, לא בוידאו, מנהיגים צריך להתנהג על ידי ביטול של תוכניות חוזרות ונשנות כי הפכו להיות ממוקדים עם מחסומים קצרים, רק עם חסימות, רק עם מחסומים ממוקדים עם מחסומים, רק עם מחסומים ממוקדים, רק עם מחסומים מקודמים, רק עם מחסומים קצרים.
תקני תקשורת כתובים
נדרשת הצעות בכתב עבור החלטות לא-טריאליות.בקשה להערות (RFC) תהליך - נפוץ בפרויקטים קוד פתוח ואומץ על ידי ארגונים הנדסיים גדולים רבים - מכריח את המחבר לבטא את ההקשר, אפשרויות, הפסקות מסחר, המלצה.תבנית בכתב מאפשרת סקירה סינכרונית על פני אזורי זמן ויוצרת פריט שחברי צוות חדשים יכולים להפנות ציפיות לזמנים (לדוגמה, ל-48 שעות) ולתראות קריטריונים ראשוניים (למשל, לא פחות מ- 3 קריטריונים בכירים).
סוללות עבודה ראשונה-סינכרון
התובנה המרכזית מאחורי ניהול קבוצות מבוזרות בקנה מידה גדול היא שעבודה סינכרונית אינה בקנה מידה.אסי-ראשון אינה מתכוונת לעולם לא להיפגש – זה אומר תכנון זרמי עבודה כך שהתקדמות לא תלויה בכל מי שגולש באינטרנט בו זמנית.
מסמך כעמוד השדרה של ביצוע
בארגון ראשון, תיעוד אינו מחשבה; זהו המנגנון העיקרי לתיאום החלטות אדריכלות, חוברות ריצה, מדריכים, מפרט API, וסטטוסים של הפרויקט חיים כולם במרכז, חיפוש, גרסה מבוקרת pository. הבר ליצירת מסמך צריך להיות נמוך, אבל הבר לשמירה על זה צריך להיות מאויש.
משימות טרנסג'נדרים
השתמש בכלים לניהול פרויקטים המספקים חשיפה למצב עבודה מבלי לדרוש פגישות סטטוס.Jira, Linear או GitHub פרויקטים יכולים לשרת את התפקיד הזה, אבל הכלי משנה פחות מהמשמעת.כל משימה צריכה להיות בעלים ברורים, קריטריונים קבלה בכתב, וקישור להקשר הרלוונטי.מנהיגים צריכים להתנגד לדחף לבקש מעמדי; במקום זאת, הם צריכים להסתכל על לוח ולשאול שאלות ממוקדות על פריטים ספציפיים המופיעים או לא ברורים כדי לשמור על התנהגות זו.
« « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « « «
זרימות עבודה עיצוב שמשתפות את ההבדלים באזור הזמן במקום להילחם בהם.צוות באירופה יכול לנתק את העבודה לצוות באמריקה בסוף היום האירופי, והצוות האמריקאי יכול להמשיך את העבודה במהלך היום שלהם ולדחוף אותה בחזרה.מודל "אחרי השמש" עובד היטב עבור פעולות, בדיקות, סוגים מסוימים של פיתוח תכונה, אבל זה דורש פרוטוקולי היד צלולים: מדינה המתועדת, פתוח שאלות לפני כל פעם, ופרקים את הידיים, לפני כל פעם.
כלי ותשתית לפיתוח Distributed
החלטות כלי הרכב השפיעו על קבוצות גדולות מבוזרות, כי הכלים לתווך כמעט את כל האינטראקציה.בחירת הפלטפורמה הלא נכונה או לא לקבוע אותה כראוי יכול להציג חיכוך המשפיע על עשרות או מאות מהנדסים מדי יום.
שיתוף פעולה וקוד
ג'יט נשאר תקן, אבל זרימת העבודה סביב זה חשוב.מונורופו מול פולירופו, אסטרטגיה מתפתלת, וקוד ביקורת קוד כל צריך להיות מפורש ותיעוד. עבור קבוצות מבוזרות גדולות, פיתוח מבוסס הגזע עם ענפים קצרים תכונה מופחתת התנגשות ושומר על מחזור האינטגרציה הדוק.קוד צריך להיות כ- nc הראשון: אין לצפות להפחתה מה הם עושים כדי למשוך שירות אחד בתוך דקות, אבל צריך להיות בדיקה עסקית ברורה.
CI/CD ו-סביבה
צוותים מחוסנים נאבקים עם הסביבה חוסר עקביות.מהנדסים במקומות שונים עשויים להיות בעלי הגדרות מקומיות שונות, וללא צינור CI /CD עקבי, "זה עובד על המכונה שלי" הופכת לבעיה חוזרת. להשקיע במיכל (דוקר, Kubernetes) לפיתוח המקומי ובדיקה, ואכיפת כל הקוד חייב לעבור CI לפני שהוא יכול להיות ממוזג.
שיתוף פעולה Platforms
Slack או Microsoft Teams for chat, זום או גוגל Meet for video, ו-Wiki או בסיס ידע (השפעה, Notion, מערכת תיעוד מבוססת Git) יוצרים את ערימה הליבה.המפתח אינו הכלי הספציפי, אלא שילוב ביניהם.לדוגמה, קישור בקשות למשימות, קישור משימות לתכנון מסמכים, וקישור מסמכים למטרות צוות.
עבור צוותים ניהול פריסות טוריטוס בקנה מידה גדול, אותם עקרונות חלים על שכבת הנתונים.אסמה עקבית, הרשאות מתועדות, ואסטרטגיה ברורה של דוגמנות תוכן להפחית את התיאום בין קבוצות אחוריות וחזיתיות.
בניית תרבות צוות בכל האזור
תרבות אינה פוסטר על הקיר או על קבוצה של ערכים על דף קריירה.תרבות היא מערכת התנהגויות שמתגמלות, נסבלות ונחושות.בקבוצה גדולה מבוזרת, תרבות חייבת להיות מעובדת במכוון משום שהיא לא תצא באופן אורגני מהחלל הפיזי המשותף.
Intentioning
השבועות הראשונים של מהנדס חדש בצוות מבוזר הם קריטיים.ללא תהליך מארגן, שוכרים חדשים יכולים להרגיש מבודדים ומומים.אסים חבר מסור על לוח מי אינו המנהל הישיר שלהם.ספק תוכנית כתובה על לוח התכנון המכסה את ההתקנה של כלי, נורמות צוות, מסמכים מרכזיים לקרוא, ורשימת אנשים לפגוש אחד על אחד, אחד על אחד שיחות וידאו.
אינטראקציה חברתית סינכרונית
הקשר החברתי אינו חייב לקרות באופן סינכרוני.לעודד ערוצים סינכרוניים לאינטראקציה לא-עבודה: ערוץ לשיתוף תמונות מסביבות מקומיות, ערוץ להמלצות ספרים, ערוץ לחגיגת אבני דרך אישיות.זמן מדי פעם שיחות חברתיות אופציונליות שמסובכות את הזמן כדי להתאים אזורי זמן שונים.המטרה היא להפוך את הקולגות בצד השני של המסך, אשר בונה אמון ושיחות קלות יותר.
הכרה בכך שצלבת את אזורי הזמן
תוכניות לזיהוי לעתים קרובות כברירת מחדל לאזור הזמן של צוות המנהיגות.מהנדסים באזורי זמן רבים עשויים לראות אישורים שפורסמו שעות לאחר יום העבודה שלהם הסתיים, או אולי להתעלם לחלוטין כי התרומות שלהם מתרחשות מחוץ לחלון הנראות של מנהלים.לתקן זיהוי עיצוב מנגנונים כי הם אסימונים: ערוץ עבור צעקות עמיתים, סיכום חודשי של תרומות מכל אזור זמן, וסיבוב של מתנות בכל המפגשים כל כך לא לשלוט באזור.
מנהיגות היא הדרגה
ניהול צוות מבוזר של חמישים מהנדסים דורש שריר מנהיגות שונה מאשר ניהול צוות משותף של עשרה.מנהיגים חייב להשתנות מלהיות המרכז המרכזי של מידע להיות אדריכלים של מערכות שמחלקות מידע וסמכות קבלת החלטות.
קללות של מטרות וקונטקסט
בצוות משותף, ההקשר דולף דרך הקרבה.בקבוצה גדולה מבוזרת, יש לדחוף את ההקשר בכוונה. לכתוב מטרות ברורות, מטרות מדידה עבור הצוות בכל רמה: לארגון יש קו רוחב רבעון OKR, לכל קבוצה יש הצהרת משימה, לכל פרויקט יש הגדרה ברורה וקריטריונים להצלחה.כאשר מטרות הן חד משמעיות, קבוצות מבוזרות נוטות לפרש אותן באופן שונה, מובילות לתפוקה עקבית ותפוקה חוזרת.
התנגדות לאמון, לא לחיסול
מיקרומנטנציה אינה אפשרית בקנה מידה, אבל החלופה אינה מנהיגות מעשית.משלחת יעילה בהקשר מבוזרת פירושה הצבת גבולות ברורים – הנה התוצאה הצפויה, הנה המגבלות הבלתי ניתנות להשגה, הנה סמכות ההחלטות שיש לך – ואז באמת לזרז את מנהיגי צריך להתמקד בהסרת חוסמי, לספק משאבים, ולשאול שאלות אימון ולא לקבל החלטות שהצוות יכול לעשות את עצמו.
המונחים: Feedback Loops
משוב בקבוצות מבוזרות הוא לעתים קרובות נעדר או נמסר עני כי משוב כתוב חסר טון משוב בזמן אמת מוגבל על ידי אזורי זמן.מכון משוב מובנה: שבועי אחד על אחד כי הוא בעיקר שיחה אימון, עדכון חודשי בכתב ממנהל לדווח, וסקירה ביצועים רבעונית עם הריסות ברורות. השתמש בכלי קל לאיסוף משוב מסונכרן.
« להעריך מה שחשוב
מדידה בצוותים מבוזרים יכולה בקלות להפוך למלכודת.התרגילים של פעילות - שורות קוד, להתחייב ליום, שעות באינטרנט - הם קלים לעקוב וכמעט תמיד מטעה.
משלוח Metrics
זמן מחזורי מעקב מהרעיון לייצור, תדירות הפריסה ושינוי קצב הכשל.מדדים אלה הם עצמאיים מאזור זמן ומשקף את זרימת הערך בפועל למשתמשים. צוות שמפרסמת לעתים קרובות עם שיעורי כשל נמוכים הוא בריא ללא קשר להיכן נמצאים מהנדסים בודדים.
בריאות צוות
קבוצות מחוסמות הן פגיעות לשרוף, בידוד, ועיוות. השתמש בסקרים אנונימיים למחצה כדי למדוד מעורבות, בטיחות פסיכולוגית, בהירות של מטרות.עקוב אחר קצב התגובה כדי להבטיח כי האזורים השקטים יותר נשמעים.
רטרוספקטים כמעשה מחוספס
רטרוספקטים הם חיוניים לשיפור מתמשך, אבל הם מאתגרים כאשר צוותים מופצות. השתמש בתהליך רטרוספקטיבי מובנה ראשון: מסמך משותף שבו חברי הצוות מוסיפים תצפיות לפני דיון סינכרוני, או כלי כמו רטרו או פטריות המאפשרים תרומה אסימונים. רוטט את הזמן של הרכיב הסינכרון כך שאף צוות לא תמיד הוא אחד המשתתפים מאוחר בלילה.
סיקור Beyond One Team
ברגע שארגון מגיע למאות מהנדסים, האתגרים עוברים מתיאום ברמה של צוות לאדריכלות ברמה ארגונית.האסטרטגיות שעובדות עבור צוות מבוזר יחיד צריך להיות משוכפל על פני קבוצות מרובות, עם מורכבות נוספת סביב תלויות צוות, שירותים משותפים ועיצוב מערכת כללי.
Team Topology
צוותי ארגן סביב ההקשרים המוערכים.עקרונות העיצוב של Domain חלים על מבנה הצוות כמה שיותר קוד. לכל קבוצה צריכה להיות משימה ברורה, אזור כבול בבעלות, וממשק מוגדר היטב עם קבוצות אחרות.זה מקטין את הצורך בתקשורת בין חברי צוות כי צוותים יכולים להתקדם בתוך התחום שלהם ללא היערכות מתמדת.
פלטפורמה ותשתית משותפת
להשקיע צוות פלטפורמה המספק כלים פנימיים, צינורות CI /CD, ספריות משותפות וסביבת פיתוח.כאשר כל צוות צריך לפתור את אותן בעיות תשתית באופן עצמאי, תיאום מבוזר הופך לצוואר בקבוק. צוות פלטפורמה משותף שיטות הטובות ביותר ומפחית את העומס הקוגניטיבי על קבוצות תכונה.
עבור ארגונים המשתמשים ב-Directus כפלטפורמת תוכן, הקמת דפוסים משותפים לתכנון סכימה, בקרת גישה מבוססת תפקידים ופיתוח הרחבה משלמת דיבידנדים גדולים כמו סולם הצוות. תקן פנימי מתועדו מקטין את הזמן שהושקע על מנת לעבור צוות וביקורת.FLT:0Directus useמקרים של FLT:1 להציע דפוסים כי קבוצות גדולות יכולות להתאים לצרכים שלהם.
קהילה של תרגול
יצירת קבוצות צוות הצלב מאורגנות סביב דיסציפלינות טכניות: אדריכלות החזית, שיטות בדיקה, אבטחה, ביצועים. קהילות אלה לחלוק ידע, ביקורת RFCs, ולהגדיר סטנדרטים החלים ברחבי הארגון.הם בעלי ערך מיוחד בסביבות מבוזרות כי הם יוצרים קשרים חותכים את גבולות הצוות ולהפחית את סילולוס הידע.
צעדים ראשונים להנדסת מנהיגות
אם אתה מוביל צוות פיתוח מבוזר בקנה מידה גדול מרגיש כי תיאום מעל הראש הוא לאכול זמן פרודוקטיבי, להתחיל עם שלושה פעולות קונקרטיות שאינן דורשות ארגון מחדש מלא.
ראשית, בדוק את תרבות הפגישה של הצוות שלך.עקוב אחר כמה שעות בשבוע מושקעות בפגישות סינכרוניות, וקטגור כל פגישה כקבלת החלטות, שיתוף מידע או חיבור חברתי.לבטל או להמיר ל אסימונים כל פגישה שהיא בעיקר שיתוף מידע.
שנית, להשקיע בבסיס תיעוד.זהה את חמשת המסמכים הקריטיים ביותר שהצוות שלך צריך אבל אין - למשל, סקירה ארכיטקטונית מערכתית, מדריך על לוח מודעות, יומן החלטות וקבוע מועד אחרון.
שלישית, ליצור פרוטוקול תקשורת מפורש לקבלת החלטות . Define מה מהווה החלטה הדורשת RFC בכתב מול החלטה שניתן לעשות בחוט Slack. הגדר תקופת ביקורת מינימלית עבור RFCs (לדוגמה, 48 שעות) ו- ברירת מחדל אם אין להגיע לקונצנזוס.
מסקנה
פיתוח מבוזר בקנה מידה גדול אינו בעיה לפתור ולאחר מכן נשכח.זה מערכת הדורשת תשומת לב מתמשכת, מדידה והתאמה. הקבוצות שמצליחות הן אלה שמתייחסות מרחוק כאימפרמנט עיצוב ולא אי נוחות זמנית. הם בונים פרוטוקולים תקשורת המפחיתים את השקיע, זרימות עבודה שמכבדות את ההבדלים באזור הזמן, ותרבויות הכוללות מהנדסים ללא קשר להיכן הם יושבים.
האסטרטגיות המפורטות כאן אינן ממצה, אך הן מספקות נקודת התחלה למנהיגים רציניים בלעשות עבודה מבוזרת בת קיימא בקנה מידה.המטרה אינה לשכפל את החוויה של צוות משותף.המטרה היא לבנות צוות מבוזר יעיל, גמיש, ומקום נהדר לעבוד - לכולם, בכל אזור זמן.
לקריאה נוספת על שיטות צוות מבוזר בקנה מידה, FLT:0GitLab של כל המניעה ידה של ההרחבה 1:1 מספק התייחסות ציבורית מקיפה, ו-FLT:2Atlassian של צוות משחקים מבוזרים של Atlassian מציע תרגילים ותבניות מעשיות.