‘Phew! I have no idea where all this time went’, you might say after a busy day at work. Yet you repeat it over and over again, not being able to fully reflect on where you are...
At Teamdeck, we regularly talk with people working at different software development companies. When demoing our resource management app and onboarding new clients, we learn about their typical processes and issues.
We’ve noticed that many software houses face very similar challenges, especially when it comes to project management and organizing their teams’ work. Granted, a boutique software development consultancy will have to deal with different challenges than, say, a 500-person IT firm. Still, when these companies grow, they typically go through similar stages and need to solve similar problems.
In this blog post, we’ll take a closer look at some of the typical challenges of a mid-sized software house. These issues often have to do with resource management and project management.
As a mid-sized software house, you likely have already figured out how to monitor which team member works on which project. Granted, the technology you use for that might be rather rudimentary (spreadsheet, anyone?). Still, you probably have some foundation for a resource allocation process in place. However, it is the time when you can struggle with effectively managing your teams’ availability and work capacity. Read on to find out how to take on these challenges to facilitate your software development business’s growth.
Typical questions medium-sized software development companies ask
When talking with IT companies, we often hear them asking about the following challenges:
Who is at work and who’s on vacation?
As a person in charge of resource allocation at your business, you simply must know which employees are available to join a new project. When one of the existing project teams needs a pair of extra hands, you also need to identify available and suitable resources quickly. Without a central resource calendar where you can see your team’s planned vacations, it’s difficult to keep track of who’s supposed to be working when.
How much do we spend on internal projects vs. client projects?
Project profitability is obviously a major concern to many businesses, and software development teams aren’t an exception. As your team grows to, say, 100 people, you have likely already figured out a way to measure the profitability of the client projects you take on. However, it’s still important to keep track of internal projects as well. After all, they may turn out to be costing your business way more than you initially hoped for.
What is the resource utilization in particular teams?
Monitoring resource utilization on a single employee level is naturally very important. You don’t want your team members to be overworked, but you also don’t want to underutilize your company’s talents. Medium-sized software development companies should also consider measuring the level of resource utilization in different teams. It may turn out, for instance, that your programmers are booked to their limit, whereas the design department has much more room left in their schedules. Such insights will help you with resource forecasting, making better hiring decisions, and picking the right R&D projects for your team.
How much capacity do we have left?
Speaking of R&D projects and internal initiatives—there’s no denying that they could become an excellent way for your company to foster innovation, master new technology, and ultimately bring you more business. However, before you launch a new internal project or sign a contract with a new client, you need to be 100% sure that your team has enough capacity to deliver the work. Of course, you also have to consider your team’s planned time off or the varying availability of your part-time employees.
Is effective resource management the answer to your challenges?
Now that we’ve listed the major challenges software development organizations face let’s discuss solutions.
In order to eliminate chaos and cut operating costs, you should prioritize effective resource management processes. They will help you plan your team’s projects in the long term, plus you’ll be able to respond to issues that arise along the way.
What do we have in mind when we talk about effective resource management?
Implement a resource calendar
First of all, your company should have a central resource calendar. It’s where you can see your employees’ planned work (bookings), actual recorded work (timesheets), and availability.
With Teamdeck, you can see your team’s bookings, timesheets, absences, and daily availability in a single view.
You can use such a calendar for several purposes, for instance:
- checking who is available to join a new project,
- monitoring the utilization of your employees,
- overseeing the production pipeline and finding room for new projects,
- planning new projects and editing bookings when necessary,
- seeing who’s working on which project.
When it comes to software development companies, it’s always crucial to identify not only available employees but also people with skills matching a particular project. It won’t make much sense to book a DevOps specialist on projects based exclusively on frontend technologies. Likewise, a programmer specializing in creating JS-based animations likely won’t be a good fit for an infrastructure-related challenge.
When your team is small, it’s relatively easy to keep track of everyone’s skills and preferred technologies. However, as your company grows, it will become a significant challenge.
For that reason, your resource calendar should offer a filtering option, where you can specify what type of employee you want to find.
Looking for people with a particular job title is easy to do in Teamdeck’s resource calendar.
A resource calendar will help you solve two considerable challenges many IT organizations struggle with:
- Who’s busy, who’s available, and who’s out of office?
- What’s the remaining capacity of our team?
Get more data-driven
In order to tackle the other problems we’ve listed in the first part of this blog post, you’ll have to dig deeper into the data. Fortunately, robust business apps for software development organizations offer advanced analytics options.
Having the right tool to do the job is not enough, though. The foundation still lies in resource management. For instance, without implementing time tracking, you won’t be able to analyze the costs or profitability of projects precisely. The same goes for resource utilization: you might see the planned workload of your team members, but only timesheets will give you insights regarding the actual workload, overtime, etc.
When you have access to the timesheets, you can analyze resource utilization in different teams: production, QA, sales, etc.
Teamdeck allows you to compare planned utilization with actual utilization to generate better insights.
Such insights will help you understand which of your company’s services are the most utilized. Comparing planned and actual utilization should allow you to make some improvements in the project estimation process. On top of that, you will know when to start a new recruitment process to avoid overutilization. Reports like these will be useful for several departments within your company: from HR to service delivery.
Monitor billable and non-billable activities
Another challenge we’ve mentioned above is recognizing the costs of client projects and internal initiatives. Once again, timesheets will be valuable here. Ideally, you want to have a time tracking tool that allows people to tag different entries as, e.g., billable, non-billable, r&d, etc. Then, you can calculate the costs of various categories of projects based on your team members’ hourly rates.
A peek into a project costs report you can create with Teamdeck
As you can see, software houses can avoid many challenges by using the right tools and processes. A cloud-based app showing all of your resources and their current availability plus workload will create much value for your company. How should you approach the task of picking the right one from others available on the market? Let’s outline some tips for making the correct choice for your business.
Pick your business tools wisely
By now, you know that a robust resource scheduling and management tool may help you fix the problems your team is facing.
Mid-sized businesses need tools that propel their growth. Simultaneously, the apps you use should support your team’s process, not generate workarounds. Software development companies especially appreciate tools that are flexible enough to fit in their tech ecosystem. Platforms with powerful integration possibilities come in handy here. What are the other factors you should consider when picking your company’s next resource management software?
- Your budget, obviously. Many SaaS apps allow you to pay for the exact number of seats you need at the moment. Still, make sure that a given tool is mature enough to remain a great option as your tech business grows.
- Actionable reports. Being data-driven is extremely important when you want to optimize the operations of your software development business. Without access to real-time, precise data, you might be missing out on improvement opportunities.
- Customer support. Adopting a new business tool might be a lengthy and costly process. You will definitely benefit from choosing an app provider that offers onboarding services such as product tours for your employees or help with setting up the app. The cost of introducing a new tool in your tech ecosystem will be lower. Plus, your team will quickly learn how to create the most value using the new app.
Teamdeck, the resource management app we’ve built, ticks all of these boxes. If you struggle with similar challenges to the ones described above, this SaaS tool will provide optimal solutions. Many medium-sized businesses use it to successfully allocate their employees to different projects, track projects’ profitability, and maintain a transparent absence management system.
Sounds like something your software development business could benefit from? Register for free here.