Many companies choose to hire outside help with their software development projects, and for good reason. Software development is a complex craft that can rack up undue expenses in a hurry without proper talent, support and oversight. For most companies, the demand for real software development tends to ebb and flow as projects ramp-up, go live, and then transition to maintenance. Staffing a development team full-time for periodic projects just doesn’t make a lot of sense for most businesses.
If you’ve considered using a consulting team to provide you with these development services, you need to understand your options so you can choose the delivery model that suits your team best.
Option #1: Staff Augmentation Model
One delivery model used by consulting firms is called staff augmentation (or “staff aug” for short). A staff aug firm will help you temporarily supplement your existing development team by finding individuals with the specific technical skills and talent you’re looking for. In this model, you’ll pay an hourly rate for the resources of your choosing. Those resources will be assigned to your account, often with the goal of working alongside your team.
Although this model can be helpful for an existing software development team to temporarily bulk up their throughput, it requires sufficient support roles (i.e. Architects, Project Managers, Leadership, UI/UX Designers) to fill in the areas not covered by the individual consultant. If your company doesn’t have the right people to fill these roles, or if those people don’t have the capacity for the additional work that comes with a larger team, this may not be the best model for you.
Option #2: Deliverables-Based Model
An alternative to the staff aug delivery model is called “deliverables-based” consulting. This model is designed to give you control over the outcome of your project while allowing you and your team to remain hands-off with the day-to-day development activities. These teams first help you clearly define the problem you’re trying to address, and then present options for solving these challenges with technology. Deliverables-based teams typically include all roles necessary for effective software development including Business Analysis, Architects, Project Management, Leadership, UI/UX Design, Front-End and Back-End Development, Software Testers, etc.
Engaging a full team in building your solution ensures the variety of skills needed to develop effective software were used to build your solution. The Deliverables-Based model also allows you to provide direction to the dev team on a regular basis without needing to get involved in the technical details you’d prefer to leave to the experts.
Both models exist today because there is a need for each but beware of companies trying to do both. These really are two very different business models altogether. Deliverables-based firms focus on building technological solutions. They are technology shops first and foremost. Staff augmentation firms, on the other hand, focus on recruiting and assigning talent.
Emergent Software has focused on the deliverables-based model since day 1. We deliver complete technological solutions to a variety of business problems every day. If you’re interested in finding a deliverables-based partner for your software project, contact Emergent Software today!
To enable comments sign up for a Disqus account and enter your Disqus shortname in the Articulate node settings.