In recent years, offshore software development has skyrocketed. Due in part to COVID-19, companies have discovered the benefits of sourcing work and developers from overseas. This can be seen in businesses across the globe, such as a 15.5% increase in the number of offshore jobs posted in the UK alone.
With advancing technology providing countless improvements to workflow management platforms such as Slack, Zoom, Jira, Monday.com, working remotely is easier than ever to use offshoring for your business. However, this raises a question, which offshore structure is best for your business?
Outlined below are the various offshore engagement options when looking to harness offshore power for your development team, the pros and cons of each and what to consider when picking the right model for your business.
A Bit About Us
Here at Double Yolk, we offer a range of services to provide you with offshore development that is sure to fit with the needs and nature of your project.
Project pods are a team of developers tailored to developing your project. They are managed by a Project Manager and/or Tech Lead who will oversee and ensure that the project is delivered efficiently and on time. The project pod follows a time and material model of pricing. The client will pay for the number of hours spent by the developers to deliver the final product.
Satellite squads are a remote team of offshore software developers assembled by Double Yolk. They work in conjunction with your team of software developers to produce work, allowing you to manage workflow systems and pipeline to ensure work if as efficient as possible (see 6 ways to Optimize Workflow for tips on how to achieve this). Clients pay for the days worked by the satellite squad.
Integrated hires provide an offshore software developer to integrate with your existing development team. They act as a full-time employee and are a perfect fit for companies who need to add members to their existing teams. Much like satellite squads, clients pay for the days worked by the integrated hires.
Engagement Options When Going Offshore
The Project Pod follows a successive process, and has a strict structure that progresses one step (phase) at a time. Each phase must be completed before the next begins.
Requirement phase: The first phase of the Project Pod and includes defining the project outcome and outlining all functional & non-functional requirements needed to achieve the outcome. During this phase you will also need to identify any challenges that may be faced during the project.
Planning phase: This phase includes preparing a Project Plan and the preparation of any documentation required for the operation of the project, for example; Risk Management, Testing Environment and Training Plans.
Design phase: During the design phase, the aim is for architects to generate a blueprint for programmers to follow. This phase also includes any UX/UI designs for front-end or mobile development to be created and signed off with the er before beginning development. Lastly, this stage also involves assigning and prioritising tasks to team members for the first tranche of sprints.
Development phase: The development phase involves coding and developing of features and implementing them into the project.
Testing phase: The aim of the testing phase is to ensure the project fulfils its intended purpose, the code is to standard and they also identify and remove any bugs in the software.
Deployment: After testing and the removal of bugs, the project can be delivered to the client and go live. An additional phase of user acceptance testing is also common during this stage.
Maintenance: After the shipping and release of the project, developers ensure that the project functions correctly and remove any bugs in the system.
- Provides clarity on project budget and timeframes to get the desired deliverables.
- Suitable for shorter term projects which have a clear desired outcome.
- Less responsibility on the client to manage the day-to-day workflow and can rely on the external project manager to supervise the projects progress & submit regular updates for review.
- Not suitable for longer-term projects or where requirements aren’t able to be well defined from the outset.
- Doesn’t allow for a lot of flexibility during development where later stage changes requires a lot of re-work.
Where Project Pod Model can work best:
A scenario where a Project pod engagement suits best is where you have an idea for a distinct software platform that you wish to build & release to the market. The Project Pod can help to scope and code your MVP platform. This model can often be a useful pre-cursor to the satellite squad or integrated hiring model which makes more sense once the product is released, and you are receiving iterative feedback on how to extend functionality to provide further value to end users.
Project Pod Pricing
The discovery phase offers a full breakdown of requirements, project estimate in hours and a timeline for delivery to highlight what IT staff will be working on the project and when.
The time and material model are based on an hourly rate of the IT staff. This keeps pricing flexible as you only pay for the hours worked by different IT staff across the various stages of delivery.
The Satellite Squad model aims to address some of the shortcomings of the Project Pod, most notably allowing for more flexibility in the ever-changing environment that is software development.
The issue of late-stage changes to scope, resulting in months of extra work, can be overcome by Satellite Squads as work is completed in short sprints.
Satellite Squad Model Satellite Squad Model utilises scrums methodology where sprints ensure fast and efficient work.
A scrum is a team of developers with a scrum master who manages and supervises the scrum. The scrum then completes a ‘sprint’, which is short burst of work over a 1–4-week period, usually on a specific feature. The sprint contains planning, implementation, reviews and retrospectives much like a standard software development life cycle. A sprint backlog containing features that need to be developed (generated from the product backlog) is used to determine their work focus for the current sprint.
After each sprint, the scrum presents their work to the client for review. They then carry out an internal retrospective on their work and prepare for the next sprint.
- More suitable for longer term projects.
- Faster release time on new features. As development is more condensed due to the short timeframe of sprints. This allows for quicker time to market as features can be released to production at the end of each sprint.
- Iterative feedback at the end of each sprint allows for changes to be made during development of the project, as opposed to the Project Pod where review may only happen when the project has been completed.
- Flexibility is the most attractive aspect of Satellite Squads. The ability to make changes during development is massively beneficial to the software, furthermore if any mistakes were made during planning, they will not have as larger impact on development time as it would using other models.
- Due to the nature of Satellite Squads, predicting costs, time and resources can be difficult. Especially during the early stages of the project.
- Measuring progress can be hard as work is delivered in parts.
Where a Satellite Squad Works Best
You may be a SaaS company that has a long-term project to create integrations to a list of various other software platforms, however you do not have the bandwidth internally to scope and build these due to other priorities.
backlog containing features that need to be developed (generated from the product backlog) is used to determine their work focus for the current sprint.
A satellite squad is a perfect solution whereby you can bring on a cross-functional team to scope, plan, design, develop, test and release this work while reporting regularly into your internal team in an agile format.
How Satellite Squad Pricing Works
Satellite squad members are allocated full-time or part-time to your team and billed by the day.
This allows for a lot of communication between developers and the client, allowing for changes to be made during development which is perfect for long-term projects.
Integrated Hires Model
An Integrated Hires Model involves supplying IT staff to become part of an existing team. The sourcing of talent is done by the talent provider however, management of the remote staff’s workflow and task management is the client’s responsibility. This model can be useful when the project scope and requirements have not been defined, is iterative, or where the client wants more control over the software development lifecycle.
- Client has more control (if desired) over what remote staff work on and how they do it.
- Avoids complexity
- High flexibility
- Client must be able to effectively manage remote software team members
- Client must already have software a development team that dedicated team members can slot into.
Where Integrated Hires Works Best
This model works best where you may have several open roles in the team that you are looking to fill quickly.
Integrated hires allow you to source and select suitable team members to become part of a hybrid cross-shore team to deliver work where they work side by side with your internal team members.
Integrated Hires Pricing
Much like Satellite Squads, Integrated hires are allocated full-time to your team and billed by the day.
This allows for remote team members to embrace the same mindset as your onshore team by working on the same tools, technology and workflow structure
What to Consider when Thinking About the Best Options for you
As described, there are several commonly used models when it comes to offshoring software development. Whether you have an idea for a project or already have a development team working on one, it is essential you choose the correct engagement model for you to ensure development runs smoothly and efficiently.
Here are some ley areas to consider before picking your engagement model:
For projects based on a longer-term time frame, a Satellite Squads Model or Integrated Hires Model may be more beneficial. This is because long-term projects generally require more flexibility and don’t have their project scope as clearly defined.
Although if your project is on a shorter-term timeframe, can be well defined and is not yet subject to user feedback, a Project Pod may be a better fit.
Low: If you prefer minimal supervision on your project, a Project Pod may be the best fit for your product.
Medium: If you want to have some supervision and interaction with the development team, a Satellite Squad is the best service engagement for you. This allows some input with the development team but does not leave all management down to you.
High: If you desire high supervision and management of you offshore team, Integrated Hires is the best option for you. With offshore workers integrating as part of your team, you will be able to manage them as one of you own employees.
If you are interested to further explore what offshore option may be best for you, feel free to reach out to one of the team Double Yolk. With our talent pool in India, we have been helping local tech companies build and scale offshore IT teams since 2018.
Double Yolk is a New Zealand and Australian owned and operated Offshore software development company, providing local engineering and operations support to ensure that whatever model you choose for your business, Double Yolk can assist in gearing your business for success.