24 March, 2020
Hiring remote software companies for IT projects is not a rare experience anymore. According to research, the global outsourcing market in 2019 was worth 92.5 billion dollars. If you also consider the fact that in 2020 spending on IT services is expected to reach around 1.1 trillion dollars, you can see that the demand for outsourcing software development is only going to grow. That generates the issue to not only the clients but also project managers – how to manage a remote team? Luckily, with a little help from remote working tools, you can make the whole experience flawless.
Challenges you will face while managing a remote team
In my career as a Project Manager, I’ve seen many software development outsourcing scenarios. The main reasons include reducing costs with cheaper solutions from other countries (recently the hot topic is definitely outsourcing to Central and Eastern Europe) and local shortages of software developers that leave smaller companies with no other choice than to outsource.
However, companies are a bit concerned that working with a remote team imposes some challenges. I’m sure you have a lot of questions. Will you get the daily/weekly updates? How do you organise meetings, brainstorm ideas and communicate with your team when you have different working hours due to time zones. Can you control your teams’ productivity and performance? Do you need to go on a business trip to meet your team? Is managing remote team impossible, if you haven’t done this before?
Luckily, we live in the 21st century – internet access and proper remote working tools will be a blessing for your software outsourcing. I’m gonna show you that thanks to a few great solutions, you’ll be able to support remote work of your team no matter if you’re a project manager like me or a worried customer who will probably deal with IT managers and project managers (like me 😉).
Disclaimer: In this article, I’m going to recommend the solutions that project managers in The Software House have tried and tested ONLY. We use them in our daily routine with customers and can guarantee that they really work like a charm.
Instant messaging and quick day-to-day communication
In this category, the undisputed winner is Slack. For every new project in The Software House, we create at least three separate channels: for the development team, for the management and for all the people engaged in the project from TSH’s and the client’s side.
Additionally, in order to respect each other’s time, we always set up exact hours when every team member is available online. In one of our projects (because of the different time zones), a developer has been working between 7.00 – 13.00 and then 19.00 – 21.00 in order to inform the client what has been done during the day, answer their questions and receive suggestions for the next working day.
TIP: Try to set regular, mandatory meetings. From my experience, the best option is daily in the morning and a very quick “checkpoint” in the middle of the day. This way, you can keep track of what’s planned for the day and how the work is going.
Finally, I advise you to always check with your clients/vendors about how they feel about using certain tools. For example, we’ve already learned that Middle Eastern customers love using WhatsApp for quick messaging so of course as a Project Manager I’ve accommodated. Now, we always offer WhatsApp communication in emergency situations and Middle Eastern clients always appreciate that.
Scheduled video conferences
We have three preferred options here:
- Zoom – a high-quality video streaming tool. It’s the Middle East’s favourite but I started noticing that other countries are also switching to this solution.
- Google Hangouts – our second pick, loved by European countries.
- Slack video chat – we mostly use it in one-on-one calls when there’s something quick to communicate and you don’t want to exchange a thousand messages.
In The Software House, we bow to one and only Jira, which I like to call a “single-point-of-truth”. It’s such a complex swiss-army tool that it could get its own article. You can see the lists of tasks, create different sections, verify time, control productivity, write comments, attach files and pictures…
Every single person working on an app, clients included, can access and clearly see what’s happening in the project via dedicated project board. Tasks are sorted to a few categories: backlog, to do, in progress, ready for review, waiting/on hold, completed, and so on.
TIP: I can assure you that your clients will check Jira nonstop, so alert your developers straight away to update their work time on a daily basis. Later you’ll be able to see how many working hours were ”burned” and will be able to consult any necessary changes with your client straight away.
90% of the file exchange between The Software House and our clients happens via Google Drive and Google Documents. The rest is silence… I mean Confluence (mostly confidential notes and project documentation).
TIP: Remember that Google Drive allows you to grant permissions to given sections. Then, the client, developer or manager will see various files and folders, depending on what degree of initiation into the project a given user has.
Calendar and time management
Dear Project Managers and Product Owners! A well-kept calendar is your best friend – and I really can’t stress this enough. We picked the popular Google Calendar.
Create strict procedures and register everything in the calendar: working hours, all conferences, webinars, even the private ones. Why? If every single team member has access to everybody else’s calendar, they can adapt a call or a meeting accordingly. This way, it’s much easier to arrange meetings and you don’t waste precious time to reach everybody personally to schedule an event.
TIP: Calendars are also great for managing the time of developers. When you work remotely, people can suddenly disappear and you won’t know if their laptop died or they went for a lunch break or had to deal with some personal business. With a properly filled calendar, you can quickly establish that a developer is not responding because they have a call with a client (or anything else) and will be available again in 15 minutes.
As far as code management and cloud repositories are concerned, we’ve left that decision to developers. Depending on a project, they either use GitHub (open-sources and public files) or Bitbucket (private and confidential code).
💡 Read more: Dear developer, why does your Project Manager suck?
Bonus round: remember about security!
Since we’re talking about practical tips here, I’ll give you a final one – remember about security! Double authorisation, encrypted computers and permission management should be a standard in managing any remote team. I’ll give you two examples:
- Permissions/roles in the project will allow hiding confidential information from people who are not allowed to access them. Sometimes it’s better when clients don’t see developer’s trashy folders. And the other way round – developers probably don’t need to review deals and financial spreadsheets.
- Encrypting files (e.g. those money sheets) is a necessity when you send important data to your customers. My personal practice? I forward an encrypted .zip file with a password directly to the customer. However, the password is sent separately to their phones by a text message. Simple, yet hasn’t failed yet.
Responsibility is a key
When managing a remote team you need to remember that everybody needs to know the company’s procedures and stick to them. Be transparent, trust your developers but at the same time demand responsibility for their tasks. If everybody is engaged on the same level, your software outsourcing project will definitely be a success.
If you want to learn more about our procedures for software outsourcing management, check out our “How we work” section. Do you have other worries about software outsourcing? Check out our piece on how to prepare your team for remote software development.