When It’s Time to Break Up with Your Development Agency
Something feels off with your current development agency, but you’re not sure where to look for answers or how to get the information you need.
You feel stuck, powerless, and unsure what questions to ask, unsure what you’d do with the answers if you got them. How would you get out of your software development relationship, if it comes to that? It might be time to rescue your code.
Software development projects (and ongoing engagements) are unique working relationships where it’s easy to find yourself in a power imbalance.
As the client, you should feel – and be – in control at all times. But that’s hard when you’re not a developer or any kind of expert in software.
Here’s our guide to evaluating your development agency, identifying red flags, getting the answers you deserve, and getting out safely, if that’s the best move.
How to Evaluate a Development Agency
Even if you’re not a developer.
If you’re not a developer or haven’t been in the software development world in your career, it’s hard to know what to expect from a development agency. To be honest, even if you’ve been around the industry your whole career, it can be tough to evaluate and find the objective reality.
Part of a development agency’s responsibility is to communicate with clients in a way that helps them understand the realities of the project: the good, the bad, and the ugly.
Many development agencies feed clients the same line over and over, with no real answers. They avoid the hard conversations, give vague responses, and get upset when you push back.
But it can be different. You may not be a development expert, but you know your business, and you know what a healthy partnership should feel like.
Key Ingredients…
…For a Successful Project
- Quality code
- Proper infrastructure
- A product that meets your goals
…For a Successful Relationship
- Trust
- Communication
- Documentation
Questions to Ask Yourself
- Does something feel “off” (even if you can’t put your finger on it)?
Trust your gut. - Does your agency give you the runaround instead of straightforward answers?
You deserve clear communication. - Does your agency get agitated if you push back or ask “too many questions”?
You should feel informed and educated about their work for you.
- Has your agency worked to earn your trust?
They should work toward it daily. - Do you get tangible updates on project progress, work being done, and issues that arise?
Project management and regular updates should be the norm. - Do they involve you in project and priority planning?
You are a critical component of this process.
In the end: Trust your gut. Your intuition is there for a reason. If something feels off, it probably is.
Spotting the Red Flags
Signs you may need to take back control.
If something about the relationship with your development agency doesn’t feel quite right, here are some signs you can look for:
Insufficient Answers
When you ask questions about timelines, budgets, work being done, and more, your agency should be able to provide clear answers. Responses like “don’t worry about it,” or “everything’s on track,” (but without evidence) are red flags.
Lack of Transparency
You should expect consistent, thorough reports throughout your project. Many agencies provide these each sprint. You should always know where your project stands, what work is being completed, what and how you’re being charged, and any barriers that arise.
Limits on Access
Depending on your comfort level, you should have access to whatever project assets you request. Common requests for access include: The project management system, dev environments (UAT, staging, production, etc.), and source code. If your development agency doesn’t provide access to these upon request, that’s a red flag.
No Requests for Your Time
Successful software development projects require a close partnership between the client and the software developers. If your vendor holds a kickoff session and then says, “We’ve got it from here,” that’s a bad sign. You – or a product owner on your behalf – need to be closely involved throughout the entire project.
Throw Your Code a Life Preserver
Evaluate and understand your development efforts.
If your project is stalled (but your agency won’t tell you why), your product isn’t delivering (and your agency is unable to resolve it), or you’re over budget (but still don’t have what you need), you may need a Code Rescue. Code Rescues provide an independent evaluation of your project and your agency’s performance, giving you an unbiased view of your reality (and how to fix it).
Steadynamic’s Code Audit team can quickly review your project by analyzing your source code, hosting infrastructure, and your agency’s performance to provide an unbiased view of your current situation and your app or website’s future.
Throughout the Code Rescue process, you’ll spend a lot of time with us. We dig in to get to know your goals, your software, your development agency, and how they all fit together.
We provide and walk you through a report detailing your current state and your future options. The report comes with no strings attached; it’s not a sales presentation. We give you the independent report with no expectation that you’ll change development agencies to work with us. If you do choose that option, we’re here to help, but you certainly don’t have to.
If, based on the report, you do choose to change development agencies, we’ll help you through that entire process.
A Guided Roadmap for Switching Developers
If you determine, through our Code Rescue process or otherwise, that it’s time to switch development agencies, we’ll help you navigate this sensitive process.
While every transition is different, and it’s vital to know what questions to ask, when to push, and when to back off.
Questions to ask:
- Who owns the intellectual property (IP)?
- How is the contract set up?
- What legal recourse do you have, if it gets to that point?
- How far along in the project are you?
- What tech stack is being used?
- Where is the product being hosted?
To Salvage or Not to Salvage
Switching development agencies gives you a good opportunity to review your software as a whole to determine what’s worth keeping, if anything. If your current development company isn’t using best practices to build your system – like version control and clean code – your system may be rife with technical debt.
“Technical debt” is the future cost of taking a development shortcut today. It’s hard to evaluate a system’s level of technical debt, especially when version control and other best practices aren’t in place. You can’t get a good grasp on your technical debt with a quick look; it requires a thorough analysis and review.
If your system does have a lot of technical debt, it means a few things: First, future changes to the legacy codebase will be expensive, since you have to make the updates and deal with technical debt. Second, updates and bug fixes could create more problems than they resolve.
Sometimes, based on the code review, scrapping your system and starting fresh is your best bet. Other times, there are areas of the system you can salvage. A Code Rescue helps you sift through what to keep, what to toss, and what to update.
Let Sunk Costs Go
It’s really hard to scrap a project, but if it’s time to do so, it’s a much better option than throwing good money after bad. Even if you have to scratch your development progress, it doesn’t mean you’re completely starting over.
The work you did to learn what your users want, your priorities for the system, and other lessons, can be used to make new development faster and better. Your efforts weren’t all for naught. Cut the cord if it’s time – you’ll be better for it.
Other Things to Consider
Switching development companies is tough on everyone involved, but sometimes it’s the best option. Do your research (and/or have a trusted partner by your side) for the transition, because there’s a lot to think about.
Some development agencies won’t touch an existing system, or code built by other developers, even if it makes sense to salvage some components. If you’re wanting to keep parts of your system, make sure you have that conversation with your potential agency.
Every development agency has its own style and tech stack, so it’s important to root out the best fit for you. But you don’t have to go it alone. You can bring in an independent, third-party to help and advocate for you.
While this is a good overview of what you will need to think about, changing development teams is about more than just walking through a checklist. You have to know when to do each step, in what order, and how to ask for what you need. That’s why you shouldn’t go it alone.
How to Avoid Trouble Next Time
Or this time, if you’re not already drowning.
When you’re looking for your next development partner, keep these tips in mind to help you find the right fit. Whether you’re looking to avoid your mistakes with the next agency, or just want to make sure you have a strong relationship with your current one, here are some tips:
Define Success
Go into your project with a clear vision for your software. And work with a development agency that understands your vision or will ask the right questions to guide you along the way. It’s hard to say something is “wrong” if you never defined “right” in the first place.
Be Ready to Invest…Your Time
Your development agency should require your continued involvement throughout the entire project. If they cut you loose, how can they be expected to implement your vision? In an agile development environment, you should have planning, prioritization, testing, and reporting each sprint.
Watch for Unrealistic Optimism
If you run into a development agency that only tells you what you want to hear, you’re going to have a bad time. You need a partner you can trust to tell you the good, the bad, and the ugly. If the agency isn’t realistic and honest in the business development meetings, that trend will continue throughout the project and you’ll be in the dark about important challenges of your project.
Learn Remote Team Best Practices
Most likely, you’ll be working with your development agency from afar, with project management and virtual meeting tools as your main means of communication. Many people will feel overwhelmed when dealing with technology and software projects like this, but it’s even more complex when you throw in a remote team. Familiarize yourself with best practices for remote work, especially if it’s your first time working with a virtual team.
Ask the “Boring” Questions
It’s fun to focus on what you’re building, like talking about features, wireframes, and user experience. But it’s important to ask the tough questions, including:
- How will IP ownership be handled?
- How is the contract set up?
- How does pricing and billing work?
- What are the legal expectations of each party?
Focus on Value, Not Cost
Most of us know someone who has a development horror story (that someone might even be you). For example, an agency promised cheap and quick development, but never actually delivered and/or blew up the quoted estimate without warning. Watch for agencies that sound too good to be true. Sometimes starting cheap costs more in the end.
About Steadynamic
The outsourced software development industry is fraught: Bloated budgets, missed deadlines, and unrealized expectations stall innovation and quell competition. Agencies over-promise and under-deliver, and clients are left in the lurch.
Steadynamic is the guide in your journey, bringing unmatched problem-solving, precision, and peace of mind to the outsourced software development process. Using its hybrid-shore framework, Steadynamic provides custom solutions to sophisticated technology challenges, on-time and on-budget.
Are you trying to get answers about your code? Steadynamic can help.