That old cliche rings true time and again. I’ve been through numerous rounds of search, hire and fire lately. The one I’m writing about now is my efforts to find a good Drupal developer. This is related to the work I’ve been doing with a good friend who has an online store based on Drupal.
The original design was largely completed by a developer based in the U.S. and there were some serious ethical issues with them. It took us some time to extricate ourselves from the engagement and protect ourselves from some attempts at malicious actions. A new developer had already been engaged when I joined. They were an Indian design house. A few important features remained to be implemented so I worked with the Indian developer to get them done. The experience was frustrating. It would appear that communication had take place and the developer would report work was completed when in fact nothing at all had been done. In other cases they would go off on a tangent and do something that wasn’t even on the list of tasks.
One of the bigger frustrations was that we urgently needed to re-host the site. I had never re-hosted a Drupal site before so I left it to the “experts”. Two weeks it took them. Due to the Network Solutions hosting debacle I posted about before I had to immediately move hosts again. This time I did it myself. It only took me two days and most of that time was waiting for files to transfer on my slow and unreliable internect connection (which I have posted about numerous times before). We terminated that developer.
So we started looking for another Drupal developer. We received a number of recommendations for both domestic and offshore developers. The domestic developers were a nonstarter due to their cost. We wanted to redesign the store, nothing really major, just add improved navigation to the catalog, add some social sharing features, include mailing list signup and product ratings, that sort of thing. Estimates from developers were a couple weeks of effort. For a domestic developer that works out to $5,000 or more, a complete non-starter. Seriously, we have an existing Drupal website that needs a few modules installed and configured and a new taxonomy vocabulary created and added to the store. Thousands of dollars…end of conversation. So we went with another Indian developer that quoted under $1,000.
And the same frustrations. Work reported complete when it wasn’t. Implementations that were questionable. Answers to questions that were plain wrong. They did a SEO analysis and provided some recommendations. Some them were bad recommendations. For example, they recommended change the url alias from example.com/page to example.com/page.html. I did a little research on that and found a number of places it was discussed and nowhere that anyone could show an SEO benefit. And over at W3C they recommend against this sort of thing, saying that future-proofing your website means not being explicit about the implementation so adding a file type extension is the wrong thing to do.
If you remember my post about creating a newsletter archive you recall that I used Drupal Views to create a feed from the archive. For some odd reason the developer used a custom php script to create the feed. Sure it works, but that’s another thing to try to keep track of when it comes to maintaining the website. Keeping it all within Drupal is a much better practice.
So after two months to complete what was quoted as a two week job, and failing to complete some of the tasks, I terminated that developer. While they were flailing I began searching again and I got indications of the same kind of behaviors. I provided a spec for quote and the offshore developers (all Indian) gave back completely generic quotes that had nothing to do with the spec. One of them I replied to and asked why that had included a graphic development milestone when there were no graphics to be developed. They answered that the second payment was tied to the completion of graphics…what the? The domestic developers were a different story. They had detailed questions that indicated they had read and understood the spec and they provided details quotations. Unfortunately their costs were around $10,000 for something we expected to be about $2,000.
Since then we have gone without a “real” developer. I have been doing some development myself and the truth is once you get past the Drupal learning curve there are a lot of things you can do without custom programming, or maybe just a little bit of programming to augment or tweak existing modules. There are two open questions in my mind as a result of this experience. First is how the heck to small startups afford a full featured website? It’s easy to throw together a WordPress site that looks cool and has a lot of features but I haven’t seen one that includes a real store. I’m not talking about an affiliate website or a site selling a handful of products and taking payments with PayPal. I mean a store with many products, credit card payments, stock management, sales tax reporting, all the things a real store needs. That takes something like Drupal or maybe a closed source solution that is even more expensive because you pay for expensive software and then pay again for developers.
The other open question in my mind is what is the real state of software development in India? I worked with two developers and evaluated two others and all exhibited the same behaviors. There may have been competent programmers at those companies but there was little evidence in the work performed. The communication is deceptively poor, in that you really are convinced that requirements and tasks are understood but what they end up doing indicates a lack of understanding. I just don’t get how people have successfully used Indian developers.