68

Everything I've been reading and researching up to this point describes how Agile/Scrum works great with teams of about 4 to 6 members, maybe even more.

In my current shop, we have about 8 developers or so, but given the nature of the volume of projects and the number of departments we support, we never have more than 1 or 2 folks assigned to a given project.

Can I still use Agile/Scrum with a team of 1 or 2 developers? I'm working on making the pitch to my manager to start working with this methodology, but I need to be able to explain how to scale things back for a small developer crew, or convince them to make sure we get more members on a given project.

4
  • 42
    I failed to apply pair programming to a team of 1 developer
    – flybywire
    Sep 10, 2009 at 19:34
  • 11
    Playing planning poker by myself is no fun.
    – Tomas
    Sep 10, 2009 at 19:43
  • 4
    @flybywire: Try to develop multiple personality syndrome and make sure the mentally-new-person is a good developer. Then, you can pair program.
    – Phil
    Mar 8, 2011 at 18:47
  • Take a look at this interesting experiment with a 1 man scrum I found when researching this exact question for a samll 2 man team. 21apps.com/agile/doing-agile-in-a-team-of-one
    – AudioDan
    Apr 27, 2012 at 2:02

9 Answers 9

32

You sure can use certain agile principles in your projects, you don't have to use scrum, use whatever will work best for you. You can definitely benefit from some of XP methods and some scrum practices. But probably not "by book", 1-2 person team is just too small even for that little overhead scrum brings, start with what book says and then drop whatever you'll feel irrelevant after some time. Just don't drop retrospectives, it sure is worth the time spent discussing the problems you have, and finding solutions for them.

2
  • 3
    absolutely. The keyword is 'agile'. The book 'practices of an agile developer' (assets1.pragprog.com/titles/pad/practices-of-an-agile-developer) may be helpful to pick the tools useful for you.
    – Adriaan
    Sep 29, 2009 at 12:19
  • 4
    +1 for not dropping retrospectives. Too many folks avoid these just to avoid the pain of having to change.
    – Catchops
    Oct 21, 2014 at 14:07
14

Yes you can use the principles of Scrum/Agile for 1 person. If you want personal productivity look at the Pomodoro technique or GTD.

Agile techniques are suited to smaller teams as with larger teams it becomes more difficult to manage communication. With 1 or 2 people developing a project (and a customer) you should be able to work in an agile manner very easily. i suggest you read the agile manifesto as a good start to agile. For scrum, I'd suggest you look at Scrum from the Trenches. Kanban seems to be in fashion now and there is a personal Kanban too!

0
7

If I were you I'd manage and visualize my tasks and priorities using Kanban, and I'd adopt some of the XP practices: Test-driven development, retrospectives and time-boxing are probably good to start with. Later on, during retrospectives, you can identify more practices that you feel you need.

Kanban is very non-prescriptive. All it really requires is that:

  1. You visualize your workflow
  2. You limit your work in progress (especially useful in your case)

The idea is that you latch on other practices which you find useful, and XP is an excellent source for these practices.

Disclaimer: I have never tried this, but it would be at the top of my list of things to try if I were in the same position.

2
  • The only issue I see is getting a product owner to fully participate. Someone with the authority to prioritize the development outputs needs to join in and have high availability.
    – user5467
    Feb 23, 2010 at 19:01
  • 2
    I jumped into Personal Kanban about 3/4 months ago and I really like it! I think it is a springboard in the right direction for others in my group. Thanks!
    – Dillie-O
    Feb 24, 2010 at 15:26
4

Absolutely and without question. Checkout the book Pragmatic Programmer for more information on how individual developers can work Agile. Scrum resources for individual work are harder to come by, however the primary notion of iterative development can be applied to any size work group.

http://www.pragprog.com/the-pragmatic-programmer

2

I think 2 developers instinctively default to a system like agile, even if they don't set out to explicitly do it. They'll naturally be talking to each other and iterating with their PO.

1
  • 1
    Or more likely you end up with two cowboy programmers.
    – zkent
    Nov 22, 2016 at 19:08
2

Yes, you can use agile methods with only two developers, but you always need a dedicated customer/product manager. With only one developer, I would say no mostly because I personally like to work in teams, but also because you cannot really pair program, and thus miss all code sharing opportunities. Four to six developers + one product manager is the perfect size for an agile project. More than that, and sub-teams tend to form which kinda defeats the purpose.

I don't know your exact situation of course, but it seems to me that you are running to many projects as the same time. My suggestion is that you should try to pitch the idea of lowering the amount of concurrent projects, and instead have, say, two teams working on one project each. That would be the first step to improve your situation and make it easier to apply an agile process.

There is much to be said about the badness of task-switching and project-trashing, but really, nothing good comes out of it. Ever.

2

I would say that you can use techniques from various agile methods, but you shouldn't use Scrum as it's described in the Scrum Guide as you can't fill the roles. Scrum is designed for teams of 4-11 people. But many of the agile methodologies, including Scrum, can provide you with a starting point.

1

I recently read this book about scrum: Agile Project Management with Scrum

For me it was my first book about scrum, and did it for me, it really focusses on what underlying principles are important. I think that some of these principles could apply to and help 1-2 person teams.

0

Looking at it another way:

Why don't you consider all 8 developers members of the same Scrum team? That way you get the crosstalk effect between projects. Maybe you don't even have to commit people to specific projects??

When more people are added to your shop, you can possibly divide the team into two smaller ones.

Not the answer you're looking for? Browse other questions tagged or ask your own question.