How to handover an enterprise production system smoothly
Many factors shape the online experience – for better and for worse. If the agency looking after your EPS isn't performing well, you need to find someone who can. And quickly.
Many factors shape the online experience – for better and for worse. But one of the most detrimental things for both customers and businesses is poor website performance.
It has knock-on effects on your revenue, your reputation and even your search rankings. For the likes of Amazon, every second of downtime costs billions.
This is why if the agency looking after your enterprise production system (EPS) isn’t performing well, it’s important you find someone who can. And quickly.
While moving to a new agency or partner can feel daunting, performance is too important to compromise on.
At Tangent, we have a lot of experience in managing complex handovers.
During the recent lockdown periods, we took over managing large, business-critical websites both for UK Power Networks and Reed.
In this article, we share how to handover your website in a way that doesn’t compromise your day-to-day performance.
What are the benefits of moving supplier?
Handled well, moving suppliers should improve:
- Operational efficiency leading to better overall value
- Improve system performance metrics, like uptime
- Technical best practice, introducing up-to-date knowledge and opening up opportunities
- Transparency and communication, so you know what's going on and why
- On-going license & infrastructure cost savings
- Continual improvements, faster deployments and being able to action change
While it can be scary to contemplate losing key personnel or vital specialised knowledge during a handover, we’ve overcome this by bringing existing experts into our in-house team.
And don't worry if your tech stack is old or messy.
When it comes to legacy platforms; we put together a roadmap to de-risk the system, remove technical debt and migrate to something that meets your business needs.
Best practises for a smooth handover
1. Careful planning and time
Time is a crucial element here. Though tight timelines can be managed when necessary, it’s better to plan a handover over a period of months.
Laying out a clear roadmap with a timeline means everyone's on the same page.
This should be a staged operation, with defined steps or milestones which are carefully accomplished.
If multiple different parties and dependencies mean a milestone gets missed, we'll push back on deadlines to make sure the work's done properly.
We always allow for lots of contingency and flexibility, making delays much less likely.
Plus, we focus on a small first release of software implementations and measure them against our planned performance, so we can adjust as we go.
PRO TIP: Layout a careful roadmap
2. Clear agreements and protocols
We have clear, well-communicated service level agreements (SLAs) with our clients. These govern things like the level of uptime, response and resolution time, which covers the following:
- Availability of the system
- How quickly we get back to you
- 24/7 response or business hours only
- How quickly we fix an issue
Contracts such as these help us manage your stakeholders' expectations.
A disaster recovery protocol is also essential to prevent site failures and delays. Especially when dealing with business-critical platforms.
In creating an SLA, we assess the platform and then guarantee an appropriate level of uptime. For greenfield projects, we typically provide an uptime of at least 99.9%.
We achieve this with our architectural approach and using CI/CD to ensure we can perform zero-downtime deployments.
Where relevant we can also look at regional redundancy and hot or cold failover of applications.
PRO TIP: Put in place well-communicated SLAs and protocols
3. Access up-front
The first practical step to a handover is transferring access to your EPS, which primarily means Source Control and Infrastructure.
It’s important to give access to the following critical information before the handover starts:
- Client network
- Source Control
- Infrastructure access be it on-prem or cloud.
- Third-party accounts including GA
- CMS logins
- Backlog (JIRA)
- L1/L2 support ticket system
- System documentation, specifications and test plans
- Reports (release notes, status, etc.)
- Monitoring alerts and production metrics
PRO TIP: You’ll waste a lot of time without access, so don’t begin a handover until this is in place.
4. Scope and communication
Next, you must define the boundaries of support, i.e. make it clear exactly what you're responsible for.
For Tangent, this usually covers the following.
- Load balancing
- Supporting service SMTP
It’s vital to identify key stakeholders, so you know who to speak to.
Ideally, you'll appoint one single lead stakeholder for each area. Everyone should have their contact details, and what time of the day they’re contactable.
Better yet, set up a dedicated comms channel, such as texts or messaging, for real-time conversation.
Swapping emails back and forth is time-consuming and confusing when you really need to be sharing info urgently and in a way everyone can access.
PRO TIP: Avoid email and use a real-time, dedicated instant messaging channel instead.
There are many complex automated processes to set up for a handover. These include the following.
- Moving all the code into our own source control
- CI/CD process, automated testing and transfer and update of environment variables
- Release management process, including reports like test reports and release notes
- Monitoring and alerts on the new infrastructure, application and support services
- Local development and UAT environments for testing etc
- Terraform environments to provide for disaster recovery
- E2E automated testing
- New accounts for supporting services like Geocoding or Map from Google, or IoC in Terraform cloud etc
PRO TIP: Always be aware of EPS status and don't get caught napping.
6. Handover audits and procedures
Before the handover happens, we check everything, starting with the code itself, to see what sorts of things we're relying on.
This also includes what third parties who are outside our support are relying on. Handover procedures include the following:
- Code audit (identifying any vulnerabilities, technical debt or other risks)
- Process audit (where do process flows need to be updated?)
- Shadow deployments from development to production (observe the incumbent doing deployments to each environment)
When the handover takes place, the incumbent developers should present the EPS to the incomers, with full explanations of the system, frontend, backend and infrastructure. A Q&A session should follow, to make sure everything is clear.
We also get all the tech specs and diagrams. We can update them from the handover point and work with existing test plans.
We'll review the backlog of all work in progress, so we can pick tasks up at that point, plus a history of production issues.
Even if the incumbent developers were halfway through a project, with these tools we don't have to start from scratch.
When a handover is done, it's up to the client to issue a 'new supplier' announcement.
PRO TIP: Every handover requires detailed tech-specs and diagrams to show how the ESP was originally designed. Get the original files if possible otherwise you’ll need to create them from scratch when you next need to make an update.
7. Process and project methodologies
The next step is to establish the process for raising and rating support tickets, which are classed as Level 1, 2 or 3 Support.
At Tangent, we usually come in at Level 3, but we offer all levels:
- L1 – receiving and routing calls
- L2 – diagnosis of the issue
- L3 – requiring an engineer to fix
The types of call we'll make are also split between status calls, bridge or conference calls where we brainstorm and calls informing senior stakeholders.
When we look at production issues, these also have their own definitions*:
- P1 – the site is down
- P2 – business-critical journeys blocked
- P3 – minor functional issue
- P4 – cosmetic issues
As well as this, we keep a close eye on operational efficiency, so we can spot where and when a problem might occur.
You can approach process delivery in two ways, with Agile methodology being most common in software development. This is a collaborative and self-evolving approach – by all parties – to the needs and solutions of the EPS.
Waterfall methodology takes a linear approach, where the key players layout the project requirements with a plan to deliver them sequentially.
At Tangent, we take a kind of combined ‘WAgile’ approach and agree on a lifecycle and tactics for getting the work done.
This includes how to draw up the brief, how we estimate and plan the delivery, and how we track it and ensure quality deliverables.
We'll also schedule status meetings and stand-ups to go over daily activities and report progress.
PRO TIP: Priorities and responses must be clear on both sides.
At Tangent, we report at various levels, depending on the stakeholders’ seniority and how much they want to know.
We also offer automated reporting, with dashboards providing real-time insight, using tools like Grafana or Azure Monitor on designated areas such as uptime, incidents or traffic.
These dashboards are extremely effective at providing insight to various stakeholders in your business, including senior management.
These come with a history, so you can derive insights and strategies from the statistics.
You might recognise seasonal variations in site traffic, or discover that uptime is affected by the weather. These you should be able to fix.
Such tools are a great bonus for your EPS and add significant value to its efficiency.
PRO TIP: Make it clear from the get-go where, when and how you'll report.
Is it all worth it?
Will the pain of transition be outweighed by the benefits? Definitely yes!
If your current partner is performing poorly, slowly or without adequate communication, there’s always more risk involved with sticking with them than working with someone else.
Not all handovers need to be complex either. They can be super-quick or longer-term, depending on your current projects.
What matters is that at the end of it, you have a cost-effective, well-managed system and a partner you can trust to deliver.