Getting where you need to be: The Pros & Cons of External Development Agencies

A guest post by Derek Juang (M.D.) – Cofounder and CTO – Docphin Inc.

One of the biggest challenges we found as an early stage startup was in developing all of the great new ideas we had with limited resources.  In the early stages of our company, we had a long checklist of all the development we needed to do, which ranged from adding complex new features to basic functionality such as user registration. We found ourselves concentrating always on the exciting new ideas.  A few of the basic functions always seemed to stay unchecked on the bottom of the list.

(Note from the editor: Let’s remind ourselves that in a startup, we don’t have the choice to exclude the mundane tasks. Could Craigslist have been built, if not for Craig Newmark, sifting through every post and curating it?)

As our beta launch deadline approached, we decided a few features were “must-haves” prior to launch. In the face of a looming deadline, we decided to seek the help of an external development agency to put together some of the basic parts of our site. That way, we could concentrate on the complex features we wanted to add.

We decided to engage an external development agency for help in user registration and sharing of our website. After interviewing 14 different firms, we settled on one that seemed to have solid previous experience. They were eager to start and we were eager to have them finish these lingering tasks that seemed to have forever been on our checklist.

The process did not go as smoothly as we had hoped, despite the fact that these seemed to be fairly basic functions. However, we still had a good experience; as we summed it up to ourselves, “it got us where we needed to be.”   Here are a few key lessons from our experience:

[tweetherder]Use wireframes, or preferably actual images, as much as possible[/tweetherder].

We tried to be as explicit as possible in our descriptions of what we wanted, but nothing could be as clear as laying everything out in an image.  Any long email chains or confusing Skype calls were quickly resolved with an image or an online screenshare. In addition, drawing things out beforehand ensured that our whole team was also on the same page. (Note from the editor: Wireframing or even just putting together the visual elements on a PowerPoint, gives the founders, the context to think through the user experience before letting development start. It also sets the space for developers to question UX decisions!)

[tweetherder]Be as specific as possible[/tweetherder].

It only helps you to be as specific as possible about what you want. For example, when we asked to have a “save password” feature when users logged in, we did not specify that we wanted the password encoded when it was saved.  Fortunately when we reviewed the code ourselves, we caught this quickly.  Teams who do not have a technical lead may not have this ability and so being specific would be especially crucial.

[tweetherder]Test thoroughly, even if it is common sense[/tweetherder].

As another example, in our specs we wrote we wanted an “email address” field and a “confirm email address” field.  Figuring this was common sense, we did not originally specify that the system needed to check to ensure those two fields were indeed the same.  When we tested this feature, a user could enter anything in the “confirm email address” field, and still be able to create a new user.  After we found that bug, we tested everything we could think of–no matter how basic it seemed.

[tweetherder]Consider milestone payments instead of hourly payments[/tweetherder].

For the first project, we used hourly payments. We found ourselves frustrated that our clients never seemed as efficient as we wanted them to be; jobs estimated at 2-4 hours always took 8. Instead of worrying about counting the hours, for our second project we used milestone payments. Aside from relieving us of the pressure to watch the hours like hawks, we felt milestone payments provided us another clear advantage–we set milestones at key points where we had an opportunity to evaluate our agency’s work before we engaged in further work.

[tweetherder]Be ready to pay more than you originally negotiate[/tweetherder].

Other startups forewarned us to expect higher costs than we were quoted, and this was indeed true for us.  Despite the negotiated costs, deadlines seemed to take a little bit longer than expected. In addition, we never got the exact product we wanted on the first go around, and when we were making hourly payments we were billed for the extra work. As an added bonus, we were able to build fixes into our milestones, so those did not cost us extra.

[tweetherder]You get what you pay for.[/tweetherder]

We knew we need something functional and we needed it fast. We accepted beforehand that the code was probably not going to be beautiful or elegant.  For example, instead of clean “divs” to lay out the site, there were hundreds of nested tables, which we painfully removed ourselves after our official launch.  After receiving more funding and time, we have since removed all of the code that was created by external development agencies and rewrote it all on our own. However, we are definitely not the first company to do that.

(Note from the editor: Founder, especially the first-time outsourcers would do well to note that, we are not in an outsourced engagement to earn the ‘best beancounter’ title. Plan for overruns & don’t let the emotional downs of having to pay more, affect the transactional relationship at the developer level.)

In summary, we had an overall positive experience with the external development agencies with whom we worked. We needed to accelerate our development to get our product out into the hands of our eager users, and we needed to prove ourselves to investors. But you need to be direct and extremely detailed with whoever you hire, and have managed expectations.

It got us where we needed to be!

About Docphin:

Docphin is a free platform that personalizes medical news and research instantly.

In an environment that includes over a thousand medical journals with content that is increasingly complex and fragmented, physicians have grown tired of searching for relevant medical news. Docphin was created to address the  problem which has challenged physicians for decades.

Docphin’s technology combines comprehensive information from journals, news, and twitter while filtering out meaningless articles to bring physicians only the information they want. Docphin’s goal is keep physicians current and to save them time.

About ContractIQ:

ContractIQ is a service that startups use to discover elite dev agencies, curated based on peer feedback!

ContractIQ is a real-time recommendation platform for startups to recommend their favorite agencies ; discover agencies recommended by peers; evaluate agencies by sifting through facts, buzz and detailed customer feedback and engage with the most relevant agency, with hands-on consulting from ContractIQ

If you are looking to build an MVP or scale your product, start the due diligence with ContractIQ!


Building an app? Tell us about your project

We'll connect you with the right team for your project, for free!