GitScrum / Docs
All Best Practices

Remote Collaboration | Async-First Practices

Enable distributed teams to collaborate effectively with async-first workflows. GitScrum supports remote teams across timezones.

6 min read

Remote work requires intentional practices that in-office teams take for granted. Successful remote collaboration isn't about replicating the officeβ€”it's about building better systems for communication, coordination, and connection that work across distances and timezones.

Remote Collaboration Principles

In-Office DefaultRemote Intentional
Quick questionsWritten requests
Walk-up interruptsAsync by default
Overhear contextDocument everything
Lunch togetherSchedule social time
Impromptu meetingsStructured agendas

Async-First Communication

Communication Channels

COMMUNICATION CHANNEL GUIDE
═══════════════════════════

INSTANT MESSAGING (Slack/Teams):
β”œβ”€β”€ Quick questions (not urgent)
β”œβ”€β”€ Social chat
β”œβ”€β”€ Time-sensitive coordination
β”œβ”€β”€ Response expected: 4 hours

EMAIL:
β”œβ”€β”€ External communication
β”œβ”€β”€ Formal/documented decisions
β”œβ”€β”€ Non-urgent announcements
β”œβ”€β”€ Response expected: 24 hours

GITSCRUM TASKS:
β”œβ”€β”€ Work requests and assignments
β”œβ”€β”€ Status updates
β”œβ”€β”€ Technical discussions about work
β”œβ”€β”€ Response expected: 1 business day

GITSCRUM NOTEVAULT:
β”œβ”€β”€ Documentation
β”œβ”€β”€ Meeting notes
β”œβ”€β”€ Decisions and ADRs
β”œβ”€β”€ Permanent reference

VIDEO CALL:
β”œβ”€β”€ Complex discussions
β”œβ”€β”€ Relationship building
β”œβ”€β”€ Sensitive topics
β”œβ”€β”€ Scheduled in advance

PHONE/URGENT:
β”œβ”€β”€ Production emergencies
β”œβ”€β”€ Personal emergencies
β”œβ”€β”€ Truly can't wait
β”œβ”€β”€ Rare (define what qualifies)

Writing for Async

EFFECTIVE ASYNC COMMUNICATION
═════════════════════════════

INSTEAD OF:
"Hey, can you look at this?"
"Got a minute?"
"Quick question..."

WRITE:
─────────────────────────────────────
**Context:** Working on GS-234, login API
**Question:** Should we use JWT or session tokens?
**What I've considered:**
- JWT: Stateless, but token revocation harder
- Sessions: More traditional, need Redis
**Preference:** JWT with short expiry + refresh
**Timeline:** Need decision by EOD Thursday
**Action:** Your thoughts when you have time
─────────────────────────────────────

ELEMENTS OF GOOD ASYNC MESSAGE:
β”œβ”€β”€ Context (what you're working on)
β”œβ”€β”€ Complete question (not just "help")
β”œβ”€β”€ What you've already tried/considered
β”œβ”€β”€ Your recommendation if you have one
β”œβ”€β”€ Timeline/urgency level
β”œβ”€β”€ Clear ask (what do you need)

Response Expectations

RESPONSE TIME AGREEMENTS
════════════════════════

TEAM AGREEMENT TEMPLATE:
─────────────────────────────────────
CHANNEL         EXPECTED RESPONSE
─────────────────────────────────────
Slack           4 hours during work hours
Email           24 hours
Task comment    1 business day
PR review       24 hours (48h max)
Urgent call     Immediate (define urgent)

TIMEZONE CONSIDERATION:
If sender is 8 hours ahead:
β”œβ”€β”€ Their 5pm = Your 9am
β”œβ”€β”€ Send end of their day
β”œβ”€β”€ Expect response next day their time
└── Plan for 1-day round trip

"URGENCY" DEFINITION:
πŸ”΄ Urgent: Production down, security incident
   β†’ Phone/page
🟑 Today: Customer waiting, blocking others
   β†’ Slack + tag + note urgency
🟒 Normal: Default, no special handling
   β†’ Regular channels, regular SLA

Timezone Coordination

Overlapping Hours

TIMEZONE MANAGEMENT
═══════════════════

IDENTIFY OVERLAP:
─────────────────────────────────────
Team Member    Timezone    Work Hours
─────────────────────────────────────
Sarah (NYC)    EST         9am-6pm EST
Mike (London)  GMT         9am-6pm GMT
Alex (Tokyo)   JST         9am-6pm JST

Overlap: 9am-10am EST = 2pm-3pm GMT = 11pm-12am JST

ONLY 1 HOUR OVERLAP (common challenge)

SOLUTIONS:
β”œβ”€β”€ Rotate meeting times (fair distribution)
β”œβ”€β”€ Record all meetings
β”œβ”€β”€ Async by default, sync for overlap hours
β”œβ”€β”€ Group by timezone for daily work
└── Quarterly in-person for bonding

Meeting Scheduling

REMOTE MEETING PRACTICES
════════════════════════

BEFORE SCHEDULING:
β”œβ”€β”€ "Could this be async?"
β”œβ”€β”€ "Who truly needs to be there?"
β”œβ”€β”€ "What timezone impact?"
└── Default: Don't meet

WHEN SCHEDULING:
β”œβ”€β”€ Check all attendee timezones
β”œβ”€β”€ Rotate if regularly outside hours
β”œβ”€β”€ Send agenda 24h in advance
β”œβ”€β”€ Include dial-in for those on travel

DURING MEETING:
β”œβ”€β”€ Record for absent teammates
β”œβ”€β”€ Strict time-boxing
β”œβ”€β”€ Document decisions live
β”œβ”€β”€ Action items with owners

AFTER MEETING:
β”œβ”€β”€ Share notes in GitScrum
β”œβ”€β”€ Action items become tasks
β”œβ”€β”€ Recording available
└── Follow up async for input

Remote Work Tools

Tool Stack

REMOTE COLLABORATION TOOLS
══════════════════════════

COMMUNICATION:
β”œβ”€β”€ Slack/Teams: Real-time messaging
β”œβ”€β”€ Email: External, formal
β”œβ”€β”€ Video: Zoom, Google Meet
└── GitScrum: Work coordination

PROJECT MANAGEMENT:
β”œβ”€β”€ GitScrum: Tasks, projects, boards
β”œβ”€β”€ NoteVault: Documentation
└── GitHub: Code collaboration

DOCUMENT COLLABORATION:
β”œβ”€β”€ Google Docs: Real-time editing
β”œβ”€β”€ Notion: Wiki-style docs
β”œβ”€β”€ Miro: Visual collaboration
└── Figma: Design collaboration

ASYNC VIDEO:
β”œβ”€β”€ Loom: Screen recordings
β”œβ”€β”€ Async demos
β”œβ”€β”€ Complex explanations
└── Personal connection

SOCIAL:
β”œβ”€β”€ Donut: Random coffee chats
β”œβ”€β”€ Virtual events
β”œβ”€β”€ Slack games/channels
└── Watercooler time

GitScrum for Remote

GITSCRUM REMOTE FEATURES
════════════════════════

VISIBILITY:
β”œβ”€β”€ All work visible on boards
β”œβ”€β”€ Status updates in tasks
β”œβ”€β”€ Progress without meetings
└── Dashboard for leadership

ASYNC UPDATES:
β”œβ”€β”€ Daily standup feature
β”œβ”€β”€ Written async updates
β”œβ”€β”€ No meeting required
└── Timezone friendly

COMMUNICATION:
β”œβ”€β”€ Task comments (context preserved)
β”œβ”€β”€ @mentions for attention
β”œβ”€β”€ Notifications configurable
└── Slack integration

DOCUMENTATION:
β”œβ”€β”€ NoteVault for decisions
β”œβ”€β”€ Linked to tasks
β”œβ”€β”€ Searchable
└── Permanent record

Building Remote Culture

Connection Practices

BUILDING REMOTE CULTURE
═══════════════════════

REGULAR TOUCHPOINTS:
β”œβ”€β”€ Weekly team sync (video, short)
β”œβ”€β”€ Monthly all-hands
β”œβ”€β”€ Quarterly virtual social
└── Annual in-person gathering

1:1s ARE CRUCIAL:
β”œβ”€β”€ Weekly with manager
β”œβ”€β”€ Consistent schedule
β”œβ”€β”€ Not just statusβ€”relationship
β”œβ”€β”€ Camera on when possible
└── Check wellbeing

SOCIAL CHANNELS:
β”œβ”€β”€ #random - Anything goes
β”œβ”€β”€ #pets - Share pet photos
β”œβ”€β”€ #wins - Celebrate achievements
β”œβ”€β”€ #help - Ask anything
└── Interest-based channels

VIRTUAL EVENTS:
β”œβ”€β”€ Coffee chats (random pairs)
β”œβ”€β”€ Virtual lunch (scheduled together)
β”œβ”€β”€ Game sessions
β”œβ”€β”€ Show and tell
└── Learning sessions

Best Practices

For Remote Collaboration

  • Async first β€” Don't default to meetings
  • Write it down β€” If it wasn't written, it didn't happen
  • Overcommunicate β€” Context isn't overheard
  • Schedule connection β€” Social doesn't happen accidentally
  • Respect timezones β€” Fair distribution of burden
  • Anti-Patterns

    REMOTE WORK MISTAKES:
    βœ— Treating remote like office (constant sync)
    βœ— No written documentation
    βœ— All meetings, no async
    βœ— Ignoring timezone burden
    βœ— No social connection
    βœ— Always-on expectations
    βœ— Camera-off culture
    βœ— Unclear response expectations
    

    Related Solutions