Agile or smart people - which is better from client’s perspective
I had an interesting discussion with another ThoughtWorker yesterday about what is more important to a client: the fact that ThoughtWorks uses an Agile process or that we try to employ smart people. He voted for Agile and I voted for the smart people.
I can definitely see his point of view, the client wants results and Agile is what we use to achieve those results. On one level this makes a lot of sense; however, I would argue that it is actually the people that make the difference. I have read on another blog that smart/proficient/great developers do not use Agile. Instead, for each project they are on, they assemble a bunch of tricks that they know will work and that collection of tricks and techniques becomes the process. As such, they are able to walk into any situation and be successful.
I personally tend to agree with this opinion. Agile is only our current thinking; it is an expression of the current state of thinking on how to deliver quality software successfully. In a few years it may be replaced by a new way of thinking (in fact, that is already starting to happen with lean). Good developers are able to adjust to these changes and still deliver a quality solution regardless of the current trend in software development thinking and practice.
On the other hand, since I have no real experience dealing with clients, I could be totally out to lunch on this.