How we Work
We follow the best software development practices and we use the world's leading project management methodologies ranging from AGILE (Scrum) and Rational Unified Process (RUP) to Microsoft Solutions Framework (MSF) and Capability Maturity Model (SEI-CMM). Normally, we adapt the traditional Agile or Waterfall project management techniques to the business needs of every client. However, we can also adopt your own project management methodology if you prefer it.
Working with us is easy. Here is what you can expect:
1. Initial request
First, you should contact us. Our Program Manager or CTO will be happy to hear about your needs. We try to evaluate as objectively as possible whether we can help each client. Sometimes, we say "no." After all, we might not have the required technical expertise or the required number of professionals for certain highly specific projects. In such cases, we might refer you to one of our partners who may have the required experience. All evaluation requests are free and completely non-obligatory. If we think we can help you, we will continue working with you to fully understand you business goals and to clarify how we can structure our partnership. Sometimes, we can help you to decide which technologies, architecture or platforms are best for your project. We can also help you to create a written specification describing your product requirements. All consulting services at this stage are free, and you can pull off at any time during the initial negotiations.
2. Free demo / Office visit
We give all new clients a risk-free possibility to check the quality of our services in a non-obligatory way before starting working with us. Dependent upon the size and the length of the potential engagement, such possibility may range from a few demo web pages to one month of work at a substantially discounted introductory rate for some very large projects. We understand very well your possible reservations regarding contracting an offshore company, and we are flexible to discuss how we can help you to make an informed decision.
3. Cost structure
Most our clients chose one of the two forms of collaboration: "fixed functionality for fixed price" or "fixed hourly rate for a dedicated team with the specific skill set." In both cases the price depends on the project size, complexity, and the associated risks. Generally, our new clients choose "fixed functionality for fixed price" scheme as it makes them feel more comfortable when we absorb most of the risks. Our repeat clients, however, prefer an hourly rate since it is cheaper and it allows them to work with the same professionals who are fully dedicated to their project. It also makes it easier to change product requirements frequently without the overhead of cost renegotiations, which is particularly useful for start-ups who need to iterate their product fast in response to the real-time consumer feedback. In both cases we offer a fair price to all our clients based on our estimate of how much the service would cost us.
4. Paperwork
Once we agree upon the total cost and delivery schedule, we are ready to sign an official agreement. While we may send you a standard agreement that we normally sign with most our clients, we are flexible to consider yours. Typically, at this stage we already have a formal description of the product requirements or the dedicated resources that we commit to provide. A professional project manager will supervise the development of your project and act as a single point of contact to whom you can direct all inquiries and requests. We will also send you a detailed project plan with explicitly set controllable milestones, and a payment schedule tied to these milestones. All payments are made only after a specific milestone is met and the corresponding functionality is delivered. We require no advance payments.
5. Development
We do our best to make our processes as transparent to you as possible. Our clients can continuously track the status of all their projects through a centralized project management / status tracking software. Additionally, you will have access to our source control system, where you will be able to observe how the source code for your product changes daily. You will receive a detailed project schedule that our project managers will update regularly. If your requirements change frequently we can offer you a centralized change request management system, where you can track all new tasks and organize them dependent on their priority, size and scope. For highly iterative products, we use Agile (Scrum) and RUP methodologies, widely recognized as the world's best and most effective for iterative development. Finally, our experience with proactive risk management allows us to avoid risks early and to notify you about the potential dependencies and issues as soon as possible. All this enables our clients to get products of a predictable quality on time and within budget, while feeling comfortable and in control all the way down through the process.
6. Quality Assurance, Deployment & Maintenance
We involve our Quality Assurance (QA) Engineers as soon as at least some portion of the product is functional. The early start of testing allows us to detect problems early, fix them, and immediately adjust the development process to avoid similar problems in the future. This way we lower total project costs and ensure predictable delivery. Dependent on your needs, our QA team can set up a variety of testing environments and conduct a wide range of tests with enterprise-level tools. Specifically, we do: performance stress testing (checking how well your system can handle extremely high volumes of data, or respond to an abnormally large number of online visitors); security testing (whether your system can protect confidential data and resist external attacks, such as SQL query injection, cross-site scripting, and many others); as well as integration testing (checking how well SSD-developed product works with your existing systems). All our services include deployment and testing of your product in your production environment. We promise to fix for free all defects our clients may reveal thereafter, and we guarantee the availability of maintenance and functionally extension services to all our clients.