Out of Sight, Out of Mind: Survival tricks and tools for remote developers

17
agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017 Out of Sight, Out of Mind: Survival tricks and tools for remote developers (especially Python and Django) Alessio Bragadini agile42 International @abragad

Transcript of Out of Sight, Out of Mind: Survival tricks and tools for remote developers

Page 1: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Out of Sight, Out of Mind: Survival tricks and tools for remote developers (especially Python and Django)

Alessio Bragadini agile42 International @abragad

Page 2: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Who I am, my team

• Web (backend) developer and assorted crafts • Working for agile42, an Agile training and coaching

company: Europe, North America, South Africa • Web/IT team working in Berlin and distributed • We use Python and Django, and Agile methodologies • I work remotely from Milan, for this job and previous

ones • How do I preserve my sanity?

Page 3: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

The dream…

Page 4: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

…the reality

Page 5: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Remote working is not easy…

Page 6: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

“I think there’s a split between being remote-friendly — hiring some workers in a different city — and remote-first, meaning you build your development team around a workflow that embraces the concepts of remote work, whether or not your employees are remote.”

– Zach @Holman / http://bit.ly/2nTomQb

Remote-Friendly vs Remote-First

Page 7: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Can Agile help?

•TDD (Test-Driven Development) •no code ownership •shared “visual backlog” (boards etc.)

Page 8: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

“The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.”

Principles behind the Agile Manifesto

Page 9: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

What is face-to-face?

•Face-to-face means proximity but also truthfulness •We are now used to constant chat and group chats •We have Skype, WhatsApp, Hangout, Slack •This is 99% of face-to-face (body language still counts)

Page 10: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

What is Information?

•Discussion about the project •Discussion about code or design •What moves forward: commits, tasks •What moves backwards: bugs, regressions •Links, ideas, jokes, etc.

Page 11: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

“By forcing yourself to use chat instead of meetings, by forcing yourself to use chatops to mercilessly automate every single manual action, you end up creating things faster, with more built-in context, and greater ability to share your knowledge across the organization.”

– Zach @Holman / http://bit.ly/2nTomQb

Remote-Friendly vs Remote-First

Page 12: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

How you do it, technically

• Shared code repository, possibly reachable from every location (GitHub, Bitbucket, but security is a factor)

• Automated unit testing and integration testing

• Continuous Integration

• Continuous Deployment on a test server

• Shared tool for task planning and big picture (epics, sprints, milestones, etc.)

• All available online from any location

• All feeding a communication channel

Page 13: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

How you do it, personally

• Agile ceremonies: daily standup, sprint planning, sprint review, retrospectives

• Explain what you’re going to do, what you’ve done, offer advice

• Establish “work hours” even if you are not in a proper office

• Keep chat channel open during work hours

• Meet face-to-time from time to time

• Learn from companies that “do it”: e.g. Automattic, Balsamiq

Page 14: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Page 15: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Our team setup: Python and Django

• Test-Driven Development (unittest, Selenium, visual tests)

• Infrastructure as code

• Jenkins for CI

• GitHub/Bitbucket for shared git repositories

• Slack channel with integrations with Jenkins, git

• Agilo for Scrum(*) or Trello

• Skype for Agile ceremonies including daily standup

• Google docs etc.

Page 16: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Thank you!

Contact us atwww.agile42.com / @agile42 / @abragad

Always looking for talents

Page 17: Out of Sight, Out of Mind: Survival tricks and tools for remote developers

agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2007 - 2015agile42 | The Agile Coaching Company www.agile42.com | All rights reserved. Copyright © 2017

Extra links

Read: https://zachholman.com/posts/remote-first/ https://www.helpscout.net/blog/agile-remote-teams/ http://www.agile42.com/en/blog/2014/08/28/agile-team-co-location-remote/ https://whenihavetime.com/2014/07/08/10-lessons-from-4-years-working-remotely/ https://blog.balsamiq.com/remote-work/

Watch: https://www.youtube.com/watch?v=thAvcDrf870 (Francesco Fullone, Italian)

Follow: http://www.agile42.com/blog/ https://twitter.com/agile42 https://www.facebook.com/groups/lavoratori.in.remote/