Our Process
Choosing a development partner is a big step! This is how
we work with you to make your project a success.
Exploration and Proposals
We are happy to work with you to make sure we’ve fully explored your project, answered your questions and can provide as accurate an estimation of the project scope as possible.
We ask that you share your project timeline and budget with us so that we can help accurately assess the feasibility of different development approaches. We typically have a 1-2 month lead time for engaging in development for new projects, but can often begin planning and design phases on a faster timeline.
We are happy to invest several hours of time with you (at no charge) in project exploration, discussion and creating a proposal. If we need additional time after this initial investment, we typically engage in a discovery project (consulting) or directly into a development project and continue at a standard hourly rate.
Pricing
We typically enter engagements on a time and materials bases – billing hourly. We tier our hourly rate, offering a discount for larger projects. Small projects have a larger percentage of overhead associated with them, so we are not able to offer the same discount for smaller projects.
We will also engage in fixed-bid projects when the scope of work is well defined and everyone is in agreement that this is the best way to proceed with a particular project. If a fixed bid is necessary for a project but the feature set and scope of work is not yet well defined, we can engage in a separate discovery project to help firm up requirements and specifications, and come to a fair fixed bid cost for the project.
We request an initial 50% payment to begin development on your project, then send invoices monthly with a final invoice due at the completion of the project.
Project Management
We have several tools we use to make sure you have access to the latest status of your project. We use our Client Portal as a primary communication hub, allowing easy collaboration between all parties on both sides. We also have a collection of private development servers where we stage in-progress development and milestones for your review.
Milestones are determined at the beginning of a project, and updated as the project is impacted by new decisions, changes, etc. We provide weekly status updates via our Client Portal throughout the life of the project, and stage our milestone deliverables on our development servers.
Depending on the nature of the active development, we typically have 1-2 scheduled phone calls each week, with more as needed. We try to meet you where you want to be – not too much communication overload and no silent treatment leaving you wondering what’s going on.
During Development
You will have a dedicated a project manager who will be your primary point of contact. Technical and design resources (information architects, developers and designers) are brought in during brainstorming, requirements gathering, estimates and ultimately for implementation. Each week, milestones are QA’d, delivered, reviewed and pushed to a staging environment when appropriate.
We work closely with you to take an iterative approach while working efficiently and to your timeline. We also make sure to keep an eye on the budget; we don’t want to iterate too much.
While we are building we maintain a development server for your review, with all code securely versioned in a source control system.
Launch!
In the time leading up to your site launch, you will be able to do extensive testing of your project on our development server. Where appropriate we run stress tests against your production server configuration to ensure that performance will not be an issue.
We coordinate with you in real time during the launch so you know exactly what is going on. No matter how much pre-planning is involved, there are always a couple of little items that slip through – we are on-call (normally for a few days to a week, post-launch) to address these as they appear.
Ongoing Development
Sites are never finished, only launched. We often engage with our clients in ongoing development relationships. Typically this is done on a retainer basis, where a block of hours are set aside monthly for dedicated development on your project.
This type of relationship allows both sides to manage ongoing costs while prioritizing and scheduling development items in a systematic way. Since we have an ongoing engagement, it’s easier to expand the amount of development hours in a given month if an urgent development of a feature is required.
Trust
Any good working relationship is based on trust. We work hard to earn your trust by communicating openly and honestly and by delivering as promised. We look forward to earning your trust as we work together.