Approach / Best Practices
Pair programming involves one developer writing the code, while the second developer is watching. This enables the second developer to act immediately. This practice produces shorter program, with better design and fewer bugs. Studies have found reduction in defect rates of 15% to 50%.. In addition, fewer problems seem "impossible" when developers work in a pair.
With continuous integration the system is built, compiled, and integrated at least daily. Ideally this is done whenever updated source code is checked into version control. The system is automatically tested immediately being built. Development is often done in a separate "project integration sandbox."
Test Driven Development
With TDD, developers write software in very small verifiable steps. First, they write a small test. Then they write enough code to satisfy the test. Then another test is written, and so on.
Refactoring is a disciplined technique for restructuring an existing body of code. Refactoring means altering internal structure without changing external behavior. This allows for continuous optimization of the code through a series of small behavior preserving transformations.
Behavior Driven Development
BDD focuses on exposing internal logic (typically business rules) to review by stakeholders. Behavior-driven developers use their native language in combination with the ubiquitous language of domain driven design to describe the purpose and benefit of their code. This enables developers to focus on strategy rather than being entrenched in technical details.
Blended Staffing Model and Value Driven Approach
Sphere understands that there risks that factor in to your decision to outsource a project. We are experts at offshore development practices. We customize every engagement based on analysis of your needs and help you decide which tasks are more effectively performed onshore versus offshore. Through our offshore development talent, Sphere offers a highly competitive blended rate that can be applied to both small projects and enterprise level systems.
Dedicated Resources with a Flexible Engagement Model
You choose the type and amount of resources and we guarantee resource quality and engagement time. You have the flexibility of choosing between hourly or monthly contracts and pay per experience level. Our offshore team works in close collaboration with your designated Project Manager, under your supervision. You have control over the management of the project, Sphere provides the quality development that you need. We also provide 24x7 support through the ODC for mission critical applications..