Predictability is the key to successfully managing a profitable enterprise software professional services organization; however, in the real world, predictability is rare and it is the ability to adapt to changing demand for resources and maintaining profitability targets that is key. It takes foresight and guts to overcome the project variability associated with our unpredictable times.
Even with the best project managers and plan, things happen outside of our control on projects. From my experience, the biggest reason why projects are unpredictable – though there are many – is that the sales cycle and deployment of enterprise software develop over time and so customer needs change during that cycle. Customers introduce new products that can change technology requirements, mergers and acquisitions occur introducing new scope, key stakeholders leave customer organizations causing delays while new people ramp-up, other systems that interface with your solution need upgrades so technical design changes, to name a few. The bottom line is that no project ever goes as planned.
So how do you manage a profitable services business under these constraints? From my experience, the key is to plan for the worst and hope for the best. Below are a few strategies:
1. Build a quantitative forecast model to understand resource needs – Determine all the variations of projects your team works on, define the roles required, conservatively estimate effort by role by month across the total duration knowing that projects extend, and build estimates for non-billable, internal project time. Once defined, layer in forecasted sales by month to determine your real resource needs. It does not do you or your customers any good underestimating true resource needs (“hoping for the best”). Things change, but knowing the relative needs will tell you if you are within the ballpark, long or short on headcount for staffing purposes.
2. Establish a “pay for services” culture with prospects during the sales cycle – Negotiate with prospects on rates, but do not decrease effort no matter how much pressure your sales organization puts on you to lower the total-cost-of-ownership for a solution. Customers should get used to paying for every hour that your team works. If your typical rates are $200/hr, in most cases it is better to get $175/hr than not get anything at all. By “training” customers from the start, it is much easier to request additional funding when things change on projects.
3. Build buffer into all estimates and every project plan – Account for delays from the beginning. This helps make projects more predictable by nature even if customer-driven delays occur.
4. Leverage 3rd parties as part of your resource strategy – Use your forecast model to determine the need for consultants and contractors to backfill on project teams, or even take on a project in its entirety. In many cases you do not want to remove the resources on your best customer projects, so always have a variable workforce available for new projects to offset extending your internal team when delays occur on existing projects. After building and reviewing many models in the past that take unpredictability into account, the models generally show that the optimal mix of internal to 3rd party resources is 60/40 for enterprise software PS organizations.
5. Don’t be afraid to submit change requests – Explain to customers that if they want the same resources on the project, they may need to pay to keep them on project when there may be less work to do during project delays based on unpredictable change. PS leaders often don’t want to the rock-the-boat before their team even delivers a solution; however, ultimately it will be more expensive long-term for all parties to ramp-up another team later in the project than simply pay to maintain the current team and provide additional services during the delay. One strategy for making this process easier is, when possible, estimate services based on role and duration rather than deliverables. For example, you may estimate it takes 128 hours for a business analyst to create end-user training; the other option is to estimate it takes a business analyst 40% of their time for 2 months. This allows you more flexibility when negotiating to keep the project team intact during delays.
Regardless of your strategy to “plan for the worst”, if you are delivering value to customers, they generally don’t mind paying for the work your team performs even during project delays. So, don’t be afraid to ask for money when timeline or scope changes. We live and work in unpredictable times.