We are great believers that the success of any outsourced bespoke software development project starts before the day one of the engagement. Building a new relationship is just like building a house, we ensure that strong and stable foundations are there from the very start. Most of the outsourcing projects come with the question on how can I develop software from a cost-effective perspective. Very often the focus is on the cost only and the question on how to de-risk a software development project by having a successful onboarding is often overlooked.
Working with a nearshore outsourcing supplier like Amdaris come with huge benefits, not only we do have access to a diverse range of skilled and talented individuals who are experts in their field, but we are able to provide your business with significant cost savings.
This obviously does not come without its own challenges, for example how to work with augmented extended teams outsourcing is less explored.
We like to keep the things simple but effective and efficient, as an ISO 9001 and ISO 27001 certified company we already have in place extremely high standards assuring quality across all aspects of our business. In order for us to achieve simplicity and transparency in our work, we created “infographics” to illustrate each step of our process. The “onboarding” of a new client and the knowledge transfer process includes 8 important steps.
The sequence of these steps can be in any order depending on the different aspects of the project, however, based on our vast experience we have grouped them into 8 areas.
Programme Initiation
At this stage, we will work with our clients to assess the current stage of the project, understand the big picture and buy into the client’s vision. We will also understand and analyse who are the internal and external stakeholders and sponsors, this will help the team and the client to define the complete scope of the project and who the current and future users of the software we are about to build are. This stage will also set up the project governance and identify the right communication channels.
Knowledge Transfer
This stage is extremely important for our clients and Amdaris staff, we developed three key ways to successfully transfer the knowledge: On Client Site, In Nearshore Delivery Centres and Remote.
These methods are not mutually exclusive and can be used combined. On client side is when our staff visits the client and work with client’s team in short to medium term, this is an extremely beneficial practise which allows us to capture and understand the client’s culture and environment, as well as meeting people face to face and build strong long-lasting relationships. The knowledge transfer in Amdaris delivery centres comes with major benefits as the client can meet the whole team, get the feel for the centre, people and nearshore location (Moldova or Romania).
Finally, and of course, not exclusively, the knowledge transfer can also happen remotely using the latest technology of screen-sharing and communication. During this stage, we undertake the following activities: review existing code and architecture, a demo of the existing applications, study existing documentation, review existing delivery processes and create the follow-up knowledge transfer plan.
Communication and reporting
This stage is about adopting the existing development processes to work effectively with a nearshore outsourcing partner. Amdaris will suggest how we establish daily scrum virtual meetings, how we will report on project progress, how the timesheets are created and reported, Introduce and initiate our Amdaris Programme Health Index that will act as a regular health check, allowing success to be recognised and highlighting issues that can be resolved for benefit of the ongoing engagement.
Roles setup
In this stage following the best practice of an Agile project, we aim to set up the main roles for the internal stakeholders. These will include the identification of Product sponsor, Delivery leader, Technical Leader, Product Owner, Scrum Master, Design UI/UX Authority, Developers, Quality assurance.
Quality Assurance Strategy
The quality assurance of any project is the paramount element of success. At Amdaris we take the quality seriously and defining a good strategy in advance is important. In this stage, we will define the security requirements, functional and non-functional requirements, performance expectations, automated tests coverage, unit and integration test coverage.
Project high-level setup
In this stage, we will create a solid technical foundation for the project. We will be looking to establish the architecture principals and road map, technology stack, refine functional requirements, environment setup.
Environments
At this stage, we will take the environments set up at the next level and will put in place important elements of software development like continuous integration services, staging or UAT services, Live environments, and deployment strategies.
Development tools
The last but not least, we will put in place the development tools which will help to code, monitor, automate the software development process. At this stage, we will put in place or adopt client’s source control, tracking system (for user stories, bugs, commits, etc), branching strategy and branching technology.