Is your project falling behind, with the finish line seeming further away every day? What can you do as an organization to turn things around?
Change is expensive, but waiting too long before making needed adjustments can end up costing significantly more. In this article, you'll learn when to consider making a change to your project — before it’s too late. These are common patterns that have emerged over my career, and that 8th Light’s team has helped clients overcome for more than a decade.
Are You Beginning To Doubt Your Plan?
Are your teams delivering desired features and shipping code regularly? Or are they uncovering hidden complexity and unexpected frictions in their tech stack and integrations?
No amount of upfront planning can anticipate all of the challenges your team will encounter when developing a modern web application. That’s why project management is such a critical ongoing concern, and it underscores the importance of continual communication channels across every layer of your organization.
Sometimes challenges are truly unavoidable, when a client or integration partner is no longer suited for your use case. By drilling into the core conflict and connecting it to your business strategy, you can ascertain whether the problem is solvable, or whether it’s time to begin crafting a custom solution.
✳︎ Tip: Revisit you plan to ensure it's still supporting your business strategy.
Do You Understand Your Team’s Engagement Level?
Are you doing everything you can to make sure your team of developers are productive and happy?
There are usually telltale signs that something is not right. Disinterest in meetings, screens turned off, little to no participation — they all lead to delayed progress and can ultimately mean project failure. Every contributor has untold, untapped value in their domain knowledge; the opportunity cost of losing that knowledge is severe, but the upside that comes from investing in it will pay off just as much.
Make sure everyone knows what is expected of them, and then connect those expectations with the business value, and back to the work they’re doing every day. A solid plan and regular communication can help with this. Schedule regular standups and reviews to provide feedback to your teams. These touchpoints will help make sure everybody’s on the same page, while also showing that your organization values the team’s work enough to invest in it too.
✳︎ Tip: Set (or reset) expectations across the team, and foster a culture of communication with multiple opportunities to connect.
Are Project Milestones Being Met?
Are you being affected by scope creep, or are things just slowing down? Is there any way you can measure and improve productivity on the team? Have you considered ways to increase morale, implement training, or identify a leader?
Burn up and burn down charts can help track progress in line with expectations. When the numbers deviate from expectations, can you identify what the problem is? It’s important for stakeholders to push back and apply discipline in the delivery process, but the best source of information will be the team themselves.
Is your team composition correct, or are there any skills or expertise you’re missing? The best software is built by interdisciplinary teams that incorporate stakeholders from the product’s lifecycle, throughout its entire lifecycle. Do you have a designer, or is your front-end developer stretching themselves to mock up what they’re implementing? Sometimes this requires inviting more people into the room, and other times your team just needs a little learning and development time to get up to speed.
✳︎ Tip: Assess your project timeline against your team's skillsets periodically to ensure you're bringing the right people to the table.
Are Communication Channels Open and Clear?
Team building is part art and part science. And having the right people in the room doesn’t always mean the right information is being shared in the best way.
Are you experiencing misunderstandings or disagreements? If so, how is this impacting your team? Project contributors should feel confident in their ability to give an honest appraisal of where the project actually is. Additionally, the person driving the project must be available when needed to course correct, and keep efforts aligned and on track.
Are you being clear about responsibilities on the project? Are team members stressed and want to move to a new project? If a contributor has questions about their role, their value, or their ability to deliver quality work, you might need to meet with them individually to resolve confusion and make sure they understand the impact of their contributions.
✳︎ Tip: Regularly check in with team members to encourage regular feedback throughout the team.
Does Your Team Care About Your Product?
It’s worth considering ways to increase the level of trust with your team. If your team isn’t engaging well, you might find you’re losing great talented developers to other projects — internally or even externally.
Have you set project goals that have clear expectations and have you empowered your team to take ownership over their work? Professionals are often motivated by a combination of stretching their skills and feeling supported to make informed decisions about their work, without second-guessing or questioning their assumptions and approach.
If a new contributor is tackling legacy code, it might be boring and unmotivating, and upskilling will take even more time.
✳︎ Tip: Try to find a portion of the work that motivates your team, and see how much that unlocks your ability to move faster and ship more reliably.
An engaging project is one that inspires its team to deliver sparkling solutions that improve your business processes — a true win-win.
However, software projects are incredibly complex, and the things that make a project engaging will change over time.
Your team will be affected by the success of certain features, competitors they see in the market, team composition and morale, and whether they feel invested in the project’s long-term success. There is no one proven methodology to run an engaging project, but a good heuristic is to always start by checking in with your team, and working through short iterations together, to ensure nobody gets lost along the way.