- Face-to-face discussions giving rise to mutual trust & rapport.
- Remove unknowns earlier in the cycle.
- Basecamp for effective project management and collaboration
- Agile development methodologies for product development
- Equal focus on non-functional requirements.
- Established UX design frameworks.
- Organization wide standards: process, documents & templates
- Leverage vRhythms solution accelerators (Building Blocks)
- Assured product quality through SLAs
- Governance model for improved quality and CSAT
- Horizontal services enabling across the projects code reviews
- Access to talent pool and established hiring best practices
Global Software Development
Team vRhythms is known for its brilliant leadership which has over 10 years of experience in various setups ranging from Consumer to Enterprise, Products to Services and from Local markets to Global setups. Hence our best practices come from a lineage of gurus who have a collective wisdom generated as a result of discussion with peers and mentors, some amount of trial and errors, learning from success and failures and mulling over observations on teams which have been highly effective in dealing with Offshore Product development as well as teams which have been a disaster on this front.
Following are some aspects, we believe, play a significant role in crossing the chasm of effective Product Development in a Global Setup:
- Planning your offshore product development program and ensure buy-in by all stakeholders
- Instilling the feeling of "one team", mutual trust and rapport helps in keeping communication inclusive and open
- A model aligned with business objectives that encourages work partitioning and clarity in roles & responsibilities which in turn motivates the team and increases operational efficiency
- Balanced organization structure with a pyramid of skillset and experience profile at each site
- Teams to leverage technology and tools (emails, audio/video conferencing, net-meeting, webcasts, instant messenger, blogs and wikis) to exchange information and keep communication channels open
- Project planning and management: metrics-based approach used to drive project scope, quality and risk management decisions at various levels
- Strong management team fine tunes their style based on different team dynamics and the talent pool profile
Quality Assurance has often been misunderstood and confined to the scope of testing. We at vRhythms deliver quality of the highest standards by inculcating quality assurance efforts throughout the development cycle from project inception to maintenance. We believe in Quality from Concept to Delivery.
Conformance to requirements accurately is a decisive parameter in gauging the effectiveness of testing efforts within vRhythms. Thus tests are devised based on requirements and specifications and not on what is delivered by the developers. A Requirements Traceability Matrix approach is followed right from the onset. QA members are trained specially to develop a knack for finding usability issues and develop an approach to deliver the highest quality product. Customer Scenario Testing thus becomes an important phase in Quality assurance cycles at vRhythms.
Code reviews also ensure that the code is written to assist further re-engineering and assist any further incremental development, giving Code Quality Assurance.
Test Planning and Execution envisages functional, regression, security, sanity and performance. Correct sequencing can not only save time but help in uncovering bugs early in the lifecycle thus reducing the cost of each bug even further. We closely monitor the testing progress as well as quality metrics. What differentiates our teams from others is the knack to understand specific automation needs, capability to develop complete automation framework and optimally customize and use third party test automation frameworks. Automation is thus employed to thoughtfully optimize and not just because it has to be done.
Our Performance Validation team gets involved right from the product design phase to ensure that the design and code will stand performance expectations. They use several techniques like benchmarking, profiling, white box testing and simulation to understand the performance bottlenecks and closely work with development teams to ease them.
Team vRhythms works towards obtaining any required compliance right from the project inception. This eventually saves up a lot of time to tweak the product to comply with Certification and standard compliance.
At vRhythms, we understand the vital importance of intellectual property to our customers business. It is indispensable to vRhythms's long-term development strategy. It is an implicit and integral part of the offering that we provide to our customers.
We protect the intellectual property rights of customers through a three-pronged approach.
1. Contractual safeguards
Our first and foremost approach is putting in place contractual safeguards. vRhythms executes an NDA with the customer, whereby undertaking that all information received and deemed to be confidential will be maintained in confidence. vRhythms issues an explicit undertaking that it will not reverse engineer any of the customer's products.
Customers can define a list of close competitors, and vRhythms undertakes that it will not initiate work with any of them in the same application area The customer and vRhythms shall mutually indemnify each other against breach of any third party IP in the course of conducting work under the proposed agreement. vRhythms further executes similar NDAs (confidentiality contracts) with each of its employees. These agreements affirm that the employees will comply with vRhythms IP protection regulations. If required, NDA can be signed between the customer organization and the vRhythms engineer assigned to the project.
The customer can ask vRhythms to be responsible for safe-keep of all equipment on loan to vRhythms, without creation of ownership in any form and without any encumbrances. It can further ask that such machines be labeled as its property and not be shifted from the intended facility to any other location without prior consent.
The outsourcing agreement ensures an orderly and scheduled return to the customer of all customer intellectual property. It also provides for a commitment to destroy all copies of customer intellectual property and appropriate related materials which are not otherwise required to be returned. vRhythms would sign outsourcing agreements with customer wherein all improvements to customer intellectual property would be owned by the customer. vRhythms would agree to transfer all such rights.
2. Culture building
vRhythms promotes an internal culture where every individual is aware of and respects the IP rights of customers. This is accomplished through:
- An articulated IP policy which substantiates on issues and rules for IP protection.
- Awareness programs and trainings that educate employees on IP issues.
- Each employee, upon being hired, undergoes an introductory course on IP rights as part of employee induction program.
3. Controls and Practices
vRhythms has put in place a set of clearly defined controls and safeguards which go a long way towards IP protection.
Access control, Physical isolation: vRhythms has instituted access control, visitor log/visitor badge and posting of security personnel in its development facilities. Developers belonging to different teams are logistically segregated from each other for all aspects. Subject to mutual agreement, vRhythms can arrange for physically isolated and secure space for executing projects.
Code Security: Source code and other documents, are protected through our version control systems access to which is secured. The version control system is configured to grant access to only relevant areas of the source tree even for personnel in the same project / team. The back-up policies ensure that the code and documents are recoverable in the face of man-made / natural disasters.
Restricted and Isolated networks: We have safe and secure network connections for remote logins, cross-facility communications and vRhythms-customer connectivity.