Nowadays, there is no doubt that marketing is one of the most important foundations for a company to function in the market. In fact, without any marketing, your business would hardly be able to make money. Marketing...
Every software house is like a complex mechanism in which smooth processes depend on the interplay of individual elements – work planning, decision-making and resource management. The key to the most efficient operation of your business is therefore understanding how to handle supply and demand at a software house. In this article, we will outline the best ways to do this.
Supply and demand, or what your company has and needs
We know the concept of supply and demand primarily from economics. It’s the amount of a good that producers can supply to the market and the demand for it. However, in the internal context of every software house, it will be the resources like the number of employees, their capacity, budget, technologies, etc. As long as demand and supply remain in relative balance, everything moves forward. The software house meets deadlines and delivers new products to its clients, the budget allows for the realization of assumptions and development of the company, the employees are not tired... And this is how it should look in an ideal world. Unfortunately, it often happens that the demand for resources is greater than supply. And then the trouble starts.
The consequences of poor resource management
A bottleneck is a point at which a company’s productivity is hampered by a crisis blocking work progress and causing delays. For example, when there is too much work and not enough staff or when all decisions depend on one person. Bottlenecks are usually the result of a lack of needed resources for a process to be carried out. Although they happen in every company, they always result in a loss of productivity, so it is worth avoiding them. In this article, we discuss how to do this.
It’s a state where you want to do or get something, but you can’t. Nothing pleasant, right? Especially since frustration can also cause anger, lowered mood and aggression. You certainly don’t want that in your business. Being blocked from completing a task, finishing a project, resting, taking a holiday or meeting a deadline are common problems in software companies, regardless of size.
Competition for resources
Rivalry is good... in certain contexts. For example, when you’re competing against your competitors in a tender and you want to come up with the best offer that will sweep your potential client off their feet. Worse, when the competition is over resources that your company lacks. If employees are having to push each other over which project is more important and who should be supported it means that you should work on your company’s resource management.
Bad customer relations
Poor resource management causes many problems within the organisation, but it also affects the relationship with clients. When projects are delayed, the budget is exceeded and the team lacks the necessary elements to deliver the finished product, the customer is unhappy, which affects the reputation of the whole company.
Waste of time and money
In a software house, everything is interconnected. When you can’t finish a stage because you are short of people – the project starts to get delayed. When the project is delayed – you don’t get paid for it, and sometimes you even have to pay extra for exceeding the deadline. Without time and money, a company cannot function, so the insufficient supply of resources in a company creates a vicious circle of delays and losses.
A work plan usually assumes that everything will go according to plan. You base these assumptions on years of experience with similar projects. Of course, you also assume a certain margin of error for unforeseen accidents, but let’s be honest – usually work plans are not very careful because you want to complete the project as efficiently as possible. In this situation, any major crisis in resource availability means chaos. The plan gets out of control, the schedule gets disrupted, you have to prioritize projects, so some don’t get as much support as they should and generate further delays. And, of course, communication – when many things have to be changed on the fly and people are busy – it’s much easier for mistakes and misunderstandings.
How to handle supply and demand at a software house?
Well, now you know what the imbalance between supply and demand at a software house is. Now let us help you develop a strategy to improve your company’s resource management.
Information is power
Start by identifying the problem. Think about which aspects of your business are not working as they should. Maybe you have too few employees? Maybe meetings are taking up too much time and disrupting the schedule? Maybe the approval process takes forever? Sometimes the problem lies somewhere else than it first appears, so you need to take a thorough approach to your analysis. Take a look at your company’s processes, check them step by step and see at what stage problems arise.
Regular 1:1 meetings are also a good idea. Many employees feel uncomfortable when they have to come to their supervisor and talk about the difficulties they see. They don’t want to overstep their authority or be the ones to complain. It is also sometimes difficult to speak up in front of the whole team, especially if there are critical comments. 1:1 meetings are an invaluable opportunity to get feedback on different aspects of your business and to get the perspective you were not previously aware of.
You can also conduct an anonymous survey where you ask employees questions about areas of concern and get aggregated data on what can be improved.
Once you have analysed the most critical points in your software house, it is time to implement solutions and improve the management of demand and supply of resources.
Effective recruitment process.
The IT industry is now a very hot area of the market, which is connected with big money, rapid development, but also fierce competition. Companies are fighting not only for customers but also (or maybe above all?) for employees. And one of the most paralysing situations in a company is staff shortage. An experienced developer may even get several job offers a day, so make sure your recruitment process is as efficient as possible. Let your HR department be proactive. Don’t wait for candidates to find your company – tell them about it yourself, for example through direct messages on Linkedin. But make sure you don’t send too many messages – spam is the opposite of a good first impression.
Also, find out where developers are most likely to look for jobs. Linkedin continues to grow as the leading platform for connecting with candidates, but it’s also worth looking at other more niche job boards like GitHub, JustJoinIT, Stack Overflow, etc.
Marketing and good PR for your company is also an important part of the recruitment process. Candidates are much more likely to work at a place they have heard about and that has a good reputation. Participation in conferences, implementation of new technologies, experts from the company giving interviews – all this contributes to the image of the company, and a favourable image is a strong bargaining card for the HR department.
Working in a software house is demanding in itself, don’t make it even more difficult with inefficient processes. Developing effective practices in a company is a topic for several separate articles, but we will present here some key elements:
- Transparent project status – let everyone involved see clearly at what stage work is on a given project and whether alarming situations arise (delays, major errors, etc.) It is helpful to keep track of project status with a schedule, timetable and milestones.
- Implement an adequate work model – people are different, companies are different, so you cannot require that the workflow is the same for everyone. Find the solution that works best for you so that everyone can work comfortably and efficiently. Decide whether to develop the project in the waterfall or agile method, whether it is worth implementing a scrum sprint, how long it should last, whether to allow remote working and flexible working hours, etc.
- Optimal length and frequency of meetings – communication is important, of course, but if we communicated constantly, we wouldn’t have time to use the knowledge we gained. One common problem many companies have is meetings that are too long and too frequent. It’s not that it’s unpleasant to meet at google meets or in a conference room, see the faces of colleagues and talk about projects. The problem is that every meeting is a distraction that throws the employee out of their work rhythm. For someone in sales or HR – constant meetings and phone calls are a daily occurrence. However, creative and analytical work, such as a developer, graphic designer, copywriter, requires entering a state of highest concentration, when the employee is most effective. Long, frequent meetings are very distracting. To optimise work, try to communicate everything you need to as quickly as possible without losing quality. You will be surprised how many things can be done in a 15-minute call.
Setting up teams for specific skills
The skills of your employees are one of the most valuable resources you have. Each person you hire brings with them a set of competencies and valuable experience. The supply of skills, therefore, needs to be distributed so that it meets their demand on a project-by-project basis. Often, when the company seems to be short of people, the problem is actually the inefficient use of your employees’ capabilities. Describe all employees in terms of what they can do, and each project according to the skills needed. This will make it easier for you to create teams with the right mix of competencies to create each product most efficiently. Of course, you don’t have to do this by yourself – there are tools to help you create teams for each project.
Management of holidays
The holiday season is always a bottleneck in terms of your company’s capacity. Keep track of your employees’ holidays in a special calendar so that when you plan your work, you take into account that for a certain time, your team’s capacity will be reduced. To keep things running smoothly, make sure that in an employee’s absence his or her responsibilities (including decision-making on projects) have been assigned to someone else, all information has been passed on and everyone in the team knows what to do and will not have to interrupt a department colleague’s valuable rest.
Monitor working time and respond to inefficient projects or overly time-consuming tasks
Your company’s resources are too valuable to spend on unprofitable projects. Often, in the hustle and bustle of work, you can’t see which projects and tasks are taking up too much of your time and bringing in too little money. In such cases, it is worth using timesheets. Dedicated tools for reporting on your company’s working time will show you in a clear panel how much time each person and each team spends working for a given client, and which tasks are most engaging or blocking progress. With this knowledge you can react accordingly, for example by assigning additional support to the team, changing the work plan or renegotiating the contract.
Cooperation with partners
In your company description, it’s nice to boast that you do everything in-house. But... is it always worth it? When faced with staff shortages, overloading projects and overwhelming months, it’s worth enlisting the help of subcontractors and partners such as marketing agencies, production houses or design studios. Outsourcing certain tasks to an organisation is often a real lifesaver when faced with too much work and generate lower costs than delays and contract defaults.
Best resource-management tools
Sometimes there is no need to reinvent the wheel and do everything yourself – the market offers plenty of tools that can help you manage your resources and keep the supply and demand of your business under control. Below are a few of them.
This is a comprehensive work management tool for your organisation. With Teamdeck, you can easily fill in timesheets, arrange schedules, schedule meetings so that they don’t clash with each other, manage your employees’ holidays, set milestones and track their progress. Additionally, each activity monitored in Teamdeck allows you to generate a clear report where you can analyse team utilisation, project budget, employee payroll and absence. If you want to tailor Teamdeck to your individual needs, the tool offers you customisation and integration with other applications such as Slack or Podio.
Slack is one of the most popular communication tools in the technology industry. With Slack, you can easily and quickly contact anyone in your organisation. While email works great for external communication, providing documentation of conversations and findings, Slack is great for ongoing communication when you need to quickly confirm something, ask for something, or send something. A very convenient feature of Slack is also the creation of themed channels, for example by team, project or interest. The app can also be integrated with others so you can make it even easier to schedule meetings, check employee availability, manage holidays and fill out timesheets.
Another very popular work management tool is Asana. The main purpose of the application is to organise and assign tasks. In a clear panel in the form of a list, table or board, employees can see what tasks are assigned to them with a breakdown by stage. They can also easily prioritise them and check their progress. Asana also makes it possible to monitor campaign results, create a portfolio or collect inspiration.
Wrike is a tool to organise work and optimise results. Available tools (such as dashboards, workflows, request forms and more) can be customized for each team to meet their specific needs. Wrike also allows you to share information, documents and reports, create creative charts to show progress at each stage of work and gain full transparency of your processes.
Jira is one of the most common task management software in the IT industry. It allows to create clear roadmaps, assign tasks to appropriate departments and team members and create tasks for the future in the backlog. It allows working in the form of sprints, and the power of this application lies in its simplicity – a clear panel and no unnecessary functions.
Foundations of your software house
Your company’s resources are the foundation for the entire organisation, making everything work as it should, so managing them properly is the key to efficiency and growth. You need to know and understand the supply and demand of resources in your software house to always keep them in dynamic balance. We hope that our article will help you with this!