You have a great idea for a web-based business. You know the industry, you know the market, you know your idea has great odds of success. There's only one problem. You know little or nothing about how to build a website.
No big deal, right? You can outsource the development work to some of the thousands of independent web developers or web development shops out there. While that's true, and a smart way to go, working with developers can have its pitfalls, and entrepreneurs need to know how to avoid them.
That advice comes from Jenna Fernandes, who last year founded CareBooker, a site that helps users find available home services including child care, pet care, and tutoring. After some research, Fernandes outsourced the building of CareBooker's site to a web development shop in Fresno. Her site launched last summer and is now has more than 7,000 providers offering services through its platform. Here's what she learned along the way:
1. Learn enough to be scary.
You don't have to turn into a programmer, but you do have to speak their language in order to know what skills will be required to get to a minimum viable product. "At the very least, know the differences between PHP, Ruby, Python, Java, and HTML, as well as what a code repository is and what your database options are."
How on earth do you learn this stuff? Fernandes recommends Stack Overflow as a good place to start. Built With tells you what tools many websites were built with, while General Assembly offers basic programming courses in classrooms or online. She also recommends attending Meetups to learn about the tech community in your area.
2. Pick the right team.
Depending on the size and deadline of your project, as well as the size of your budget, you'll need to choose between hiring a development team or company, or hiring individual developers. (Stack Overflow, LinkedIn and college alumni job sites can be helpful for finding individual developers, she adds.)
In most cases, she says, you'll need both a programmer, to actually write the code, and a designer, who will create the look of the site. You'll have to figure out how many people will be needed to complete the project, whether they should be local or can be overseas, and if they are working for pay or equity in your company.
3. Give clear guidelines.
The better you can express your exact needs for the site, the better things will go. "Create a document that includes the elevator pitch, as well as the key points that will help them get organized and give them a pulse of what to build," Fernandes says. Once it's all written out, work with them to create a "wireframe"--a bare-bones structure of the site that won't show colors, fonts, or design, but will show how the elements of the site fit together and how users will navigate it. This will give the developers a sense of how much work is needed, and thus how much the site will cost to build.
4. Create a schedule with some air in it.
You need to set a date for the project to be completed and some benchmarks along the way. But because it's notoriously hard to estimate the time needed for programming jobs, Fernandes recommends that you assume the job will take 10 percent longer than promised. "Be sure you have enough time and money budgeted to cover the buffer," she adds.
5. Keep everything organized.
"Make sure everything is clear, concise, assigned, and universally shared," Fernandes advises. Most websites have a lot of moving parts and may need input from several different people in your company so keeping everything in order and up to date is essential. Fernandes recommends using online collaboration tools such as Dropbox, Box, or Google Drive to make sure everyone has the latest versions of every document.
6. Set priorities.
Once you've got a complete list of what needs to be built, your team should work with the dev team to review each item against a rating system and determine its importance. Your team and the developers can work together to set a list of priorities for the first version of the website, the second version, and so on. This is especially useful if you're using an agile methodology, in which a new version of the software is released every two weeks.
7. Let the tech team answer tech questions.
The purpose, content, and projected functionality of the site are your concerns, but when truly technical questions arise, let your development team take the lead. After all, you hired them for their expertise. So trust that expertise and let them answer the technical questions. When it comes to purely technological decisions, you should probably trust their recommendations most of the time as well.
8. Keep communication going throughout the project.
Fernandes recommends a daily check-in call or video chat. "That helps facilitate openness and fosters a better working environment," she says. And the development team should be encouraged to reach out to you or your colleagues any time of the day or night if need be. "Nobody should ever feel like they are imposing," she says.