This weekend I started up a conversation with a local artist who has been assisting her boss with the management of a couple of web applications her boss owns.
The conversation took a turn and some venting went on about paying weekly development fees without seeing any progress with the developer they’ve been working with. Now the developer wants to charge them another lump sum fee to complete the project as well as a weekly maintenance fee to cover other requests. It gets worse.
The developer transferred the domain names so he could manage them. The developer also hosts the application on his hosting account. In short, the developer is now holding them hostage.
Thankfully, the woman I’m working with demanded administrative access in the past to edit some of the template files for the site. The developer could have provided her limited access but he didn’t. He (lazily) provided her with the administrative login to the site. Tonight I used that access to backup all of the code for the site. I also figured out what management software he was using and made my way to the database administration where I was able to export both applications’ data and table structures. Whew.
The owner was planning on moving the sites to new domain names once development was completed. That’s huge because it means the current domains could expire in the event that there’s an angry separation between the developer and the company. I’ve seen this happen before.
Some tips if you’re going to get an outsourced development team:
Register your domain names in your company’s name. It’s not bad to have your developer as a Technical Contact on the account, but never transfer ownership of the domain to anyone outside your company.
Hosting your Application or Site
It’s great that your developer might have a hosting company and can host your site for you, but don’t do it. Instead, ask his recommendations for where to host the application. It is true that developers get acquainted with the management software, versions, and location of resources and that can help your product be completed sooner. That said, though, own the hosting account and add your developer with his own login and access. This way, you can pull the plug whenever you need to.
Own the Code
Don’t assume that you own the code, put it in writing. If you don’t want your developer using the solutions you paid him/her to develop elsewhere, you must decide that at the time of the contract. I’ve developed solutions this way but I’ve also developed them where I retain rights to the code. In the latter case, I negotiated the cost of the application lower so that there was an incentive to the company to give me rights. If you don’t mind your developer using your code elsewhere, then you shouldn’t be paying top dollar!
Get a second opinion!
It doesn’t hurt my feelings when folks tell me they’re taking bids or consulting with other professionals. In fact, I recommend it!
The bottom line is that you’re paying for your developer’s talent but you must retain control and ownership over the idea. It’s yours. It was you who invested in it, you who risked your business and profitability for it… and it’s you who should keep it. Developers can be replaced and that should never put your application, or worse – your business, at risk.