Recently I was involved in an very short bit of consultancy for an e-commerce company. We were focussing on the performance of their site in the browser, and they were more than a little surprised at the software engineering rigour that we exhibited given that we are just an agency. Perhaps we're thought of us web development production lines who churn out web sites. That's not my view.
This isn't the first time that I've encountered that attitude towards agencies. It seems that there is a perception from companies whose bread and butter is developing their product for the Web, that an agency would never go to the same lengths as them to ensure quality and performance.
There is a kernel of truth in that. Realistically a product company or e-commerce company can labor over fine-tuning and optimising their web site over long periods of time, making many, often constant, iterations to drive up the quality. Long term engagements in projects is often a luxury that agencies are not afforded, and so it is more difficult to agonise over finessing the performance and all that entails.
But hang on. Agencies should be experts in their field. Web development practitioners have a responsibility to their clients to craft and deliver amazing results. That doesn't end with the branding or the design, but should, nay must extend through to the development and delivery of the 'product' on the web. Otherwise everything that came before delivery is for naught.
Where I work, we have gone to great lengths to instil robust software engineering practices because without them, frankly we'd be screwed. Deadlines are always tight, and clients always want a lot for their money. If we stand a chance of delivering that, we must find ways to reduce risk and create opportunities for innovation.
The truth is that doing this right takes just as much care and skill as any other kind of software engineering, and without the proper process, the proper approach, or the proper standards, you'll often be creating a weaker user experience, and setting up a train-wreck for you to fix just around the corner.