Summary of Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1...5 downloads 335 Views 1MB Size
Summary of Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1. How to Get Vendors Competing for Your Job . . . . . . . . . . . . . . . . . . . . . . . . . 1 2. How to Find the Perfect Outsourcing Partner . . . . . . . . . . . . . . . . . . . . . . . . 21 3. How to Get the Best Price for Your Project . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4. How to Get It All on Paper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 5. How to Keep the Project on Track . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6. How to Turn Your Vendor into a Long-term Partner . . . . . . . . . . . . . . . . . . . 67 A. List of Freelance Websites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
OUTSOURCING WEB PROJECTS 6 STEPS TO A SMARTER BUSINESS BY DAVE HECKER SECOND EDITION
Outsourcing Web Projects: 6 Steps to a Smarter Business by Dave Hecker Copyright © 2011 SitePoint Pty. Ltd. Contributing Author: Joel Falconer
Editor: Hilary Reynolds
Product Manager: Simon Mackie
Editor: Kelly Steele (2nd edition) Cover Design: Alex Walker
Printing History: First Edition: December 2006 Second Edition: December 2011
Notice of Rights All rights reserved. No part of this book may be reproduced, stored in a retrieval system or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations cited in critical articles or reviews.
Notice of Liability The author and publisher have made every effort to ensure the accuracy of the information herein. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors and SitePoint Pty. Ltd., nor its dealers or distributors will be held liable for any damages to be caused either directly or indirectly by the instructions contained in this book, or by the software or hardware products described herein.
Trademark Notice Rather than indicating every occurrence of a trademarked name as such, this book uses the names only in an editorial fashion and to the benefit of the trademark owner with no intention of infringement of the trademark.
Published by SitePoint Pty. Ltd. 48 Cambridge Street Collingwood 3066 VIC Australia Web: www.sitepoint.com Email: [email protected] ISBN 978-0-9870906-6-9 Ebook produced in Melbourne, Australia
v About Dave Hecker With 23 years of professional experience, Sagewing founder Dave Hecker has a long history of managing successful software development projects. His career dates back to 1985, when he provided tech support and repair services for early PCs and Macs at a Computerland retail store during high school. He later joined the development world as a programmer and architect, building large-scale applications in C++, Java, and VB. As an Internet developer well before the dotcom boom, Dave delivered large-scale Internet applications for clients including Disney, Toyota, Lexus, Adidas, CBS (Survivor), Fox Entertainment (The Simpsons, X-Men), the Starbright Foundation, Hilton, and many more. He is proficient in a variety of programming environments including PHP/MySQL and .NET, is an avid Linux administrator, and continues to maintain a network of successful affiliate websites and forums. With years of effective and creative leadership and management experience, Dave is now a leading consultant to Fortune 50 companies and governments who wish to optimize their software development efforts, and personally oversees all projects at Sagewing.
About Joel Falconer Joel Falconer is a writer and editor living on the Gold Coast, Australia. He runs Methodic Studios, a public relations firm founded to service web and technology startups who lack the funding for traditional, expensive firms. Joel has worked with startups around the world, including SitePoint, Envato, DesignCrowd, Paymo, Carbon Ads, The Next Web, and more. Joel spends his spare time gaming and publishing the gaming blog StartFrag.com, and enjoys having lightsaber battles with his three kids and complaining about the Queensland heat.
About SitePoint SitePoint specializes in publishing fun, practical, and easy-to-understand content for web professionals. Visit http://www.sitepoint.com/ to access our books, newsletters, articles, and community forums.
Table of Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi What You’ll Learn in This Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii Where to Find Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii The SitePoint Forums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii The Book’s Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii The SitePoint Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv The SitePoint Podcast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv Your Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
How to Get Vendors Competing for Your Job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
The Essential First Step: Documenting Your Project . . . . . . . . . . . . . . . . . . 2 Writing Your Specifications Document . . . . . . . . . . . . . . . . . . . . . . . . 3 Example of a Project Write-up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Making Yourself Look Like a Professional Client . . . . . . . . . . . . . . . . 10 Spreading the Word About Your Project . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Understanding the Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Getting Down to Business . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Using Search Engines to Find Vendors . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
How to Find the Perfect Outsourcing Partner . . . . . . . . . . . . . . . . . . . . 21
Elimination Round 1: Checking Portfolios, References, and Testimonials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Elimination Round 2: Checking Individuals vs. Companies . . . . . . . . . . . 25 Validation Round 1: Checking Public Records . . . . . . . . . . . . . . . . . . . . . . 26
viii Validation Round 2: Checking Private Records . . . . . . . . . . . . . . . . . . . . . 27 Refinement Round 1: Checking Processes and Methodologies . . . . . . . . 28 Process Descriptions: Two Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Your New Shorter Shortlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
How to Get the Best Price for Your Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Understanding How Vendors Estimate Projects . . . . . . . . . . . . . . . . . . . . . 38 Being a Dream Client to Gain Dream Prices . . . . . . . . . . . . . . . . . . . . . . . 39 Sweetening the Deal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
How to Get It All on Paper . . . . . . . . . . . 49
Understanding Critical Elements of a Written Agreement . . . . . . . . . . . . 49 Choosing Between Fixed-bid and Hourly-rate Projects . . . . . . . . . . . . . . 52 Choosing the Right Payment Scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
How to Keep the Project on Track . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Having Realistic Expectations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Managing Your Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Using the Iterative vs. Waterfall Approach . . . . . . . . . . . . . . . . . . . . . . . . 58 Keeping Your Documents Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Handling a Troubled Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Recognizing and Dealing with Resource Issues . . . . . . . . . . . . . . . . 61 Recognizing and Dealing with Quality Issues . . . . . . . . . . . . . . . . . . 62 Recognizing and Dealing with Slow-progress Issues . . . . . . . . . . . . 63 Recognizing and Dealing with Communication Issues . . . . . . . . . . 64
How to Turn Your Vendor into a Long-term Partner . . . . . . . . . . . . . . . . . . . . . . . 67
Keeping Your Vendor Happy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Bringing It All Together: Being an All-round Great Client . . . . . . . . . . . . 71 Knowing the Ten Commandments of the Great Client . . . . . . . . . . 71
List of Freelance Websites . . . . . . . . . . . . 75
Preface Congratulations on taking your first step towards successful outsourcing! Many potential clients are surprised when a lot of the outsourcing firms they contact via the Internet merely answer with a canned sales pitch, or don’t respond at all. Sure, these vendors might be busy with current projects and may not be accepting work at that given time—but more often than not, the lack of enthusiasm from vendors who received those request for proposals is due to the fact that the senders don’t strike them as being attractive clients. Clients frequently think that because they offer money for services, vendors will come running to take on their projects. This couldn’t be further from the truth—vendors aren’t just looking for any old project, they’re hoping for profitable projects with lucrative clients. In fact, vendors are generally better at sizing up clients than clients are at evaluating vendors. Vendors will typically work with many, many clients during their career, while most clients will only work with a handful of vendors over time. All clients need to remember that they are being evaluated by those vendors, even as they perform their own evaluation of the vendors. Clients who seem inexperienced with outsourcing will always end up paying more, and might be ignored by the best vendors. The vendors know from experience that certain types of clients are difficult to satisfy because they have not refined their project requirements adequately, don’t understand exactly what they need to have built, or have unrealistic time or budgetary expectations. If a vendor thinks that you fall into one of these categories, you’ll be ignored by all but the least successful vendors. To succeed in outsourcing your projects, you need to be able to present yourself as an excellent client so that the best vendors will pay attention to you. This book will teach you how to do just that, as well as how to manage vendor selection in a professional manner, thus attracting the best outsourcing firms to your projects. Once you find the best vendor, you’ll receive guidance in how to manage your project professionally and effectively to ensure that your project is successful. Although many potential clients take the “I want the perfect vendor who will take care of everything” approach, experience shows that this is an unrealistic expecta-
xii tion. Even the best vendors will struggle to succeed when working with an inexperienced client who expects them to take care of every aspect of a project. Most vendors will raise the price of the project accordingly when dealing with such clients, if they take on the project at all. Conversely, the most successful project outcomes are the result of a highly collaborative process in which both the client and the vendor act professionally and work together to make the project successful. In this book, you’ll learn how to behave like a “pro” client and take advantage of the cost and time savings associated with good outsourcing practices.
What You’ll Learn in This Book Outsourcing Web Projects will teach you the fundamentals of finding, selecting, engaging, managing, and retaining an outsourcing firm that you can rely upon to serve your long-term business needs. Outsourcing and offshore development increase in popularity every day, and many would-be clients are overwhelmed by the huge numbers of companies, freelancers, moonlighters, nieces, nephews, offshore teams, and online services hoping to win their development business. There are simply too many vendors and services for the ordinary client to know whom to trust without understanding the basic dynamics in this marketplace. To make things even more difficult, much of the selection process occurs online and lacks the personal, face-to-face touch that helps business relationships to work well. In this book, we’ll explore the world of client–vendor relationships with an emphasis on successful strategies for clients. Unlike many outsourcing guides that delve deeply into esoteric paper trails and complex project scheduling approaches, this book will focus on ways to find and establish relationships with top vendors simply by being a great client. This proven strategy provides a win-win situation for the client and vendor alike, while setting the stage for the client to achieve maximum savings. Before we start, let’s just clarify a few terms we’ll be using: ■ We’ll use the term vendor to refer to any team of web designers, programmers, developers, companies, or professionals selling services either to the public or to domestic web development firms.
xiii ■ The buyer of these services will always be referred to as the client. ■ The general sphere of web design and programming will be called development. ■ We’ll use the term RFP (Request for Proposal) to describe any method of inviting vendors to bid on a project. ■ The terms bid, estimation, and proposal will be used interchangeably to describe a vendor’s offer to work on a project at a particular price.
Where to Find Help SitePoint has a thriving community of web designers and developers ready and waiting to help you out if you run into trouble. We also maintain a list of known errata for the book, which you can consult for the latest updates.
The SitePoint Forums The SitePoint Forums1 are discussion forums where you can ask questions about anything related to web development. You may, of course, answer questions too. That’s how a forum site works—some people ask, some people answer, and most people do a bit of both. Sharing your knowledge benefits others and strengthens the community. A lot of interesting and experienced web designers and developers hang out there. It’s a good way to learn new stuff, have questions answered in a hurry, and generally have a blast.
The Book’s Website Located at http://www.sitepoint.com/books/outsourcing2/, the website that supports this book will give you access to the following facilities:
Updates and Errata No book is perfect, and we expect that watchful readers will be able to spot at least one or two mistakes before the end of this one. The Errata page2 on the book’s website will always have the latest information about known typographical and code errors.
The SitePoint Network The SitePoint network now features a host of sites dedicated to the latest hot topics in web development and design: RubySource,3 DesignFestival,4 BuildMobile,5 PHPMaster,6 and CloudSpring.7 In addition, SitePoint publishes free email newsletters that feature the latest news, product releases, trends, tips, and techniques for all aspects of web development and design. You can sign up to one or more SitePoint newsletters at http://www.sitepoint.com/newsletter/.
The SitePoint Podcast Join the SitePoint Podcast team for news, interviews, opinion, and fresh thinking for web developers and designers. We discuss the latest web industry topics, present guest speakers, and interview some of the best minds in the industry. You can catch up on the latest and previous podcasts at http://www.sitepoint.com/category/podcast/, or subscribe via iTunes.
Your Feedback If you’re unable to find an answer through the forums, or if you wish to contact us for any other reason, the best place to write is [email protected] We have a well-staffed email support system set up to track your inquiries, and if our support team members can’t answer your question, they’ll send it straight to us. Suggestions for improvements, as well as notices of any mistakes you may find, are especially welcome.
http://rubysource.com http://designfestival.com 5 http://buildmobile.com 6 http://phpmaster.com 7 http://cloudspring.com 4
How to Get Vendors Competing for Your Job What’s the first thing you’d think to do once you decided you needed to outsource a web development project? If you’re like millions of people worldwide, you’d jump straight onto Google or Bing and start performing searches for outsourcing vendors. The big problem with this approach is that the search engine results aren’t magically sorted by “best vendors for you,” so you leave your fate in the lap of the gods, or rather Google or Bing, if you expect the perfect vendor to appear right up front. In reality, these search engine results are highly competitive; web development firms work hard, and pay a bundle, to be at the forefront of the listings. The fact is that the sites that do appear near the top (or on the first few pages, really) of the search results got there in one of two ways: 1. They bought a paid listing (an advertisement) so that they could appear at the top. 2. They optimized their website to appear near the top of the search results, via SEO (search engine optimization) techniques.
Outsourcing Web Projects Unfortunately, both of these factors only indicate nothing more than that these companies have a few dollars to spend and are very keen to gain new clients—two factors that have little relevance to finding the vendor that best fits you. A much better way to encounter vendors is to visit websites that web developers visit in search of work, and list your project there. First, though, to save time and increase the effectiveness of your posting, you’ll want to create a document that describes your project with as much detail as possible, which will act as bait to reel in bids. If you create an effective project description or specification, it will stand out from the others and act as a magnet to attract great vendors who are likely to be well-suited to your unique needs. In the following sections, you’ll learn how to create a specification and put it out to the developer community to attract bids.
The Essential First Step: Documenting Your Project Whether your document is called an RFP (Request for Proposals), RFQ (Request for Quote), a specifications document, or a requirements document, the first step to success is to enumerate the details of your project so that vendors can bid on it. In fact, a well-written specification does more than just describe the project. It shows the vendors that you understand the necessity for such a document. Many clients request bids or quotes based on merely a short outline, or a oneparagraph description. These clients risk being ignored! A well-written RFP will always attract the interest of better outsourcing vendors. It saves you time. Once your project begins, you’ll need to collect and document all of the associated information anyway, so why not begin now? As you’ll see in later chapters, this document will continue to grow throughout your project lifespan, so you have nothing to lose (and much to gain!) if you invest some time into putting some details on paper up front.
How to Get Vendors Competing for Your Job It allows you to submit your project requirements to multiple vendors with ease. Once you’ve written your document, you can send it to all the different vendors you’re interested in, and so avoid the lengthy emails and phone calls required to explain the project to each vendor. There is no set format for RFPs, and they don’t need to be fancy. In fact, many vendors are wary of RFPs that are overly formal or polished. The ideal RFP is a basic Microsoft Word or Adobe PDF document that describes, in clear and simple language, the key elements of the project so that the vendor can bid effectively, addressing each element. If your documentation is vague or incomplete, the vendor must guess at how the project will unfold, and will be forced to pad the price in the likely event that the project turns out to be more extensive or complex than originally presented. A well-written specification, on the other hand, will reduce the risk to the vendor and allow the vendor to reduce the bid accordingly to win your business. When you write your documentation, keep this dynamic in mind: the more complete your document, the less risk there is to the vendor and the lower the bid will be. For example, a project description that includes phrases such as “the website should be really slick” is too vague. A better description would be: “the website will be a static HTML site with ten pages in total that should include a Flash or HTML5 animation inlay on the home page only. Samples of the aesthetic that we are looking for can be found on the following list of home pages … ” The more concise language style in the second example will help the vendor to understand your true needs. This allows the vendor be more confident of being able to satisfy the client without multiple attempts, thus permitting a lower bid for the job.
Writing Your Specifications Document Ready to write your specification document? Don’t worry too much about the format—concentrate on completeness and clarity instead. Use the following list of topics to help you to identify the information that needs to be included in your document. A successful specification document is all about anticipating any possible questions that vendors who look at your project might want to ask. Note that this list is by no means exhaustive; nor will every item on the list apply to your project. As a rule, add any point you think might be useful in any way to your document. You can never make this kind of project specification too long, so don’t hold back!
Outsourcing Web Projects
Your Company and Contact Information A bit of background information about your company will help the vendor to make an evaluation of you as a client.
One-paragraph Executive Summary This paragraph needs to include the project’s general requirements, summarized in a succinct and clear manner. ■ Describe in detail what function the program or application must perform. ■ Describe any integration points such as data feeds or administrative back-ends. ■ Describe what the format of the end-user experience must be, including any platforms that may be incorporated, such as mobile, tablet, SMS, RSS, web browser, or email. The paragraph should also specify technical aspects such as the platform and language: ■ What programming language is to be used? Which database? What other protocols? ■ Do you have a Windows or Unix/Linux preference? Why?
Hosting ■ Where is your current website (or application) hosted? ■ Are you looking for new hosting? ■ Who will install and configure the application at the host? ■ Who will be responsible for server configuration? ■ Who will provide staging or development servers? ■ If the site uses a lot of bandwidth, will a content distribution network service be required? ■ Who is responsible for maintenance and configuration of the CDN account?
How to Get Vendors Competing for Your Job ■ Who is responsible for integrating the application with the CDN?
Platform ■ Do you have a Windows or Unix/Linux preference? Why? ■ Which server technology is to be used? ■ Which programming language should the project be written in? ■ Which database technology is preferred? ■ Are there other technologies the product needs to work with; integration with an accounting system or an identity API, for instance?
Ecommerce ■ Do you have/need a merchant account? ■ Do you have/need integration with a fulfillment center, a bookkeeping system, an inventory system, or a call center? ■ What is the complexity and volume of your product line?
Copy and Product ■ Who will supply the copy for the website’s pages? ■ When will the final copy or product be delivered to the vendor? ■ For ecommerce sites, who will prepare and enter the product descriptions, pricing, and images?
Graphic Design ■ What existing materials can be provided? ■ Will there be designs made based on existing logos or brochures, or will you need a brand new corporate brand to be created? ■ Is there an existing color palate or style guide that the new site must conform to?
Outsourcing Web Projects ■ Provide lots of sample sites or examples of print assets such as magazines that help convey your intended style.
Legal or Security Requirements ■ Will your project fall under government regulation that will affect development? ■ What are your accessibility requirements? ■ Will the website require SSL encryption?
Special Content Note any special formats that the web application must deliver, such as downloadable documents or streaming media.
Your Level of Experience Managing Web Projects Only refer to your experience with project management if you have any. If you are new to outsourcing web applications, don’t mention this point at all.
Client Project Management Note whether it’ll be yourself managing the whole project, or whether there’ll be a number of people involved. Who will the vendor be answerable to? Will there be a main contact or go-between? Specify who the vendor will liaison with for such key milestones as: ■ approvals ■ sign-offs
Desired Maintenance Arrangement for the Website Include copy/graphic updates and server maintenance. For web applications that deal with the personal information of users, this arrangement should include security checks and patches.
How to Get Vendors Competing for Your Job
Scheduling and Time Frame ■ What is the expected start date? Don’t just say “ASAP!” Try to be realistic about how long you intend to spend evaluating vendors and making up your mind. ■ When do you need the project to be completed? Be sure to explain why you have chosen this date (e.g. must be launched a month before Christmas in time for gift-buying) or the vendors may think the date is arbitrary and take it less seriously. ■ Are your completion dates firm? Do you need the project done by a certain date, or are your time frames flexible? Be very clear on your hopes and expectations, and invite the vendor to provide feedback on your requested schedule.
Basis of Award for Contract Provide details about what you are looking for in a vendor, and what the primary factors in making your decision will be when you award the job.
Example of a Project Write-up Here’s an example of a project write-up that you can use as a guide. Note that this example isn’t particularly complex, nor does it attempt to address any particular aspect of the project. It’s not reasonable to capture everything at this point in time—your goal is simply to provide much more information than vendors are used to gaining from potential clients, and to help them understand the project so that they can be confident in making a bid that truly reflects the project’s requirements. This document is written in an informal tone, based on the above outline.
Example 1.1. Example of a project write-up SuperShoes is a bricks-and-mortar retailer operating in the Washington DC area, with headquarters in Rockville, MD. We have 15 stores and turn over five million dollars in business annually. We specialize in streetwear and skate sneakers as well as related accessories.
Outsourcing Web Projects Project Overview Supershoes.com will be expanded and renewed with a fresh design and the creation of a full-featured online store. Our entire inventory will be available online, as well as buyers’ guides and other articles of interest to our customers being included on the site. Project Requirements and Specifications ■ An online catalog with a total of 4,200 items is required. Each item is to include a name, price, description, and three images. ■ The ability for customers to add products or services to a cart is required. Each item added to the cart should display other complementary items to the customer. ■ Credit card processing with Visa, MasterCard, Discover, and PayPal must be accepted safely online with 128-bit encryption. ■ Customers should have the ability to see histories of all their orders for up to one year. ■ Export into QuickBooks accounting software is required. The QuickBooks integration can be a simple one-way export in standard QB format. ■ A customer service module with integrated return policies and RMA generation is required. ■ A merchant account integration with seamless checkout is required. ■ A coupon/promotion engine is required. ■ Inventory information will be provided via a flat-file export from our current merchandising system, in simple CSV format. ■ The application must be browser-compatible for all popular browsers in current use. The design of the site must be Section 508-compliant to allow disabled users to access the site effectively. ■ The vendor is to assist in obtaining, integrating, testing, and configuring a merchant account to work with the chosen cart software.
How to Get Vendors Competing for Your Job ■ The vendor is to procure and install an SSL certificate for encrypted transactions. Client Deliverables and Communications ■ A single point of contact will be provided to communicate with the chosen vendor. ■ The client will turn around all approvals or feedback requests in three business days approximately, up to a maximum of five business days. Most approvals and feedback will be provided within one business day. ■ The client will prepare all copy and final images for all products. ■ The client will provide all logo files and source files for the existing website, and style guides for new designs. ■ The client will provide detailed design direction prior to graphic design rounds. Platform and Language Requirements ■ The store must be designed to run on a Linux server running MySQL and Apache. ■ The site must be programmed in PHP. ■ All programming must meet strict W3C standards as outlined on the w3c.org website. ■ The vendor is to provide recommendations for hosting and handling any server configuration and migration to the new server. Estimated Project Duration The final implementation and site launch is scheduled for January 1, 2013. Instructions and Basis for Award of Job Bids should include the name and contact information of persons to be contacted for clarification of the bid if needed. Proposals should include a summary of
Outsourcing Web Projects an approach to the work with regards to process, methodology, and testing/quality assurance. Proposals will be evaluated on the following criteria: ■ team experience 40% ■ quality of proposed process 20% ■ price 20% ■ experience and skill level of project managers 20%
Making Yourself Look Like a Professional Client In the introduction, we discussed how a good specification can reduce the costs of a project. However, this rule goes both ways—the contents of your write-up can give vendors the wrong idea about what kind of client you’re going to be. Say, for example, a vendor reads your job description and determines that the cost of your project might range between $1000 and $2000 depending on the volume of changes required during development, and the amount of time required to complete the project. Both of these factors are dependent upon the client, not the vendor. The vendor must balance a need to increase the price to allow for these factors against losing the job because the price seems too high. To be quoted the lowest price, you need to cause the vendor to think that you have all the characteristics of an easy client. This favorable impression will encourage the vendor to compete on price without fear of being burned. To present yourself as an attractive client, your project description needs to be crafted accordingly. Your project description should effectively convey these key messages. ■ You will understand what you are buying, be clear on the project goal, and have realistic expectations. ■ You will be respectful of the development team. You will work in a collaborative manner, as opposed to micromanaging or making decisions best left to developers, and you will pay on time.
How to Get Vendors Competing for Your Job ■ You will bring experience to hiring vendors and managing projects. If you can convince the vendor that you possess the above characteristics, you’ll have effectively reduced the risk that you are a “nightmare client,” which will reduce the vendor’s level of concern about taking on your project. You should enjoy a reduction in price as a result. Here are some examples of language that you can use to demonstrate that you are a good client, as well as some examples of what not to write! ■ Show vendors that you understand what you are buying, are clear on the project goal, and have realistic expectations. Never say, “The application must be 100% bug-free.” Instead say, “The vendor is responsible for comprehensive bug testing and defect tracking.” Never say, “This is a quick and easy job that should be done in less than a week!” Instead say, “The requirements are simple, final, and well-documented, so this should be a quick project.” Never say, “You must be available for immediate communications during business hours.” Instead say, “The vendor must maintain ordinary business hours and be available for phone calls or emails with a one-day turnaround.” ■ Show vendors that you will be respectful of the development team. Never say, “We are looking for vendors who can handle anything we throw at them.” Instead say, “We are seeking developers with a wide variety of skills.” Never say, “Must be able to work in a fast-paced and constantly changing environment.” This kind of statement presents the impression that your company is disorganized or chaotic.
Outsourcing Web Projects Never say, “Final payment will not be provided until the application is completely tested and accepted.” Instead say, “We will use milestone-based payments as part of a phased project approach.” ■ Show vendors that you have experience in hiring vendors and managing projects. Never say, “Provide examples of your work or you will not be considered.” There’s no replacement for this—just leave it out! Never say, “This job will lead to ongoing work for the chosen vendor. We have projects lined up!” Vendors hear this all the time and it’s usually a bluff. Leave it out. Never say, “We reserve the right to change the details of the project if need be.” This is a superfluous statement. All projects are subject to change, so this doesn’t need to be said and should be left out. Never say, “We need this project completed ASAP!” or “This is an URGENT job.” Unless you are truly in an emergency situation, don’t ever tell a vendor that you have a rush job—it sends the message that you are disorganized or have somehow gotten yourself into a jam. Never say, “Our previous vendor wasn’t able to complete the job!” Don’t mention this, true or false—if your previous vendor bailed out, it implies that you’re a difficult client.
Spreading the Word About Your Project Now that you’ve invested some time in creating a great specification, let’s see if we can use your work to gain some interest—and hopefully some nice bids—from vendors. With your bait prepared, you can now visit some of the most popular freelance websites on the Internet and post your document for vendors to see. There are literally thousands of online marketplaces where buyers and sellers of web development services come together. Many of these sites are listed in the appendix of this book.
How to Get Vendors Competing for Your Job Note that you aren’t necessarily looking to hire a vendor straight away; in fact, you probably won’t hire anyone from the initial handful of sites where you’ll publicize your job. The idea here is simply to put your project description out there, and start evaluating the feedback and bids so that you can gain an understanding of your price range. You’ll also carefully read the bids, questions, and feedback that come in, and continually refine your specification document accordingly.
Going offshore? You’ll probably receive bids from both domestic and offshore providers, and will likely notice that offshore vendors are much cheaper. They’ll also be farther away—likely in a very different time zone—and harder to work with logistically, so you’ll need to be realistic about the actual savings associated with hiring an offshore vendor. Language barriers or cultural differences can also make the project impossibly frustrating. Try to balance these considerations rather than becoming “price-blind”—it may be worth paying a little extra for the opportunity to have in-person meetings and to communicate via local or interstate phone calls rather than rack up an enormous bill by constantly phoning overseas. An offshore vendor with a low bid can wind up costing you a lot—especially if you value your time—rather than saving you money.
Now let’s spread the word about your project! We’ve provided an extensive list of marketplace websites in the appendix, but for starters, use your specification document to post your project on at least three of the following major websites. http://www.elance.com Elance is one of the biggest and most established marketplaces, and a great place to look for experienced, reliable vendors. You can paste the contents of your document into the Description field of the project listing form, but you might have to fix the formatting slightly. You can also write a one-paragraph description, then attach the specification document to your project listing. It’s free to post projects and receive bids on Elance; however, if your project is likely to be worth more than $1000, submit it as a “select” project for a refundable $25 deposit, and attract higher-quality vendors.
Outsourcing Web Projects http://www.guru.com Guru is another highly established marketplace, similar to Elance; it’s free to post projects and receive bids. http://www.rentacoder.com Chose Rentacoder if your project is more technical and less design-oriented. It’s free to post projects and receive bids. http://www.craigslist.org Always the wildcard, Craigslist can be a good way to solicit bids from local providers. Whether or not you’ll pay a fee depends on whereabouts you live. Craigslist is well known for generating a wide and sometimes surprising variety of responses. http://www.designfirms.org This service is primarily used for graphic design work, but you can post other types of projects here. Posting your project is free, but the best feature of this site is that you can search for vendors in your area, and contact them directly. Perform a zip code search, and click through to the website of each company listed in the search results. Use the contact form on any of these sites to send your document—paste the contents of the document into the form if necessary. If you can’t paste your information into the contact form, post a message that explains that you have a comprehensive requirements document that you’ll be happy to send through immediately if contacted. After posting your project on any of these sites, be sure to give vendors enough time to respond—usually at least seven days. Don’t be discouraged by vendors who ask questions instead of immediately sending you a quote. You’ll find that the best vendors ask lots of questions before bidding, and those vendors will appreciate a courteous reply to clarify their requested information. Experienced vendors know better than to provide a quote on a job that they don’t fully understand, as taking a mere guess at it might risk their profit margin. So long as their questions are reasonable and well communicated, you should consider vendors who ask questions to be at the top of your shortlist. This works both ways—a vendor who immediately offers a bid on a project that could not have been entirely, comprehensively understood without query is probably inexperienced and should go to the bottom of your vendor list.
How to Get Vendors Competing for Your Job
Understanding the Results Once you’ve allowed some time for the bids and responses to arrive, it’s time to evaluate them. With any luck, at this point in the process you’ll have received quite a few responses to your RFP. Most likely, the format of these responses will vary dramatically, arriving via email, phone, instant message, Elance message boards, and so on. Be prepared to see a wide range of estimated costs, too. So, how do you reject vendors who aren’t qualified, and start adding quality vendors to your shortlist? There’s the lowball elimination, in which you get rid of vendors who have seemingly underestimated the project—a sure sign of a vendor you don’t want to work with! To identify these types of vendors, simply look at the price range of the bids you’ve received and try to determine the reasonable range for the project. In most cases, the majority of the bids will fall within a certain range that allows the conspicuously low—or high—bids to be spotted easily. Resist the temptation to take the lowest price. Accepting a bid from any vendor who grossly underestimated the project is likely to be a waste of your time and money. Statistics vary between half to two-thirds, but we can certainly conclude that a majority of outsourcing projects wind up over budget, take longer than promised, or fail completely. It’s common knowledge that an incredibly high number of those failed projects were underestimated from the beginning! As any experienced outsourcer will tell you, any underbid project that wound up dismally had the stage set for a failed project from day one. These super-low-cost vendors are dangerous—a conspicuously low bid is the most reliable indicator of a vendor that you should never work with. Experienced and successful vendors are conservative in their project estimates; their experience tells them to estimate high, not low, in order to ensure that they maintain profitability. A suspiciously low bid can be offered for any of these following reasons. ■ A brand new company is trying to win business by offering lowball deals. ■ The vendor lacks experience in bidding on projects, and underestimates the amount of work associated with the project. This is the single most dangerous thing a vendor can do. Remember: if anything seems too good to be true, it probably is.
Outsourcing Web Projects ■ The vendor is underbidding projects with the intention of raising prices later, or asking clients to remove features in order to remain within the budget. Either intention is unacceptable. ■ The vendor is trying to attract your attention by offering a “placeholder bid” to open conversations, but will later provide the “final bid” once he or she has a better grasp on the project—a phenomenon found only on Elance. Be wary of this activity: although a “placeholder bid” isn’t necessarily grounds for immediate elimination, the vendor should be willing to provide a real bid as soon as questions are answered. To return to the example of an ecommerce site, let’s say you’ve received 12 bids on your project. In the list of bids, we can see that seven of the 12 vendors bid between $2900 and $7500. Bids 1, 2, and 3 seem suspiciously low considering the fact that nine out of 12 vendors submitted bids that were at least twice the amount of these low bids! So, let’s lose bids 1, 2, and 3. Bid 4 seems a bit low based on the range we’re seeing, but give it a “maybe” for now. Use common sense, and when in doubt, retain the vendor. Your list of 12 bids now looks like Table 1.1.
Table 1.1. Initial vendor elimination Bid #
How to Get Vendors Competing for Your Job Since you’re trying to achieve the best deal, you can also remove the highest bidder, whose bid was 40% higher than the next lowest bidder. So long as you leave yourself a nice group of candidate vendors, you shouldn’t need to pay top dollar for this job. Your list now looks like Table 1.2.
Table 1.2. Secondary vendor elimination Bid #
“But,” you protest, “is it really necessary to eliminate the cheapest vendors? Maybe one of these vendors can give me a great deal!" The simple answer to this is yes, it’s absolutely necessary to reject the lowball bids! Okay, there’s always the chance that one of these vendors is a brilliant, diligent kid living with his parents who can deliver the project successfully on a shoestring budget, but these cheap projects are just far too likely to fail. They will ultimately be more expensive, time-consuming and stressful for you, the client. Remember that there are no barriers to entering the web development business. Any person from anywhere in the world can simply say “I’m a web developer” and start bidding on jobs. As a result, there are large numbers of inexperienced and unqualified vendors in the web design industry, and most of them lack the experience to execute your project properly. The chances of your getting lucky with a cheap vendor are about as good as your winning the lottery—don’t leave your project to chance! In this book, you are learning how to find the best price for quality work. If your priority is simply the absolute lowest price, of course you can choose your vendor right now, based on price alone. But if you do decide on this route, be sure to hang onto this book—chances are you’ll soon be frustrated and looking for a new vendor to
Outsourcing Web Projects save your troubled project! For everyone else, let’s push on and see how your shortlist of vendors can be narrowed down even more.
Getting Down to Business You now have a shortlist of potential vendors and a good idea of the general price range for the project. Armed with this new information, two paths are available: ■ Try to gain more bids using other freelance or job listing sites, or your personal networks. ■ Continue to work with your existing list of potential vendors, hoping to find the right match for your project. Ideally, you’d take both of these routes. As you try to attract more bids for the project, you can use the feedback that you already received to help gain better bids in your next attempt. In other words, if you received any interesting questions from the bidders in the last round, you can repurpose those questions into a useful part of the job description. By enhancing your original project specification document based on this feedback, your project will become even more attractive to vendors and, with any luck, will gain even better bids in your next round. For example, let’s say a vendor asks, “Can we program your project in Python?” Reading this question, you realize that your desired language or platform wasn’t specified in your description. You remember that you had more or less decided on PHP/MySQL based on the advice of yet another programmer who bid on your project. You can now supplement your description with a short paragraph indicating your newly selected language or platform requirements. This is a great example of how the feedback you receive from each developer can help to clarify the overall project requirements document and help to gain more precise and higher quality bids. Even if you’re satisfied with the responses you received in the first round, it’s always a good idea to post your project a second time and see what kinds of bids come in. Some vendors who ignored the project in the first round might respond to it in the second round, and an expanded description (based on what you learned from the first round of bids) might generate further interest as well. The second time you post your project to various websites, you can also expand your distribution to in-
How to Get Vendors Competing for Your Job clude individual web developers that you’ve found online, or know of through friends or family. Post your project on the freelance websites that you skipped in the first round, and anywhere else that came up along the way. Save your most promising vendors for last. The vendors that you most want to work with, have the best reputation, or are already known and trusted by you should be given your project document once you’ve already had these initial rounds of feedback, because you’ll have improved the document, adjusted your expectations, and gained a better idea about the right price for your project based on that early feedback. By leaving the decision on your preferred vendor until the end, you present yourself to these choice vendors as a more experienced client who knows a lot more than you did before gleaning information from the responses of vendors about what you require, which sets the stage for a good price and a successful project.
Using Search Engines to Find Vendors If you need more bids on your projects but are running out of places to post your specification documents, it might be time to resort to the search engines. However, the key is to search intelligently: you’ll perform narrow searches and communicate efficiently with potential vendors. Using narrow searches simply means that you’ll search using specific search terms as opposed to using very broad ones. Searching with a broad term like “web developer” or “web design” will return thousands of results (both paid and natural) but these could take days to sift through. A better approach is to identify a key aspect of your project and search for vendors using related keywords. For the ecommerce example, an effective search might make use of terms like: ■ “ecommerce programmer” ■ “shopping cart install” ■ “build online store” These terms will provide a much more closely targeted response than a search using short, generic phrases will, so they’re more likely to reveal a good vendor that you can contact directly. To find vendors that are close to you, further refine your search terms by geographic location, using phrases such as:
Outsourcing Web Projects ■ “ecommerce programmer Atlanta” ■ “shopping cart install Los Angeles” ■ “online store Kansas City” As you search, you’ll gradually compile a list of potential vendors and capture their email addresses. Once this is done, you’ll assemble a single email with your project description attached, then send it to all of them at once. Remember to put yourself as the email recipient (as if you were sending yourself an email) then use the Bcc field to include each of the vendor recipients. That way, recipients won’t be able to see who else you sent the email to. Once your second round of posting and emailing is complete, sit back and wait for the responses to roll in. You’ll use the process of elimination to get rid of the bottom-feeders (the lowball bidders who estimated the project suspiciously low) and the super-high-priced shops, and just keep the “middle” section. In the next section, you’ll learn how to use your shortlist to identify the winning vendor for your project. Your progress so far: Get vendors competing for your job. Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Find the Perfect Outsourcing Partner At this point, you should already have a shortlist of potential vendors and a great job description. The next step is to refine that shortlist based on a variety of criteria until you’ve created a list of qualified and competent vendors to choose from. You’ll evaluate each of the vendors on the list and eliminate those that don’t meet your quality criteria. You’ll then undertake some validation of the vendors to make sure their claims are true, which will allow you to eliminate more vendors. By the end of this course of action, you should have a well-refined list of quality vendors from which to choose. Once you’ve reached that milestone, you’ll have prequalified all of the vendors, and will start to look for the lowest price among them.
Outsourcing Web Projects
Elimination Round 1: Checking Portfolios, References, and Testimonials It’s hard to imagine why anyone would hire a web designer or programmer without seeing his or her portfolio first, but this happens with surprising frequency. On Elance, in particular, many sellers will look at a vendor’s website and judge the quality of the vendor based on the appearance of that site. The problem with this approach is that any vendor can hire a designer to make a nice-looking website, but, obviously, it doesn’t prove what the vendor can do in turn for someone else. For vendors to be truly qualified to work on your job, they need to show that they have done real, relevant work for paying clients. The majority of web designers and developers market themselves online, so we can assume that they all know the importance of an online portfolio and client page with testimonials. We can therefore conclude that any web developers who actually have real experience and an established client base will proudly display that information on their websites. We can further assume that any firm that cannot furnish this information is probably brand new and doesn’t have a portfolio or client list to show. So, your first round of eliminations will be to lose vendors who don’t have a relevant portfolio and client list. Ideally, you should have no trouble finding this on your own on the vendor’s website, but it’s acceptable for a vendor to email or otherwise provide portfolio information. If you can’t find a client list or portfolio on a vendor’s website, ask for one. Regardless of the format, review the portfolio or client list against the key points that follow to decide whether you’ll eliminate or retain each vendor.
What to Look For in Portfolios ■ Check to see that the projects listed in the portfolio were completed for legitimate, paying clients. Some vendors will list hobby, family, or other sites in their portfolio in order to make the list look bigger. There’s nothing wrong with doing that, but you need to see the work that’s been completed for a few clients that are obviously commercial and who have clearly paid for the vendor’s services. For example, if your web designer lists only his son’s Boy Scout troop’s website, his wife’s tennis club site, and his hobby site about fishing in his portfolio, you might deduce that he’s a new designer and hasn’t gained much, if any, paid work yet.
How to Find the Perfect Outsourcing Partner When reviewing a vendor’s online portfolio, check to see if any of the websites listed are actually owned by the vendor. A good way to find out who owns a website is to look at the footer, or the About section; you can also check the site’s registration information (at register.com, for example) to see who owns the website. Eliminate vendors who don’t list any commercial clients that aren’t related to the vendor. ■ Expect to see at least five portfolio entries for each year that the vendor has been in business, up to about 15 entries in total. Some clients don’t allow their projects to appear in vendor’s portfolios, but most do. As such, a successful web developer should have no problem accumulating a handful of clients to display each year. Once they have an impressive portfolio of more than ten clients, many firms stop adding further projects, so it’s okay if the list isn’t longer than ten or so. However, if vendors claim to be experienced, but have less than five portfolio entries, you should eliminate them. ■ Make sure the portfolio entries represent work that relates to your particular project! Don’t fall into the trap of assuming that every job in the portfolio was a large and impressive project. ■ Many vendors will do a tiny job for a big company, and then put that company right up at the top of their client lists. If in doubt, ask the vendors what they did for those big companies, and when. If you need web design services, be sure that the vendor actually did design work (as opposed to copywriting, for example) for that client. If you’re looking for an ecommerce specialist, make sure that the portfolio work relates to ecommerce. If it doesn’t, eliminate the vendor. ■ Watch for freelancers or independents who add entries to their portfolios from their day jobs. Lots of web developers moonlight at night, and they’ll add work from their day job to their nighttime portfolio. This is not necessarily a bad thing, but you need to be extra careful about these types of vendors, and be sure that you understand their actual levels of experience as represented by their portfolios. ■ If a vendor tells you that he or she has many more clients to add to the portfolio but “hasn’t had time to do it,” consider eliminating that vendor. This is almost never true. Successful vendors frequently cease to update their client list, but
Outsourcing Web Projects it’s very rare for a good vendor to completely ignore his or her client list before it reaches five or more listings. ■ If any vendors tell you that they have many more clients but their identities can’t be revealed because of legal reasons— they’re bound by a non-disclosure agreement, or NDA—ask the vendors to provide you with some verifiable references, and offer to sign NDAs yourself first if required. If they resist, eliminate them. It’s extremely rare for a vendor to have 100% of their clients under NDAs, which makes this a highly suspicious claim.
What to Look For in Client Lists, References, and Testimonials ■ Be suspicious of potentially fake testimonials. A true testimonial is a powerful marketing tool, and most web developers will take full advantage of this by listing the quote, the full name, the company, and the position of the person who provided the testimonial. Some testimonials will even include a photo! At the very least, you should expect each testimonial to include the name and company of the source. If the testimonials are vague or skimpy, try checking one of them out on your own and consider eliminating the vendor if you aren’t able to validate any of his or her references. ■ Always ask for three references and verify the third one. Most vendors will happily supply three references to potential clients—typically provided in a nice list with their most impressive reference up first. Skip this top reference entirely. It’s usually someone who is friendly with the vendor and has agreed to provide strong references under any circumstances. Instead, call the third reference. You might gain a better idea about the vendor that way, and avoid wasting time on speaking with the “sure thing” reference. ■ Choose two or three listings from the client lists or testimonial pages, and ask vendors to provide a bit of detail about those jobs. If they resist or are vague, consider eliminating them.
How to Find the Perfect Outsourcing Partner
Elimination Round 2: Checking Individuals vs. Companies On the Internet, any individual can claim to be a “company” without really being one. websites abound that belong to individuals, moonlighters, and freelancers masquerading as companies. It’s important to learn how to spot these types of vendors so that you can evaluate them effectively. An independent or freelance vendor might be suitable for your project, but it’s important to know who you’re dealing with, and to develop a sense for how honest this person is in his or her sales process. Here’s a few hints for how to tell whether a company is actually a single person. ■ The easiest way to determine whether you’re dealing with an individual or a group is to ask. If a vendor is not forthcoming about the fact that he or she is an individual but uses a company name, you need to question that behavior in the light of business ethics and possibly eliminate that vendor from the list. ■ Look on the About page for a list of the employees or principals in the company. Most groups will want to differentiate themselves from the individuals and will list their directors or founders by name. ■ A real company will be incorporated and is usually more likely use a name like Best Design, Inc. or, Best Designs LLC. Look for these corporate marks in the About sections or privacy statements on the vendor’s website—these are places where a company would ordinarily use its full, legal name. If a vendor refers to him or herself as a company, but you can’t find the corporate mark (Inc., Corp., Corporation, Ltd., LLC, etc.) anywhere on the associated website, be suspicious of that vendor. It’s not that it’s necessarily a bad thing to hire an individual who's trying to project a professional image by using a company name instead of his or her actual name. The experienced buyer, however, will want to know whether each vendor is a real company or just a single person because it will help in evaluating whether that vendor is a good fit for the project. If your project is large and will most likely require the work of more than one person, be wary of individuals or freelancers who present themselves as companies. They might plan to hire sub-contractors to get your work done, which increases your risk.
Outsourcing Web Projects
Validation Round 1: Checking Public Records At this point, you’ve refined your list by eliminating vendors who are inexperienced or incompetent (the lowballers), trying to be something they’re not (the individuals posing as companies), and are way overpriced (high bidders). Through this process of elimination, you’ve formed a shortlist of vendors who appear to be good candidates for your project. You’ll now validate the vendors on this list by checking public records and other sources to confirm that these vendors are all they claim to be. This step is similar to the credit check process that banks perform before they grant you a credit card. The first place to validate the legitimacy of a company is in the government database for the state in which the company claims to be incorporated. Any corporation or LLC must be registered in its home state, and these records are publicly available, usually via the Internet. Corporate records are usually found with the Department of Corporations or the Secretary of State of each state government. While each state varies in its policies, it’s generally easy to find the government office that handles corporate registrations and perform a free search. For example, if your potential vendor uses a Californian address and its business name ends with Inc. or LLC, for example, you should have no problem finding the website of the Secretary of State for the State of California, where the Corporate Business Portal is conveniently located.1 Click on Business Search, then enter the name of the vendor’s company. Its corporate registration should be easily found within the results. If you don’t find those details in the database, be wary of the vendor. It’s worth asking the vendor where the company is incorporated (it might be registered in another state) if you aren’t able to find it, because some vendors incorporate in states such as Nevada or Delaware for tax purposes. This is acceptable as long as the vendor is forthcoming about his or her legal status and appears in some government database. If you do find the company in the database, be sure that its corporate status is not something along the lines of “dissolved,” “suspended,” “forfeited,” or similar. Such a status indicates that the state government, for some reason, recognizes the vendor as a company that isn’t in good standing. Never do business with a company that has a questionable corporate status, as this is usually due to tax 1
How to Find the Perfect Outsourcing Partner problems or other financial issues. Most states list a valid and compliant company as “active”—don’t consider anything less. Most corporate or business databases will list at least one name of a principal or director of the company. A great way to learn even more about the company is to take this name and Google it. You might get lucky and find articles, forum posts, or press releases that make reference to this vendor (or the owner), which is useful for your research. This corporate record-checking step can be a bit cumbersome, but with some of practice you’ll find that it only takes a minute or two to locate most vendors in a state’s corporate records. Since most states offer these databases to the public free of charge, this step can be considered a cost-effective way to perform a legitimate verification of a vendor’s business health.
Validation Round 2: Checking Private Records You can take your validation of vendors a step further by taking advantage of one of the many corporate credit-checking services such as Equifax,2 Dun & Bradstreet,3 or Knowx.4 Of these three, Knowx is the easiest and cheapest to use—the service allows you to perform a quick search for free, then decide whether to buy the reports listed in the search results. Simply search for the vendor you’re considering on Knowx, and if the search results say “No Record Found,” you can assume that the vendor is new, or doesn’t exist under the name provided. If Knowx does return results, you can purchase a simple history about the company for as little as $25. Equifax and Dun & Bradstreet are more expensive, but they do offer more comprehensive credit and history reports on most US businesses. Since they don’t offer free searches, you might only use these services if you have a large or risky project and want to do additional checks and validation on your potential vendors. Should you eliminate vendors during these two validation steps? You must make a judgment call. If, for example, a vendor insists on being a Californian company but doesn’t appear in the California state records or Knowx, you should probably eliminate that vendor. On the other hand, a vendor who has a company name and
http://www.equifax.com http://www.dnb.com 4 http://www.knowx.com 3
Outsourcing Web Projects website, but is forthcoming enough to admit to be operating as an individual, might be acceptable even though he or she doesn’t appear in either of those databases.
Refinement Round 1: Checking Processes and Methodologies Now that you’ve eliminated vendors who aren’t up to scratch, let’s start refining your list to find out which of the remaining vendors appears most favorably. We’ll start by looking at each vendor’s proposed process and methodology—the system used for programming and creating applications. This is a critical test of a good vendor, but due to the wide variety of processes in use, you can’t simply eliminate vendors who don’t conform to any one process model. Instead, you’ll try to assess each process individually and keep detailed notes about which vendors appear to be stronger. The importance of this assessment is dependent on the application at hand—for instance, if you’re simply looking for a graphic design shop to build a very simple website, you could skip this step, because it’s acceptable for such projects to be executed without a formal process. In this first round, you’ll be looking at each vendor’s ability to manage the project effectively and smoothly through the use of a good process. You should be able to learn about each vendor’s process from his or her website and, failing that, by asking pertinent questions about his or her development processes. The vendor should be able to supply some kind of coherent response to you in short order. When evaluating a vendor’s process information, the objective is to find vendors who: ■ have some kind of legitimate and coherent process in place, ideally including such elements as milestones, deliverables, and payment information ■ can articulate that process verbally, or in writing, without hesitation ■ are confident in the process ■ make it clear that they, not you, will manage the project to its conclusion Note that at this point we aren’t particularly concerned with how exactly the process works. The reason for this is that most small- or medium-sized web projects can be handled effectively with the use of any kind of logical approach. We can define a
How to Find the Perfect Outsourcing Partner legitimate process as involving any combination of documents, milestones, and deliverables that makes good sense and provides documentation and clarity along the way. This requirement can be met by a few documents or even some bullet points; as an example, take a look at the following simple process that would be adequate for a small website project. 1. The vendor provides a planning worksheet for the client to complete and return. The document includes all of the creative input needed to make the designs, and all of the technical questions (hosting, ecommerce, platform and language, etc.) needed to build the pages. The client must also provide an initial 50% payment before development begins. 2. The vendor will evaluate the worksheet and prepare a final project description document for the client to sign off. Once the document is signed off, the creative work will begin. 3. The designers will provide up to three concepts for the client to choose from. The client can then ask for up to three revisions of the chosen concept. 4. Once approved, the final design will be programmed and installed onto the web server, at which point the second 50% payment is due. 5. Any changes that are requested after the sign-off may incur an additional charge if they are inconsistent with the signed-off project planning worksheet. 6. Vendor provides 30 days of warranty against errors or technical problems, and hosting for one year. It seems brief, but this simple process contains the critical elements we seek: ■ Payment milestones are described. The client understands that 50% is payable before any development takes place, and 50% after the site is delivered. ■ Deliverables are described. The client understands that he or she will receive and return the planning document, receive up to three rounds/revisions of the designs, and will then have to provide approvals and feedback. ■ Milestones are described. It’s made clear that the “sign off the final project description document” is a key milestone, after which any substantial changes might incur a fee.
Outsourcing Web Projects Don’t be surprised if you encounter vendors who aren’t able to cite any process at all! Many vendors have no system or process for managing clients, and will simply improvise the paperwork and communications process for each client. Unless your project is very small and contains no programming or database work, you’re best advised to identify and avoid such vendors. Also, watch out for processes that sound great but don’t mean much! Don’t accept fancy acronyms or flowcharts as process models unless you understand them. A process is not complete unless it contains milestones, deliverables, and payment information. Here are some guidelines for spotting generic, fake, or meaningless processes as described by vendors.
Meaningless Process #1: Diagrams and Acronyms The “fancy-diagram process” is the all-time most-used but most-useless process. A cute diagram identifies the steps of a process but provides no actual detail about what the process entails. The key elements—milestones, deliverables, and payment information—are lacking. When you see a process, you want to know what you are going to receive, what you’re expected to provide, and when you’ll be required to write a check. Here’s a couple of examples of non-existent process models that hide their emptiness behind flowery words or fancy diagrams—first, have a look at Figure 2.1.
How to Find the Perfect Outsourcing Partner
Figure 2.1. A fancy but meaningless diagram
Unfortunately, you aren’t going to learn much from a diagram that looks nice, but doesn’t actually tell you anything! The process shown in Figure 2.2 is slightly better, because it makes reference to some deliverables—documents, design concepts, and milestones (approvals)—but this example remains too vague and avoids all reference to payment.
Outsourcing Web Projects
Figure 2.2. A slightly more helpful diagram
Meaningless Process #2: The $250,000 Process Many vendors claim to use an enterprise-level process system as their internal process. These systems are usually extremely expensive, often hundreds of thousands of dollars, so these claims are commonly untrue. Watch out for vendors who claim to be using Rational Unified Process (RUF), Extreme Progamming (XP), or Agile as their development model. Ask questions and try and determine if this is actually the case, or if they’re just name-dropping for marketing purposes. If these vendors are in fact using a very formal process model, they should have no problem proving it by providing comprehensive breakdowns of each element of the process.
Meaningless Process #3: Flowery Words The use of a lot of complicated or jargon-laden language is another classic approach for vendors who lack process. A vendor writes up a seemingly legitimate process
How to Find the Perfect Outsourcing Partner that’s packed with impressive technical terms, but the key elements are missing, rendering the process useless.
Process Descriptions: Two Examples Processes need to be evaluated individually, since each has its own level of legitimacy. Here’s a couple of real examples: a poor process description, and a better one.
Example 2.1. A poor process description Communication The most important part of your website design process is to listen to you and understand exactly what you need. You stay actively involved every step of the way. Website Direction Once we understand your creative and business goals, we begin to develop a custom website design and production plan. Every step in the process, from initial design to end programming, will serve the overall vision of the project. Website Graphic Design The visual presentation must always serve the needs of the website design. When form and function meet, your message has impact and attracts attention. We’ll build custom website designs and color schemes that fit your ideas. Whether you have a pre-established brand to adhere to, or you’re starting from scratch, the message will drive the website design. Website Coding Once you’ve approved the website design and structure, we’ll begin building and programming the website, with a focus on giving your target audience the best possible experience. Website Delivery Upon your approval of the finished product, your website is made live. What’s Next? While most website design companies consider a project concluded after the design and production phase, we see a completed website design as the begin-
Outsourcing Web Projects ning of a successful partnership. Your website is only a success if it’s attracting the attention of your target audience. Please visit our search engine optimization section to see how Bob’s Slipshod Web Development Company is unmatched in attaining very high rankings within all major search engines worldwide.
This process sounds okay, but the description isn’t very helpful. There are a few references to deliverables, but not enough information to give the reader any comfort. There are no references to what the client needs to do, or when payment is supposed to take place. Let’s have a look at the next example.
Example 2.2. An improved process description Our website design process comprises essentially five stages: 1. planning 2. design 3. production 4. launch 5. online The planning phase of a website design begins when you contact us. We will initially ask you to fill out a Client Survey. After reading over your survey, we may have a few clarifying questions. Then, we’ll have an estimate of the cost of your project to you within one week. When we have finalized these details of working together, we’ll show you through our project area, where you can see all of your milestones and the progress of your project. At this time, you can begin to send us any content you’d like on the site. Also, we will make sure that your domain name and website hosting are set up, if they are not already. Finally, we’ll begin planning your site outline, sending you a sitemap for approval. Once we have all of your content and the planning is finished, we’ll begin work on design, which includes page mock-ups and a style guide. Our projects usually go through two rounds of mock-ups. Our first phase of mock-ups concentrates on
How to Find the Perfect Outsourcing Partner general concepts and content placement. We’ll usually present two or three ideas at this point. After we receive feedback from you, we refine those ideas into a single design. Once we agree on a look and feel for your site, we’ll move into a production phase. We create your website using a variety of technologies. Throughout production, we’ll post iterations to the project area on the website so that you can follow the work as it progresses. Site launch includes testing the entire site and all functionality on supported browsers, and then we launch your website. Once your website is launched online, our involvement with your site is entirely up to you. We enjoy the process of helping your site grow with your business. Although we will complete site updates, if you have us create an updateable website, you won’t need us for that! You can update your site yourself without our help or additional charges. This description is much better! It describes deliverables (the client survey, content provided by client, number of mock-ups), and milestones (feedback on designs moving into production phase). Payment is not mentioned, but this is a common omission that can be acceptable if the vendor is able to address the payment details via phone or email. In the end, the evaluation of a vendor’s process model is highly subjective and should be considered on a case-by-case basis. Make your decision based on the answers to some basic requirements: ■ Does the vendor have a meaningful and coherent process? ■ Does the process address deliverables (who gives what to whom, and when), milestones (key points in the project that separate phases), and payment information (how much you pay and when)? ■ Is the process real, not just a diagram or some text? The process should be coherent and easy to explain. A final issue to consider is that of quality assurance and testing. Ask each vendor if he or she has a testing process in place, and expect a description of how the product will undergo testing and by whom. A good vendor will take responsibility for browser compatibility and functional testing, and will provide some warranty
Outsourcing Web Projects period (typically 30 to 90 days), during which any reported bugs will be fixed by the vendor free of charge. Judging a vendor’s process model can be tricky if you’re new to the web development world. A good rule of thumb is, “if you don’t understand it, it’s too complicated”—an overly complex process model rarely works! Don’t forget to watch for milestones, deliverables, and payment terms as you evaluate each vendor’s process, and use common sense to determine how effective each process seems to be.
Your New Shorter Shortlist At this point, your list of potential vendors has been refined to the point where all remaining vendors are good candidates for the job. Any of these vendors could probably deliver your project successfully, having passed all of your validation checks. The next step is to choose your favorite vendor, using price as the major factor, but also considering everything else you’ve learned along the way. You won’t stop there, though. In the next section, you’ll contact your perfect partner with some price negotiation and see how things pan out. You’ll choose two more vendors and continue speaking with all three, just in case your favored Vendor Number 1 drops out or doesn’t meet your expectations. Your progress so far: Get vendors competing for your job. Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Get the Best Price for Your Project Welcome to the third step in achieving outsourcing excellence! Now, you’ll take the remaining three vendors from your list and begin to explore pricing. You’ve already taken steps to get the best price: you wrote a great specifications document that made you and your project attractive to vendors, and you’ve reduced your shortlist of potential vendors to just a few. Now, you’ll work towards maximizing value in two ways: ■ You’ll try to reduce the project price. ■ You’ll try to increase the amount of work the vendor will do for that price. For starters, we’ll look at how vendors estimate their projects and how you can make your project less risky to vendors, with the hope of reducing the overall price of your project.
Outsourcing Web Projects
Understanding How Vendors Estimate Projects The first responses you received from vendors, way back in Chapter 1, might have had you wondering, “How can there be so much price variation between vendors for the exact same project?” The answer is simple: anyone and everyone can be a web developer today, and a huge percentage of vendors don’t know how to estimate a project at all! In the enterprise-level software development business, there are formal processes for estimating projects with multi-million dollar values. Each part of the project is divided into tasks, and each role and responsibility is identified. Each individual element of the project undergoes a detailed hourly estimation in order to create a comprehensive schedule. Major risks to the project’s success are identified in a risk assessment process. Additional labor hours are added to the price estimate to compensate for these risks by adding labor hours to the price estimate. The final estimate is determined by using all of this information (typically thousands of lines in a project planning tool like MS Project) to multiply the projected total hours by the average hourly rate. People in the web business frequently take the opposite approach to this formal process! Typically, about one-third of vendors who bid on a web development project have no experience with formal estimation processes and simply make guesses to produce their bids. These bids tend to be very low, because these inexperienced vendors aren’t making much money and they probably think that their estimated price will be a cash windfall for them. More often than not, such vendors will learn a cruel lesson in underbidding when they have to decide between taking a loss on the job or disappointing their clients. Since you’ve eliminated these lowball bids, you can disregard this entire category of undesirable vendors. Likewise, estimations that are far above the average for the job are typically submitted by vendors that are already successful and don’t need your business. These vendors simply look at the project and issue the highest price they think they might realistically win—theirs is an “I don’t need this job, so if I take it I want to be paid well” mentality. You’ll leave these high-priced vendors alone, too.
How to Get the Best Price for Your Project Among the remaining bids, the estimation process still varies in nature—each vendor adjusts the estimation based on internal factors and a perception of the client. A typical bid is generated as follows: 1. After reading the project description, vendors take a guess, albeit educated, at how long it will take to build (but not to test, refine, polish, or otherwise support) the application as described. This estimation will be multiplied by their hourly, daily, or weekly rates to produce the “base cost” of the project. This reflects the “perfect world” price for the project if absolutely nothing goes wrong. 2. Based on the profile of the potential client, vendors will try to determine the “pain in the neck” factor associated with this job, which we’ll just call the pain factor from here on. 3. To create the final estimation, vendors take their guesses at the project cost, and adjust it based on the pain factor. Understanding this final step is absolutely critical if you want to outsource successfully and receive great service at competitive prices. Even though it seems strange, vendors are evaluating you as much as you are evaluating them. For this reason, you avoided writing certain things in your documentation that might suggest that you’re a difficult client. Now, you need to continue along that line and try to make yourself appear an experienced, no-hassle client: look like you know what you want and will be easy to work with.
Being a Dream Client to Gain Dream Prices With any luck, you’ve already impressed the vendors with the comprehensive and well-written specification document that you wrote in Chapter 1. Since most clients don’t bother to go to any trouble with this document—they merely provide a vague, 100-word description of the job—the vendors have probably already taken note of you as a potentially favorable client. Next, you’ll do whatever you can to make the vendors think that you’re going to be the friendly and considerate client they always hope for! Most clients make the mistake of taking the reverse attitude, reasoning “I’m the one paying good money for these services, so why should I have to go out of my way to impress a vendor?” Don’t take this approach—you’ll be one of the many of people who hire web developers, only to find themselves in a jam when their developers
Outsourcing Web Projects are suddenly too busy to service them. Web developers are in high demand these days, and reliable, skilled developers are going to expect—and deserve—some consideration and respect. Just being the one who writes the checks doesn’t put you 100% in charge, as you’ll know from your relationships with your doctor, dentist, auto-mechanic, accountant, or attorney. Outsourcing to a vendor is a similarly professional relationship in which both parties need to be satisfied and profitable in order for your project to be a success. The bottom line? You need your vendor to like you enough to do a great job on your project. The very best way to ensure you get great deals from web developers is to be an existing client, with a known pain factor. For example, let’s say a vendor estimates a project at around $2500. For a brand new client who seems a bit inexperienced, the vendor might add 80% onto this price, in anticipation of the client changing his or her mind repeatedly, misunderstanding directions, and taking too long to do approvals—all typical and expected behaviors of inexperienced clients. However, the same project for an existing client—who is already known to make good decisions, turn around approvals quickly, and be a prompt payer—might be considered to involve a very low pain factor. So, that client might be charged the actual price of the project, $2500. That’s a nice discount just for being painless! To become that dream client, you need to communicate with your potential vendors in a way that demonstrates to them what a great client you’ll be. Once you’ve done that, you’ll enter into actual price discussions and see if you can either reduce the price, or increase the value of what you’ll receive for the price. The approach is simple—just email each of the vendors with the intention of communicating your attractiveness as a client. These emails can be short and informal, and don’t need to follow any specific format. After all, your correspondence simply needs to send a message about yourself to the vendor, even though it might appear that you’re responding to a proposal or bid. Although each vendor represents a different scenario and should receive a customized message, you can draw upon the following outline to create your emails: 1. Demonstrate interest and enthusiasm for the vendor. Most vendors value politeness and will appreciate these pleasantries. ■ Thank the vendor for his or her response and bid on your project. ■ Indicate your desire to work with the vendor.
How to Get the Best Price for Your Project ■ Demonstrate interest in an unrelated offering on the vendor’s website or other materials. Ideally, you could mention that you are also interested in some of the vendor’s other services. 2. Demonstrate interest and enthusiasm for the project. ■ Tell the vendor that you’re excited about the project and look forward to getting started. A client who’s excited about the project is more likely to be a responsive and attentive client. ■ Mention that you, or another specific person, will personally manage the project and act as a point of contact. A single point of contact is a sign of a good client, and helps reduce the vendor’s chances of having to deal with a committee on the client side. ■ If you have experience with managing web developers or outsourcing, say so. Experienced clients are always more attractive to vendors. However, don’t ever excitedly claim your status as an “amateur designer” or “ex-programmer” by way of registering your personal interest—this will suggest that you’ll be meddling in the project workflow, rather than being a client who’ll be desirably hands-off. ■ Mention that you’re nearing the finalizing of your vendor evaluation and that the vendor is on the shortlist. Suggesting that the vendor is seriously being considered for the job should increase his or her interest and attention. 3. Add a simple question or comment about the project requirements or specifications to serve as a premise for your entire email. It’s also a nice way to learn a few more details while continuing to assess this potential vendor. ■ Ask a question about the time frame, about people on the vendor’s team, or about the intended approach for the application. If you don’t have any questions, ask about the vendor’s experience with related technologies. ■ Be sure to mention some kind of time frame for the vendor selection process. This will make you look more professional and process-oriented. If in doubt, opt for a long period, such as eight weeks, for vendor selection. Here’s an example of a quick, simple email that follows the above outline. This example is a response that was made to an Elance bid that had been submitted by a
Outsourcing Web Projects development firm in India. In this case, let’s assume that the client isn’t yet sure that this is the vendor of choice, but might try to persuade the vendor to reduce the price later on. For now, the client simply wants to have the vendor onside, and to have the vendor think he or she is a perfect potential client!
Example 3.1. Email to potential vendor Dear [Potential Vendor], Thank you for your bid on our Elance project “Ecommerce Store Development.” We appreciate the helpful notes you provided along with your bid, and we are extremely interested in developing a relationship with an offshore firm such as yours. I am especially interested in Indian companies as I am planning a trip to India for my vacation this winter and might be visiting Delhi. I also notice that you offer SEO services, which will be of interest to us once we complete the initial development of the store. As managing director of SomeCorp, Inc., I am responsible for identifying and managing vendors for this type of project. We have had success with outsourcing projects in the past, and we try very hard to give good specifications and quick approvals—and we always pay our vendors on time. Your firm has been added to our shortlist of candidates, and we expect to move forward with our chosen vendor within two weeks. One question I had about your firm is: can you help us obtain a merchant account for use with our new ecommerce store? This is our first online store, and we’re looking for some guidance with that aspect of the project. I look forward to hearing back from you. Regards, B. Fernwood As you can see, the email should be short and sweet, but carefully crafted to communicate some deliberate messages to the vendors. Once you’ve sent such an email to each vendor, wait a few days for their responses, then proceed to the final selection process.
How to Get the Best Price for Your Project In the next section, we’ll discuss ways in which you can sweeten the deals that vendors offer to you, and make your final choice.
Sweetening the Deal Up until this point, most of your time and effort has been devoted to making your project attractive to vendors and showing yourself as an attractive client. As a result, your shortlist should consist of vendors who are very interested in working with you because the likely pain factor associated with your project appears to be low. After all, you’ve demonstrated that you know how to describe your needs clearly and that you’re respectful of vendors. You’ve also shown that you’re friendly, considerate, and excited about the possibility of undertaking a successful project. Now it’s time to take advantage of the good faith you’ve earned from your potential vendors as you try to argue for a price reduction and see what else you can have thrown into the deal. It’s important to note that because you’ve already screened the vendor list effectively, you can conclude that the cheapest vendor who remains on your list is the least expensive vendor who is fully qualified to do the work. Based on that perspective, you’ll likely wangle the best deal for this project simply by choosing the lowest priced vendor from your shortlist of qualified bidders. Before moving on, however, let’s ask a couple of questions about whether your situation can be improved upon: ■ Are any of the vendors willing to lower their prices? ■ Are any of the vendors willing to offer a bit more for their prices? To try to gain a better price, or more services, you’ll send another customized email. You’ll employ the same level of courtesy and politeness that you used in the first email, but this one can be a bit shorter and more focused.
Don’t Squeeze a Discount Never, ever ask a vendor for a discount! This sends the wrong message to the vendor—it communicates that you’ll always be asking for discounts, which is a major annoyance for any vendor. Furthermore, vendors whose clients always ask for discounts will typically learn to add a little extra to the project estimation so that they can remove it later in the negotiations under the guise of a “discount.”
Outsourcing Web Projects Clearly, this situation negates any actual savings that you, as the client, might otherwise have been able to achieve.
Your email will gently convey the idea that the only remaining factor in your decision is price, and that the vendor has a real chance of winning the job if he or she is the lowest bidder. State the fact in a way that will encourage the vendor to lower the price if so inclined. You’ll also test the waters to see whether you can score some extra services for the same price, which, after all, is almost as desirable as paying a reduced price. You’ll undertake this exercise by including the following points in another customized email to each vendor: 1. Be sure to reiterate your appreciation for the vendor and the bid. 2. Make it very clear that you want to work with the vendor and that he or she is your first choice based on his or her skills, qualifications, and communication. Add that you would have made this decision by now, except that you’re still evaluating some vendors whose bids were slightly lower. ■ Note that we said slightly lower. There’s no need to exaggerate the claim, as any discount you receive should be welcome. Also, remember that vendors will be wary of clients who ask directly for discounts, so you need to be very careful with your language. Using the term “slightly lower” lets the vendor decide how much to discount the price, if at all. ■ Don’t use lines such as “our budget is tight so we are trying to find the best price.” This suggests that you’re going to be stingy and are merely shopping on price, without considering the value that the vendor has offered: not a promising sign of an appreciative or desirable client. A better way of expressing this message is to tell the vendor that you are “down to the final selection and the primary factor at this point is price.” It’s vague, but the vendor will perceive the idea and respond accordingly. 3. Next, ask the vendor a few questions about the details of the service on offer. These questions are legitimate, but you’re asking them right now as a means of sweetening the deal as you near the finish line. Many vendors are wary of providing discounts but might be flexible on offering some expanded services. Try questions like these:
How to Get the Best Price for Your Project ■ Do you offer a warranty period on your services? If so, how long? (If the vendor already offered a warranty period, see if you can gain a longer one.) ■ Is hosting offered as part of the package? Would you be willing to host the application as part of the project? ■ Will you be preparing detailed specification documents? What other documentation will be delivered? (This is an important point—any documentation that's delivered during the project will be extremely valuable if you ever need to choose a new vendor or take the project in-house.) ■ Ask about any other elements you can think of that you would appreciate being included in your deal, such as: ■ Will the vendor provide any training or support on this new application? ■ Will future upgrades be performed on any installed software? For how long? ■ Can the vendor help to optimize the developed application for optimal performance? 4. If it’s actually true that you’ll offer ongoing work to the chosen vendor, this is a great time to mention it. We avoided making this suggestion in the first email, because most clients exaggerate their intentions to engage a vendor in an obvious effort to receive discounts. However, since you’ve already warmed up these vendors with your previous email, it would be okay to briefly mention the possibility of ongoing work. Keep it short, though! 5. Make the email personal! For each vendor, be sure to use the name of the contact you’re dealing with. Make it clear that you are enthusiastic about him or her winning the project, and that you are on his or her side. Try to be friendly and gentle in your tone, remember that you have already narrowed down your list to the top vendors, and that anything you gain at this point will be a nice bonus. The following example shows how you might go about composing your email to sweeten the deal with your potential vendor.
Outsourcing Web Projects
Example 3.2. Sweetening-the-deal email to potential vendor Dear [Potential Vendor], We're almost done with our vendor selection process for our “Ecommerce Store Development” project. Thanks again for your thoughtful reply to my previous email. Your answers were very helpful! At this point, we’re extremely interested in working with your company on this project and others. We were very impressed with the description of your process, which is a critical factor in our decision. In fact, your company is my personal choice for our project, but we are still speaking with two other companies that are offering us slightly lower prices. Another finding of ours is that other vendors are offering a 30-day warranty period on all programming. Are you able to offer any warranty? There is also the matter of training and support—it’s unclear whether training and support are part of your bid. Finally, it has come to our attention that it’s possible to load our existing product database directly into the new ecommerce platform. We have this data in CSV format. Can you please let me know if this is something you could handle as part of the project? Thanks again for all your help. Hopefully we’ll be collaborating on the project very soon! Regards, B. Fernwood.
Gain Knowledge from One Vendor and Impress Another Paying close attention to each vendor’s response is a good way to get to know what to ask of other vendors. Did you notice that this email mentioned importing the client database from a CSV file? This is a great example of using the response of one vendor to make yourself appear more knowledgeable to another. Let’s say in this case that one of the vendors added a note in the proposal that “importing of all product information into the ecommerce store from CSV file” was included; this information was then used to try to have the other vendor include it, too. A CSV file, as it turns out, is just a simple text file that’s a standard format, but if
How to Get the Best Price for Your Project the products can be loaded automatically like this by the vendor, it’ll save you lots of time. These small things can make a big difference!
It’s okay if a vendor doesn’t offer a price reduction. In fact, the best vendors probably won’t, because the most experienced vendors are usually the best at estimating projects’ times and costs. A good estimate doesn’t include very much guessing: experienced vendors use formulae that base the estimate on factual information about the project. As a result, they’re not going to be very motivated to reduce the bid, unless the scope of the project is reduced correspondingly. Don’t fall into the trap of penalizing vendors who don’t offer a discount. You’re done! Sit back and wait for the final replies to your emails to roll in. Once the replies arrive, you’ll make your vendor selection to get the project started. In the next section, we’ll clarify the legal aspects of the project to ensure you have everything down on paper. Your progress so far: Get vendors competing for your job. Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Get It All on Paper Now that you’ve chosen a vendor for your project, the next step is to make it official by documenting the specifics of the project. These details include payment, scheduling, roles and responsibilities, and deliverables. Once the specifics of all these aspects are clear to both parties, you’ll want a signed written agreement to ensure that you’re protected if anything goes wrong along the way. In this section, we’ll discuss the process of creating and executing an agreement, in writing, between yourself and your new vendor.
Understanding Critical Elements of a Written Agreement The initial draft of a written agreement for web development is usually a repurposed version of a previous agreement, and is provided either by the vendor or the client. Ideally, the agreement is approved by a lawyer—preferably your own lawyer, not the vendor’s—and written specifically for you and your project.
Outsourcing Web Projects
Get Legal! Always seek legal advice if you are unsure about what you are signing. It’s strongly recommended that you never enter into a written agreement without having it reviewed by a competent attorney.
A solid agreement protects both parties by detailing various aspects of the project, thus clarifying a variety of issues that could otherwise lead to conflict or confusion in the event of a problem or miscommunication. The agreement should also specify the manner in which any such conflicts are resolved, should they arise. A variety of formats exist for written agreements, but the typical format consists of two parts: Core agreement This section includes language that identifies the parties involved, the overall nature of the agreement, the relationship of the two parties, the intention of the agreement, and the manner in which communications, deliverables, and money will be exchanged or managed. This part of the agreement clarifies the relationship between the two parties, rather than the actual work that will be done during the project. Project specifics This section details the actual services to be delivered during the project, including technical or functional requirements, scheduling, milestones, or other aspects of the project itself. Although it’s difficult to outline all aspects of a web development agreement, you should expect that: ■ A specification of the parties involved, with full legal names and contact information is included. This is usually the first paragraph of the document, and should be clear. Typically, the contract will allow the terms “client” and “vendor” (or similar) to be used for the remainder of the contract. ■ The method, frequency, and amount of payment is specified. ■ The method and frequency of invoices or status reports is noted. ■ Late fees or other special payment terms are detailed.
How to Get It All on Paper ■ Details about who’s responsible for expenses incurred by either party are included. ■ Whoever is responsible for web hosting is determined. ■ Details about who’s responsible for any applicable taxes are included. ■ The term, or duration, of the agreement is specified. ■ The document clarifies the relationship, particularly indicating the vendor’s employment status, such as work-for-hire or independent contractor. This can be extremely important in the event of a legal dispute or tax issue. Consult with an attorney if you aren’t clear on this aspect. ■ Specific rules are laid out regarding intellectual property ownership, confidentiality, and privacy. ■ The ownership of created work product is assigned. The key issue pertaining to who owns the materials that are developed should be clarified in writing. ■ Any warranties to be provided by vendor, and any limitations of that warranty are explained. ■ Contract changes or “change orders”—the process by which the written agreement can be altered or the project specifics changed—are detailed in an extremely clear manner. ■ In the event of a dispute, the contract should dictate the manner in which the dispute will be settled. For example, many agreements dictate that disputes will be settled via arbitration using a particular set of rules in a specific venue. ■ General provisions are typically added by attorneys to increase the effectiveness of the contract. They often include language about severability, applicable law, limitations of liability, notices, and so on. After the core agreement, a second section is provided, which contains the details of the services to be exchanged under the agreement. Ordinarily, this is referred to as a work order, a statement of work, or simply an exhibit. To make the agreement coherent, there will usually be a clause in the core agreement that explains the fact that the second section will be part of the whole agreement.
Outsourcing Web Projects ■ Project requirements and specifications, including detailed specifications, plans, requirements, or other information that specifies the work to be performed under the agreement, should be incorporated. This is the place to include all documentation, including anything and everything that you have to make sure that your expectations for the project are clearly documented in writing.
Choosing Between Fixed-bid and Hourly-rate Projects Although most clients seek a fixed-bid agreement for their project, this is not always the best way to go. In this section, we’ll discuss the potential advantages of an hourly rate agreement and learn how to evaluate your project to determine the most costeffective billing structure for it. If your vendor offers hourly rates in addition to a fixed-bid arrangement, you should carefully consider this option before you decide. “Well,” you might reason, “a fixed-bid project guarantees that I’ll get the project done without worrying about how much time the vendor spends completing it. Right?” Unfortunately, this common assumption is incorrect. The reality is that fixed-bid projects are typically more expensive for the client, more stressful for the vendor, and usually result in the final product being of a lower quality. Many vendors will rush to complete fixed-bid projects within the allocated time period because they risk losing their profit margin if the project takes longer than anticipated. Furthermore, any changes that the client makes to the project specifications will usually incur a heavily padded fee. Overall, the fixed-bid project can be an uncomfortable and risky arrangement unless the project unfolds without a single surprise or change request. In contrast to the fixed-bid scenario, an hourly rate places both the client and the vendor in a mutually profitable relationship. The vendor concentrates on producing quality work instead of protecting the profit margin; the client only pays for the actual time required to complete the project, instead of paying for the estimated hours plus large amounts of “safety padding.” Such an arrangement results in improved client satisfaction and a higher quality product. If you are in a position to negotiate an hourly rate with your vendor at this point, you should seriously consider this option.
How to Get It All on Paper For a small project with very clear requirements, an hourly rate is usually not worthwhile. However, if your project is large and very complex, an hourly-rate model can provide cost savings and improved quality. To assess this possibility, ask your vendor for a breakdown of the project activities by hourly requirements. This breakdown doesn’t need to be highly detailed—it just requires enough information to get a feel for the total hours required for the project. Next, try to do some estimating to determine how the project cost would change under various circumstances. You might find that the flexibility offered by paying the vendor an hourly rate makes it a highly attractive option.
Choosing the Right Payment Scheme The payment schedule is one of the most difficult and contentious elements of most web development agreements. Many vendors will require up to 50% of the total project fee up front, which makes negotiations difficult. However, you can take steps to protect the interests of both parties by outlining payment milestones in writing. The most important thing to keep in mind when scheduling payments is to always make sure that the vendor is delivering work to you just before you write a check. In other words, don’t pay until you receive something for your money, with the exception of the initial deposit if required by the vendor. Sometimes it’s possible to avoid the initial down payment that many developers require, but it is customary to pay some amount of money up front. For the remainder of the project, however, try to put yourself in a situation in which you’re sure that you’re satisfied with the value of each deliverable before you pay the next installment. A common approach to handling this is simply to schedule the second—and final—payment at the end of the project. Many web designers will offer to send their invoices once the project is done, but won’t actually load a website onto your server—make it “live”—until they hold your check in their hands. Always resist this eventuality. Instead, schedule payments at any point in the project at which you’re receiving value. Table 4.1 is one example of a recommended payment schedule:
Outsourcing Web Projects Table 4.1. Recommended payment schedule Milestone
Sign-off of final requirements and specifications documentation
Sign-off of creative designs
Feature-complete beta version of online application loaded onto beta server
Final release of application to live server
Note that, given the above schedule, the client will only make a payment to the vendor after value has been provided (except for the initial 20% down-payment). Even a vendor who asks for a 50% deposit will most likely accept the above schedule, because this schedule means they’ll actually receive more money in less time. This schedule also benefits the client because it provides an incentive to the vendor to keep the project moving forward, as opposed to having to wait until the end of the project for a much-needed payment. At first glance, you might think that the second and third milestones (the sign-offs) have little actual value. On the contrary, these are extremely valuable milestones, as the vendor will have delivered the final documentation and the final creative designs for the project. This allows the client to cancel the whole project in the event that the vendor proves unsatisfactory—the client can then take the specifications and designs elsewhere for project completion and still pay the vendor fairly! As we’ll see later on, projects can go wrong, unforeseen problems can crop up, and the client–vendor relationship can break down. This payment schedule helps to ensure that your project needs are protected if it all goes pear-shaped. Your progress so far: Get vendors competing for your job Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Keep the Project on Track Armed with a great specifications document and a well-written contract, you’re finally ready to begin the project with your chosen vendor! You’ve done yourself a huge favor by spending so much time finding the right vendor and by clarifying the project requirements—these efforts are going to really pay off as the project unfolds, not least in the form of an on-time, on-budget project. Your work isn’t yet done, though, because now you’ll need to manage your project carefully to ensure its success. In this section, we’ll discuss the ins and outs of managing a web development project. Gaining this knowledge is essential if you are to avoid problems, handle issues before they have a chance to jeopardize the project, and maintain excellent quality while you head towards an on-time product release.
Having Realistic Expectations One of the biggest mistakes made by clients and vendors alike is to plunge into web development without adequate planning. Ideally, you’ll have already avoided this blunder by creating a good specification early in the process—even before vendor selection—which you’ll have been revising at every opportunity.
Outsourcing Web Projects Even with all that planning before development commences, you should expect to clarify requirements and specifications all the way to the end of the project! The inevitable gaps in the requirements (topics that weren’t detailed enough, were left out, or were ambiguous) will need to be clarified as the developer moves through the construction of the application. It would be wonderful to capture all of these details in the document, then simply let the developer do the work, but this simply isn’t a realistic scenario. You can’t possibly think of every last detail involved in the development of your web application. The developer will constantly be uncovering these omissions, and your job as project manager is to provide the vendor with information quickly and accurately so that work can continue without the vendor having to wait too long for your responses or, worse, guess at the answers. In web development, momentum is everything. If the project stalls due to communications lags, it will cost you! Here are some typical mid-development clarifications: ■ The vendor asks for a title and description for each page for search engines to use. ■ For each online form (such as feedback), each element including text boxes and submit buttons will need a caption, and the vendor needs the copy for each. ■ The developer asks to which email address each feedback form needs to be sent. ■ The vendor asks detailed questions about how each report or other output will be sorted or printed. ■ The vendor asks whether long articles or other content must be paginated or contain tables of contents. That list could go on for some time! Even project managers with years of experience can’t predict every detail that will arise during the development phase (although you would be wise to try!). But a good project manager always expects a steady stream of clarification requests from the developers, and is ready and willing to provide the necessary details in a timely and courteous manner. In fact, the project manager should encourage questions from the developers. Developers need to know what they’re building, and if they don’t ask, they’ll end up guessing—which isn’t likely to work well.
How to Keep the Project on Track Being a client in a web development project is not a passive activity. Expect and encourage lots of communications during the project, and be sure to show appreciation to your vendor when he or she asks questions. Remember, it would be much easier for the vendor to guess the answers and just keep going—you should always thank him or her for taking the time to ask for clarification.
Managing Your Project In every project, a project management style will emerge during the initial phases of development. Many clients will simply let the developer start working, then wait for an inquiry or an update about progress. This approach is easy, but it allows the vendor to set the tone and pace of the project. Over time, the client might become concerned about the job’s progress and start sending excessive inquires to a vendor who is now accustomed to being left alone. This results in a stressed-out client pestering an annoyed vendor—not a recipe for a successful project! A better approach is to ensure that you establish the tone and pace of the communications. Your objective is to set expectations for routine communication so that you’ll know when the project is going well, and when it’s not going well. Through consistent and predictable communications, you’ll avoid the stressful position of waiting endlessly for status reports while you worry about how the project is progressing. Here are the key elements of good project communication: Keep on track with a regular formal status report. Although important, status reports don’t have to be too labor-intensive—they can be in a simple email format if desired. Requesting their delivery on a weekly basis is a sound idea: more than once per week is overkill. If your vendor fails to send the status report, follow it up quickly. Expect your emails to be replied to within 24 hours during the business week. This expectation needs to go both ways—to keep your vendor responsive, you’ll need to be responsive as well. If the vendor takes days to respond to an inquiry, ask why, and issue a reminder that you want to maintain a high level of communication in the project.
Outsourcing Web Projects Avoid instant messaging. IM might be convenient and easy, but it’s generally not a useful means of communicating during a project. IM communications are usually performed while both users are doing other things and not fully paying attention. Furthermore, IM communications are not always logged and can be difficult or impossible to reference down the road, as opposed to email messages, which are usually easier to find. Be clear and specific. If you have multiple issues in an email, number them and expect your vendor to reply to them all using interleaved text. Do the same when answering the vendor’s questions, and maintain a high standard of accuracy and clarity. Lead by example—if you show diligence and attention to detail in your communications, the developer will probably follow your lead. While IM is not recommended for communicating with a vendor during a project, there a number of web applications—such as Campfire by 37signals—that are designed to make instant messaging more effective for businesses. Campfire brings solid and secure transcripts to the table, supports file sharing (including live image previews), and more recently has released a voice conferencing feature. Users of 37signals’ flagship project management product, Basecamp, will be pleased to know that it has integration with Campfire.
Using the Iterative vs. Waterfall Approach In the early days of software development, it was common to spend huge amounts of time documenting every last detail of an application, then send those specifications to the development team to build. Everyone waited while the programmers built the application to completion, then the new application was reviewed and modified if necessary. This method was known as the waterfall approach, because each step was completed before the next step started, like water falling down a series of levels. Needless to say, this was an expensive and time-consuming approach because problems weren’t identified until the programmers were completely finished. A more modern approach, called iterative development, requires the programmers to release a steady stream of incomplete beta versions of the application. This allows the rest of the development team to review the application as it’s being developed and provide timely direction, suggestions, and feedback. The developers may be
How to Keep the Project on Track required to make changes to the application midstream, but this approach is accepted to be cheaper and easier than making the same changes once the entire project is complete. You should apply the iterative mentality to your project. Your developers, if they understand good process, will appreciate it and everyone will accomplish more with less work. A good iterative process is easy to implement, and includes the following elements: 1. During development, the programmers or designers should routinely provide beta versions of the application or website for the client to review. On a threemonth project, for example, a weekly release schedule might be ideal. Beta releases should begin early and continue throughout the project. 2. The client should review each release in detail, providing feedback about each completed feature to help the developer understand whether the feature has been implemented correctly. Incomplete features or designs will sometimes need to be ignored, so the developer needs to provide the client with notes about which features or pages are ready for review in each release. 3. Once the client provides feedback and requests changes to a release, the vendor should incorporate those changes into the next, or an upcoming, release. Changes, when required, can take these two forms: Ordinary feedback resulting in change This includes feedback that requires the vendor to change the application due to a miscommunication or differing interpretation of the project documentation. This is the normal type of feedback encountered in most projects, and usually consists of small changes without significant impact. Changes to the core project requirements These changes are typically the result of a client looking at a beta version and thinking, “This matches the specifications, but now I realize that I should have asked for something else.” In this case, you’re asking the developers to rebuild something that they’ve already built correctly, so they’ll likely charge you extra money. Don’t be disappointed, though, because you’ll probably pay less by making the change early instead of waiting until the end. By encouraging your vendor to release a steady stream of beta versions and by providing great feedback after each one by way of an answer, you’ll find and resolve problems early in the process. This proven technique will certainly save you time
Outsourcing Web Projects and money, not to mention reduce frustration and stress! If your vendor proposes a waterfall style approach—or worse, doesn’t propose a process model at all—you should always implement an iterative approach for your projects.
Keeping Your Documents Current To keep the requirements and specifications documents current while the project unfolds is tedious, so it’s no surprise that this important task is frequently skipped altogether. Many clients feel that once the requirements document has been provided to the developer, it’s of little value and doesn’t need to be updated anymore. This notion is almost never true—the document has significant value even after the project is complete. Even when a project is managed well, using an iterative approach, there will be a never-ending stream of refinements, functional changes, navigational changes, or other modifications to the original requirements. Consider the following scenarios in which an up-to-date document can be a lifesaver: ■ In the event that you need to switch to a new vendor, an up-to-date document will allow that vendor to quickly understand the status of the in-progress project. Imagine trying to explain all of the changes to the new vendor from memory! ■ If you have a single document that details every aspect of your project, it’s easy to review this document and ensure that everything has been provided by the developer. If you don’t have such a document, it’s hard to know when the project is done because you might forget many of the small tasks that might be outstanding. ■ Testing web applications is tough under any circumstances. Whether you outsource the testing or do it in-house, you need to know what you’re testing so that you can be sure the tests are completed correctly. ■ If your application is expanded in the future, it will be incredibly handy to have a single document that will provide a starting point for the developers. If you switch to a new vendor for your second phase, that new vendor can quickly understand everything about the project without having to perform a tedious review of all the features in the application. ■ An updated document will improve accuracy in all aspects of the project. With constant changes and refinements being requested and executed, it’s hard to keep track of everything without a central information source. Without some
How to Keep the Project on Track ongoing documentation, small things are frequently forgotten during development and cause headaches when they are discovered after the application is launched. Some outsourcing projects are so simple that they don’t need a constantly updated project plan. However, the majority of clients will see a substantial short-term and long-term return on the time they invest in keeping their documentation accurate and up-to-date. If you find yourself knee-deep in details during development, you’ll probably benefit from taking this approach.
Handling a Troubled Project Even the best-run projects will occasionally face issues that endanger the success of the project. A good project manager anticipates that problems will occur and is always on the lookout for them, hoping to mitigate any issues before they cause problems. The most common problems you’ll encounter during an outsourcing project are resource issues, general quality issues, and progress problems. Let’s consider some basic tips to help you identify and remedy these problems.
Recognizing and Dealing with Resource Issues Vendors have to work hard to balance their staff sizes and hiring practices with the amount of work they can win. This balancing act sometimes results in a small team being stretched thin, unhappy employees, and high employee turnover. If the key developers on your project are rotated or overworked, or if they suddenly quit, your project’s success may be jeopardized. Fortunately, spotting a resource problem is usually easy. Pay attention to telling changes in key resources such as having a different lead programmer from week to week, or the sudden silence of a previously active member of your team. Be sure to take note of each assigned team member at the beginning of the project, and expect those team members to stick around for the duration of your project. Many vendors will try to shield clients from their internal resource issues by assigning a single point of contact on their side to handle all client communications. In most cases this approach is fine, but it will make it harder for you to spot any possible resource problems because you are only dealing with a single person on the vendor side. If you are in this situation, protect yourself by always forcing the vendor to set clear dates on when each deliverable will be provided, and inquire immediately if the vendor misses any of these dates.
Outsourcing Web Projects Missing deliverables is a classic sign of a vendor with internal resource issues, so you’ll need to be vigilant about this aspect. If a deliverable comes in a bit late from time to time, don’t worry too much. But if deliverables are routinely late (i.e. a few days late for several deliverables in a row) confront the vendor and clarify what the problem is. Believe me, this confrontation will be easier than it would be if you waited until the whole project was hopelessly late! Be respectful and work with the vendor to help get things back on track.
Recognizing and Dealing with Quality Issues Quality is subjective: it’s not always easy to determine whether the developers are meeting your hopes for excellent work in the midst of a fast-paced development project. Newly delivered code might be incomplete, have placeholder copy, have no graphics, or only be partially functional. Given this, the client needs to be patient and expect plenty of small problems with each release. That said, the vendor is responsible for producing code that is as functional as possible given the circumstances. In other words, despite the fact that problems are expected during development, you should not have to review obviously incomplete or broken features during the project. The best way to gage quality is simply to ask the question, “Did the developers provide what they said they were providing in this release?” If the answer is in the affirmative, you’re probably okay. This question is phrased in this way because it’s not fair to expect the vendor never to make a mistake in the code—100% defect-free code isn’t a reasonable expectation and isn’t a good indication of quality during the development phase. A better expectation is that the vendor makes sure that the product being released is reasonably functional and ready for review. If the vendor is taking care to ensure that each release works as promised, it suggests that the vendor is checking code along the way and working effectively. A newly released feature might have a bug or an incomplete part, but it shouldn’t crash completely every time you try to review it. Here are some sample cases to help you to perceive whether your vendor is maintaining quality, and some tips on how to respond: ■ The vendor says that a new feature is ready for review. The client goes online to look at the new feature, but it fails immediately with a critical error. The client tries a few times with the same results. This pattern happens two out of three times over a period of a week. This suggests that the vendor’s developers aren’t
How to Keep the Project on Track checking their work. Encourage the vendor to check each feature before notifying you that the feature is ready. ■ The vendor releases feature after feature, while one feature never seems to be completed. Despite ongoing requests from the client to finish the feature, other features keep being completed first while the missing feature waits. This usually happens when the vendor is facing a technical problem that is proving difficult to overcome. Encourage the vendor to be up-front about the problem, and offer to help devise a solution. ■ The vendor releases working code, but continually misses small details of the requirements document. The client reviews the features after each release, and then writes notes for the vendor detailing each item that’s omitted. Still, the pattern continues and new features are released incomplete on a regular basis. This indicates a vendor who isn’t process-oriented, is sloppy, or thinks that the client will be satisfied with seeing as many releases as possible despite the quality issues. Tell the vendor that information needs to be provided about what features are in each release, and their level of completeness. Remind the vendor that you cannot review features without understanding what you should expect to see in each release. If the situation doesn’t improve, ask the vendor to release complete features only and refuse to review otherwise.
Recognizing and Dealing with Slow-progress Issues Sometimes a vendor communicates well, maintains good quality, and is easy to work with but the progress is just too slow. This situation is particularly paradoxical because vendors almost never have any motivation to slow down a project. On the contrary, a drawn-out project is less profitable for vendors, so they’ll try to move as quickly as possible. So, if a vendor is moving slowly it’s probably because the development team—or individual—is stretched too thin, the required skills are lacking, or there’s a resource problem. The first thing to consider when you think your project is moving slowly is whether your expectations are in line with the vendor’s expectations. A project can be proceeding well from the vendor’s perspective, but going way too slow for the client. As long as the project is on track to reach the scheduled completion date, this can be fine—many projects seem to have little progress at certain points because the developers are working with complex issues and aren’t able to make a release
Outsourcing Web Projects for long periods. In other cases, the progress truly is slow and the completion date is endangered. Try and take a sober look at the actual progress as compared to the schedule that you agreed on early in the project. Make a clear decision as to whether the project is on track before taking any action. If your project is moving so slowly that you are legitimately concerned about meeting the completion date, express this concern to the vendor immediately. Ask the vendor to provide a specific date when some specific progress will be shown, and be sure that date isn’t too far away. Also ask whether the vendor is still comfortable and confident regarding the promised completion date, and if not, be sure to address any issues or concerns. It’s possible that the vendor underestimated the amount of work required and will need more time, but it’s also possible that they are having technical problems or resource issues—be sure to ask a lot of questions and don’t stop until you have a real understanding of the issue. If the vendor is having internal issues or fails to provide satisfactory answers for your questions, your project may well be at considerable risk. Ask the vendor how he or she would like to handle the situation, and give the vendor every opportunity to suggest a solution—you should explore every possible means of returning your project to health. However, if your comfort level continues to decline with no way out, consider switching to one of the other vendors you evaluated for this project. To keep your project healthy and avoid problems, you should always be vigilant and on the lookout for potential problems. When you spot trouble, act quickly to remedy the problem before it becomes expensive and time-consuming. Don’t forget to keep your documents updated, and always have vendors 2 and 3 on standby in case things spiral out of control. With the right attitude and some effort you’ll have no problem keeping your project on track as it moves towards a successful completion.
Recognizing and Dealing with Communication Issues At times you may feel that you have been kept too far out of the loop by the vendor. Sometimes this is a symptom of a resource issue, but in some cases it is symptomatic of a team that is under the whip to complete a project so that they can move on to the next faster – falling behind on “optional” tasks such as reports and feedback cycles as a result.
How to Keep the Project on Track If you followed the instructions in this book for selecting a vendor, you’ll likely have selected a process-oriented provider that has refined its approach to project management and the inherent communication requirements over a number of years, making communication issues rare. In the case that a missed report is not a one-off event and communication issues arise more regularly, you can re-affirm the communication expectations that were set by both parties when the written agreement was pieced together – or, if you should feel it necessary, by increasing them. If you’ve requested a monthly report, for instance, and aren’t receiving them until you’ve spent a week past the deadline poking and prodding the vendor, it may be time to recommend a shorter, weekly report. Less frequent reports are often longer reports that take more work to generate, and the longer it is between reports the easier it is for them to be forgotten. More frequent reports mean the vendor does less work more often and can get into a rhythm more easily – they know that at the end of the week, it’s time to provide their retrospective and timeline expectations. Particularly when outsourcing to a completely different timezone, face-to-face and voice communications tend not to happen often, if ever. Many managers consider such communication essential to keeping employees in check and focused on the deadline, and the same thing can work with contractors and vendors. Renegotiating a communication arrangement that involves more regular phone calls can help. However, every minute that you ask the vendor to stop working and spend it on the phone or otherwise communicating is time they’re not getting the work done – keep the calls brief and to the point. Your progress so far: Get vendors competing for your job. Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Turn Your Vendor into a Long-term Partner In this final chapter we’ll discuss the importance of keeping your vendors happy and loyal, and outline some of the basic techniques to keep them that way. Needless to say, finding a great outsourcing firm takes time and effort and it would be a shame to have to start all over at Chapter 1. If you consider some of the concepts we discussed in Chapter 1 and Chapter 2, you’ll also know that a vendor you have already worked successfully with will probably be cheaper and easier to work with than a new vendor. A key reason for this is that pain factor we looked at in the section called “Understanding How Vendors Estimate Projects” in Chapter 3 that all vendors try to avoid. Remember how you tried to write your project descriptions in a way that would make you look experienced? You didn’t want the vendors to think you were going to be a painful client and to adjust the price accordingly. Having a healthy relationship with an existing vendor who has already delivered projects for you is going to put you in the exact opposite position—the vendor knows the pain level you represent, and will trust you more than they would an unknown client. This trust will
Outsourcing Web Projects cause a decrease in price, and life becomes easier all round. In this chapter we’ll discuss ways to build and maintain this trust so that your vendors will stick with you and continue to deliver you great value for years to come.
Keeping Your Vendor Happy A happy vendor is the result of effective, skillful, friendly, and happy clients who are appreciative and make substantial contributions to the vendor’s business. To be this kind of client, you need to be aware and appreciative of what drives the vendor’s business so that you can help realize his or her goals. Only then are you truly a partner to that vendor. Most vendors have similar business interests, and will respond to similar behavior. A list of common vendor interests follows, each with a recommendation on how to support your vendor in that context. In other words, how can you help make your vendor happy? Bring them new business. Vendors must constantly work to find new clients. Signing new clients and developing new projects for existing clients is the single most important thing to most vendors. It’s easy to help your vendor to succeed in finding new business. The first step is to show sincere interest in the vendor’s success by asking how business is going, and providing feedback and support for the vendor’s sales process. You should also take more substantial steps; here’s a few: ■ Offer to write testimonials. ■ Offer to act as a reference. ■ Refer your friends or partners. ■ Use the vendor for future projects. Make your projects easy. All vendors want their projects to go smoothly, be profitable, and make their clients happy. Almost everything in this book is geared towards making projects go smoothly, so your goal and the vendor’s goal are the same. Here are some key factors of an easy project for the vendor.
How to Turn Your Vendor into a Long-term Partner ■ Pay on time, every time. ■ Honor your contract. ■ Communicate clearly and politely. ■ Show appreciation at every opportunity. ■ If you make the vendor work extra hard on details, offer to pay extra. The relationship will be worth it. ■ If the vendor is over-extended or otherwise stressed, offer to slow your project down or delay by a week if possible. This kind of favor is rarely forgotten by a vendor. ■ Don’t quibble over nickels and dimes. ■ Let the vendor know that you value the relationship. It’s also important to consider what makes vendors miserable; avoid being off-side with your vendor by observing a few “don’ts.” Don’t have unrealistic expectations. Clients who have unrealistic expectations are extremely unpleasant for vendors to work with. A client who expects a vendor to handle tasks that weren’t included in the agreement may not realize that such tasks can take many hours for the vendor to complete, which reduces the vendor’s profit margins. This is a complex issue and is tough to avoid with any single approach. The most important thing is to be clear on what you are signing, and don’t take anything for granted. If the contract says you’ll receive A, B, and C you should expect that this means exactly A, B, and C. Just because it seems like the vendor should handle some aspect of the project doesn’t mean that they should, and inexperienced clients frequently ask vendors why so many features weren’t handled even though those features weren’t mentioned in the agreement. If you are in doubt over the deliverables, ask the vendor early on (ideally before the agreement is signed) and try to be as realistic as possible!
Outsourcing Web Projects Don’t make unfair price comparisons. At any stage of a project, it’s never fair to tell a vendor that you can have your project handled by your niece for 10% of the price the vendor has quoted. This kind of rhetoric will annoy the vendor and make you appear an inexperienced buyer. This is easy to avoid. Simply don’t compare your vendor’s price to another vendor that doesn’t have reasonably equal qualifications. This is a case where the old truism holds up well: if you pay peanuts, you get monkeys. Don’t compare your vendor to a monkey! Don’t fall victim to Emergency Syndrome. A high percentage of clients consider their work to be highly urgent, requiring an equivalent response. As so many clients behave this way, vendors are accustomed to disregarding the emergency factor entirely. Over time, the “always urgent” client becomes considered to be stressed out, disorganized, and annoying. Before you mark your email with a red flag and type EMERGENCY in hysterical capital letters into the subject line, take a deep breath. Ask yourself, “Is this really something I need ASAP?” In most cases, it actually isn’t. If your vendor is generally quick to reply to emails or change requests, you can demonstrate trust by sending your request normally instead of constantly pushing the vendor to act in emergency mode. Another great way to fortify a vendor relationship is to look for opportunities to do favors for your vendors. A client–vendor partnership is based on trust and mutual benefit, and there is more to this relationship than the exchange of money for services. If you run a web hosting business, offer free hosting to your vendor. If you run a copywriting service, offer to fix up the copy on the vendor’s website. It will be much appreciated and is a great example of a relationship builder. Always be on the lookout for ways to keep your vendor happy! After all, your businesses rely upon each other, and nobody wants to go through the whole search process again. Resist taking your vendor for granted, and you’ll be looked after forever!
How to Turn Your Vendor into a Long-term Partner
Bringing It All Together: Being an All-round Great Client The last section described various approaches that you can take (or not take) to keep your vendor happy. In this section, we’ll provide a quick review of the main things that you can do to be a great client and enjoy more success in the outsourcing world.
Knowing the Ten Commandments of the Great Client 1. Know what you want and what you don’t want. If you aren’t sure, tell your vendor what you are trying to accomplish and ask for suggestions. 2. Be appreciative of your vendor. Treat the vendor like a partner. Money is never enough to keep a business relationship healthy—you should show your appreciation frequently. Praise and courtesy are free, too. 3. Have realistic expectations. Expect problems and misunderstandings to happen, and don’t play the blame game unless you are absolutely sure the vendor was negligent. No project is perfect, but a great project manager identifies and remedies problems quickly and effectively. 4. Trust the vendor until you have good reason not to. A vendor who doesn’t feel trusted by the client will struggle to maintain quality. Extend trust to your vendor, and be as respectful as possible of the advice and skills he or she offers unless you have real concerns about the value of the entire relationship. 5. Always pay the vendor on time. Follow up to make sure the vendor received the payment and to demonstrate that you care about his or her bottom line, too. 6. Be a quick responder. Never delay your own project by making your vendor wait! You, the client, will always set the tone and momentum of the project. Don’t expect your vendor to
Outsourcing Web Projects push forward with your project if you aren’t putting your shoulder into it at well. 7. Answer the vendor’s questions clearly, and completely. Provide constructive feedback whenever possible, and never put your vendor into the position of making decisions because you didn’t respond to a query. Show respect and courtesy at every opportunity by making use of your spellcheck function and never skipping the salutation or closing in your emails. 8. Support your vendor’s business. Offer to give testimonials and referrals. Be sincerely supportive of the vendor’s business in every way that you can. 9. Avoid instant messenger. Always use email to have higher quality communications, as well as easy archiving and reference. 10. Be nice! Most communications will be through email and phone rather than face-to-face, so it’s easy to develop misunderstandings or send the wrong tone in your words. Take extra steps to be polite and friendly with your vendors at all times. Obviously there is more to a successful relationship than these ten steps, but following the above guidelines should give you an excellent foundation for a happy, longterm business relationship. If you are sincere and diligent in your dealings with vendors, and take care to make sure that your relationship is mutually beneficial, you’ll enjoy a long-term partnership with your vendors. Such a partnership will reduce stress, lower project costs, increase quality, and save large amounts of time! Your progress so far: Get vendors competing for your job. Find the perfect outsourcing partner. Get the best price for your project. Get it all on paper. Keep your project on track. Turn your vendor into a long-term partner.
How to Turn Your Vendor into a Long-term Partner I hope that this book has provided you with many useful tools to help you make your projects successful. It is my sincere wish and expectation that by learning what vendors want, you can get more for your money while building useful and satisfying relationships with top-notch vendors. I wish you great success in your endeavors in business and in life! Good luck!
Appendix A: List of Freelance Websites ■ 37signals Job Board, at http://jobs.37signals.com ■ AIGA Design Jobs, at http://designjobs.aiga.org ■ Ajaxian Jobs, at http://jobs.ajaxian.com ■ allfreelancework, at http://www.allfreelancework.com ■ Authentic Jobs, at http://www.authenticjobs.com ■ Behance, at http://www.behance.net/joblist ■ contractedwork, at http://www.contractedwork.com ■ CraigsList, at http://craigslist.org ■ Creative Hotlist, at http://www.creativehotlist.com ■ DesignFirms, at http://www.designfirms.org ■ Elance, at http://www.elance.com ■ FreelanceBBS, at http://www.freelancebbs.com/ ■ FreelanceFolder Marketplace, at http://freelancefolder.com/forums/viewforum.php?f=8 ■ Freelancer, at http://www.freelancer.com ■ Freelancers.network, at http://www.freelancers.net/job ■ FreelanceSwitch Job Board, at http://jobs.freelanceswitch.com ■ GeekUp Job Board, at http://jobboard.geekup.org ■ GoFreelance, at http://www.gofreelance.com ■ Guru, at http://www.guru.com ■ Krop, at http://www.krop.com
Outsourcing Web Projects ■ oDesk, at http://www.odesk.com ■ Rentacoder, at http://www.rentacoder.com ■ scriptlance, at http://www.scriptlance.com ■ SitePoint Market, at http://sitepointmarket.com/ ■ Smashing Jobs, at http://jobs.smashingmagazine.com/freelance ■ Startuply, at http://startuply.com ■ VirtualJobs, at http://www.virtualjobs.com ■ Your Web Job, at http://yourwebjob.com/