Estimate your project





Message sent

Thank you!

Your message has been sent. We’ll get back to you in 24 hours.

Back to page
24 hours

We’ll get back to you in 24 hours

to address your needs as quick as possible.

Estimation

We’ll prepare an estimation of the project

describing the team compostition, timeline and costs.

Code Review

We’ll perform a free code review

if you already have an existing system or a part of it.

Our work was featured in:

Tech Crunch
Forbes
Business Insider

Why do you need the Project Manager in Agile?

It happens that CTO of the company which needs to outsource the project thinks that he’s capable of managing the project and the whole external team on his own. But is he? Recently, we’ve published an article on some tricks of a Project Manager to improve your work with developers. In the article below, I’ll try to present you the role of the Project Manager in Agile and will try to explain why actually you and your project need the experienced PM.

What is Agile?

Before I start with the role of Project Manager in Agile – it’s worth defining what exactly Agile is. Is it some kind of black magic which can help you manage the project very well? Or maybe the ancient guideline written down on a rock – with some tips on how to develop a product to meet the client’s requirements? Well… almost – but it’s not “that ancient” and definitely not written on a rock. Agile is A WAY to develop a product, not a method to manage a project. It’s about creating a product in short iterations, so-called “sprints”. This method is focused on delivering a few smaller parts of the product at a time, instead of trying to develop the whole application at once. Thanks to this, developers can react quickly to all the circumstances – such as business’ requirements or client’s comments – on a daily basis.

Project Manager in Agile is very important, and the scheme shows how Agile works
A simple scheme shows how Agile works (Source: mendix.com)

Then, why Agile cannot be considered a way of managing the project? Because most of the things – a starting point, some milestones, and the final goals, the budget and team members – are set in the very beginning of the project, before the actual software development starts. After that, nothing (besides, maybe, the team squad) should change, as the advertising campaign of the product is on. Therefore, you simply can’t change the core of the plan from sprint to sprint. So, why do you actually need the Project Manager in an Agile project?

I’ll start with what’s most familiar to me. What’s the role of the Project Manager in The Software House? In fact, in TSH, PMs are responsible for being: Scrum Master, Product Owner, Sales Specialist and Sponsor/Account Manager. In the article, I’ll focus on the first two roles – Scrum Master and Product Owner – in relation to Agile.

Project Manager vs. Scrum Master and Product Owner

Let’s start with defining what Scrum Master and Product Owner mean. The first is not the martial arts master. It’s a person who works close to the team and tries to teach them how to operate in Scrum. Even though normally he cares about a team, Scrum Master doesn’t have a direct impact on the final product. Product Owner is the opposite of Scrum Master – a person who doesn’t work close to the team but has the biggest impact on the final product. He has to write down a backlog and talk to the stakeholders about a project’s future.

So, you know what are the duties of Product Owner and Scrum Master and the differences between them. Now, let’s talk about the Project Manager – where’s a place for him in a project? First and foremost, he needs to manage a team in a way to deliver the best product possible. Also, it’s his role to make sure stakeholders are happy with the final results. In other words – PM is playing a role of both the Scrum Master and the Product Owner. However, sometimes, he needs to do even more. It happens that the PM is managing the project budget and the development process to make sure everything is delivered before the deadline.

Why do you need PM in Agile?

Majority of our clients decide to hire a full team for their projects. They want the team to develop a project in line with their requirements. But the team normally needs the mentor – a person who can supervise a project to make sure it’s progressing swiftly. His task is to take the role of the Product Owner to write down a proper backlog. Personally, I recommend doing it with the team, it can make the backlog clear and the team can prepare better. Sometimes, PM needs to become Scrum Master to supervise the work progress. He needs to analyse the process and implement changes to make people feel comfortable and the project more efficient.  

PM is responsible for pleasing clients and for overcoming all the obstacles throughout the project.

As one person works close to the team and makes sure that the client is satisfied, you can avoid a major issue of the relationship – communication. It’s important for the PM to update both the team and the client about all the changes. If you have any communication issues in your team, the whole project will go wrong.

Does PM need technical skills?

It’s not necessary, but definitely good for the PM to have some technical skills. Especially if they’re taking part in the meetings during which developers are talking to each other using the tech jargon so the PM doesn’t understand a single word. Here’s a list of the main skill every PM should have according to PMI:

  • leadership,
  • team building,
  • motivation,
  • communication,
  • influencing,
  • decision making,
  • political and cultural awareness,
  • negotiation,
  • trust building,
  • conflict management,
  • coaching.

Summary

So, is there really a need for Project Manager in Agile? The answer is: definitely. But it’s very important to set their responsibilities clearly. Also, it’s crucial to make sure that PM’s duties are set accordingly to the project requirements and not the other way round. (The same goes for the tools – you should choose those which can help you with achieving the business goals; never adapt the whole project to your tool set.) Merging a few positions, which is the essence of being the Project Manager, is a good thing, but it’s also necessary to remember that sometimes taking over too many tasks can lead to some serious problems. However, if you happen to find an experienced Project Manager, he may be the key to your project’s success. 

5 secrets of a Project Manager to improve your work with developers

Being a team leader in the software business ain’t easy. You’re having a hard time with your new team or you’ve reached a hopeless stagnation in a project? The solution may be easier than you think! Below, I’m presenting 5 simple tips which I – as a Project Manager – have used to improve my work with developers. However, the tips are pretty universal so feel free to use them whether you’re a Product Manager, Scrum Master or any kind of team leader.

1. Get into their personal space

First of all, every respectful manager should know their team. However, it doesn’t apply only to strictly professional issues. It may not be obvious, but talking about personal matters is also helpful. The closer you get to their personal space, the more people talk. And the more they talk, the better understanding of their logical processes you gain.

While, of course, you don’t want to get into the details of their private life, there still remain lots of possible subjects. You can chat about trivia or their hobbies. You can ask how they’ve spent the last weekend, what sports team they support, which video game they’ve recently played and so on. Give yourself around 5-10 minutes every morning, go to the team’s room or a kitchen and socialise with them.

If you’re natural and cool enough, a few weeks later, developers should accost you on their own.

Thanks to that, you not only improve your everyday relations.  After some time, you’ll also have a broader overview of some professional aspects. For example, you’ll know which developers aren’t fully available, because of a stressful week or some personal issues.

Socialising with the team will help you improve your work with developers
Socialising with co-workers often brings a variety of benefits

 

2. Know their strengths and weaknesses

Another tip is slightly connected with the first point on our list. As the team leader, you have to remember that you’ve got highly-skilled specialists in the team. Frontend developers, backend developers, testers, designers, DevOps specialists… Everyone’s got their own area of expertise. And, obviously, they have better knowledge in this matter than you do. Take advantage of it! During the daily kitchen talks, which we’ve mentioned before, the team will be very glad to share with you their favourite languages, frameworks, tools etc.

You should know what your workmates like doing and what not, which technologies they feel confident to work with and which not so much.

It has a great value from the management perspective. For example, you can use the knowledge and relocate the team members between the projects so they can be more satisfied. In return, your client would have the most efficient team available. It’s, therefore, a win-win situation. It can be especially helpful in the early stages of the project – when it’s time to plan the very basics. If it’s possible, the team will try to work using their favourite technologies and tools. Therefore, we should know what these are and how to present them to the client in an attractive way.

Cooperation is a key to achieve great results
Knowing the strengths and weaknesses of your team is always helpful

 

3. Keep the backlog clear and the team updated

As a project manager, you shouldn’t be afraid of getting your hands dirty with more technical work. Let’s take Jira (or any similar project management tool). We all know that maintaining the Jira’s backlog is a problematic issue, as its UX is certainly not the best one available. Nonetheless, you should treat it as a necessary evil – all the labels, estimations or precise descriptions simply have to be there. Otherwise, everyone’s mad: starting from stakeholders, ending with the developers. Therefore, just grit your teeth and get things done.

Trust me: maintaining the backlog on a daily basis is the easiest way to show your involvement in the project.

Developers’ thoughts are like: “oh, they’re filling up all the features with requirements from our hard-to-communicate client. They probably know the job and they’re truly committed to it. I want to work with them!”. Programmers know and see more than you think and they’re building their opinion about you basing mainly on the everyday issues. So, next time you’re having a hard time with finishing another difficult task, think about all the glory coming from a clear, understandable and updated backlog.

Getting things done and keeping the team updated is crucial when you work with developers
It’s worth remembering to keep the backlog clean

 

4. Protect the team

Let’s be honest: developers are not the most sociable group. That’s why they’ve got you, the project manager. So, for example, when the client’s angry with the team, you should take the spear in your chest. Of course, act reasonably and be responsible. If the fault is really on the developers’ side, try to explain to the client what’s the reason behind it and what can be done to prevent these situations from happening in the future.


And if you can take advantage of the things mentioned in the previous points, you should have all the cards up your sleeve. You can protect your team by using the notes from Jira, technical arguments, information from emails etc. Basically anything you may find helpful and what could potentially take your team out of the complicated situation.

Also, always try to speak first whenever you notice that your team members are stressed out.

It’s better to talk about something in the next few hours and clear all of the misunderstandings within the team rather than suggest to the client that no one knows what’s going on in the project. Especially, if the lack of knowledge is not the case. Let’s be honest: most of the time, the developers know exactly what’s going on; sometimes, they simply don’t know to explain it in words.

A good team leader should remember to work with the team on the daily basis
Simply WORKING WITH the team – on a daily basis – empowers great results

5. Work with them

Last but definitely not least, you should work with your people as often as you can. You can’t forget, regarding your manager position, that you’re a fully-fledged member of the team, with all the responsibilities coming with it.

Your commitment is mostly about continuous improvement – regarding the internal communication, the communication with the client, the Jira’s board and the technical condition of the app.

It’s a long process and the fruits of labour normally come with time but it’s worth it. And all of the mentioned basics make developers see how devoted you are.

Conclusion

Summing it up, respect among the team members and your devotion are crucial for the strong relationship within the team. Acting accordingly to the tips above may significantly improve cooperation and lead to better results. You have, therefore, nothing to lose and plenty to gain. So why not start introducing the changes right now?