title: The Remote Manifesto
url: https://about.gitlab.com/2015/04/08/the-remote-manifesto/
hash_url: b51c1c6daa60f39f6d088712176d766f

<p>We all have been greatly helped by Scrum and the <a href="http://agilemanifesto.org/">Agile manifesto</a>.
It freed us from waterfall planning and excessive process.
But working remotely and continuous delivery need something more.</p>

<p>At GitLab we love to work remotely, but that means we need to communicate as
effectively as possible.</p>

<p>The following are GitLab&rsquo;s eight principles for modern teams working remotely:</p>

<h2>1. Work from anywhere you want</h2>

<p>Working remotely allows you to be there for the ones you love, and be more
available for them. It allows you to see more places, without ever having
to commute. On top of that, working remotely removes almost every distraction.</p>

<h2>2. Communicate Asynchronously</h2>

<p>Don&rsquo;t try to mimic an office. Communicate using issue mentions and chat tools.
Reduce task switching and put an end to email overload. Choose the right channel
of communication according to the necessity of the task you&rsquo;re working on. Can
it wait a few minutes, a few hours, even a few days? Don&rsquo;t take someone from
their work if you don&rsquo;t have to.</p>

<p>If people <em>are</em> working from the same location, it is important that they do
not skimp on writing things down.</p>

<p>Everyone should use the same tools to communicate.</p>

<h2>3. Recognize that the future is unknown</h2>

<p>Ship stuff when it&rsquo;s done, not when the sprint (planning) is complete.</p>

<h2>4. Have face-to-face meetings online</h2>

<p>There is no need to cut back on face-to-face meetings. The technology is readily
available and it&rsquo;s easier to use than ever. We&rsquo;re human, we like to converse.
Some times it can be critical to talk, even if only for a minute, when all
other communication is written.</p>

<h3>5. Daily stand-up meetings are for bonding, blockers and the future</h3>

<p>Don&rsquo;t talk about what you did yesterday,
this is not a reporting moment where everyone tries to look busy.
Rather, kickstart the day with some bonding,
solve anything blocking and share future plans so people can plan and act
and ultimately save time.</p>

<h2>6. Estimate workload on a need-to-know basis</h2>

<p>Don&rsquo;t get fixated on trying to estimate workloads. This is mostly a waste of
time and usually inaccurate. If it&rsquo;s to get a general idea, use T-shirt sizes
for a measure. S, M, or L. If you get to XL then you can guarantee it&rsquo;s
inaccurate.</p>

<h2>7. Bond in real life</h2>

<p>Hanging out together in real life is awesome and totally worth it. These are the
best days of our lives. Spend time together and make sure to do more than just
work. Do a martial arts workshop together, visit the parents of an employee,
go to a festival together: have fun.</p>

<h2>8. Give credit where it&rsquo;s due and remember to say thank you</h2>

<p>At GitLab we have a Slack channel <code>#thanks</code> for this purpose.
It always feels good to give and receive a thanks.</p>

<p><img src="https://about.gitlab.com/images/thanks.png" alt="Thanks Slack channel" /></p>

<p>Inspired by <a href="https://www.pandastrike.com/posts/20150304-agile">this post on pandastrike.com.</a></p>
