6 tips for Project Managers of building efficient teams in Chingu

Our Chingu Voyage project started on July 26th and now we’ve almost finished it without any incidents, our motivation is still very high and communication is nice. When Chance, Chingu’s Facilitator, asked me to write an article about my Project Manager experience I was extremely excited and while I was creating it I tried to prepare really useful material. So in this article I want to share my experience in building an efficient and highly motivated Chingu team. I hope it will be helpful for other Chingu Project Managers.

Tip 1: rules are important

You are a Project manager and your goal is to lead your team all the way to finish a project successfully. That’s why I think it’s very important before starting the work to work out a list of rules: code standards, stand-ups format and frequency (decide if you want to organize small stand-ups every day or slightly less often — 2–3 times a week) and put it in a rules list.

This list must not be very big also it’s always better to divide it into parts. As for me, I had a part about communication, parts about HTML/CSS/JS code standards and a part about working with git. It’s very comfortable to keep all these parts and lists in Trello or other tool like that because they can easily be lost in the chat.

This is our trello board with the project:

Here you can see a column with rules and code standards, columns with tasks for me and my team-mates and a column with finished tasks. In the rules column there are cards with common rules and code standards.

Let’s check common rules card, here it is:

And here is guide with HTML code rules:

With the help of these guides our code is unified, readable and easy-to-maintain.

Ask your team to follow the rules and follow the rules yourself. Discipline really helps to finish the project.

Tip 2: choose a project yourself

In some Chingu Voyage teams Project Managers decided to discuss project topic, features and design with their team-mates, but in my opinion the better way is to chose the project yourself: firstly, ask your team-mates to introduce their skills and then according to this information pick a project which will be challenging and interesting, but not extremely hard for them.

In our team the task was to build a landing page and I’ve picked a nice free design of a mobile app page which includes intermediate HTML&CSS elements and basic JavaScript elements — perfect for beginners. That’s why we started our Chingu Voyage project so fast — no long meetings, no attempts to create design ourselves, no agony of choosing best topic of landing, best design etc.

I strongly recommend to share project designs in zeplin.io, it’s free, comfortable and simple app which helps to share and use PSD/Sketch files without any additional problems like installing extra software etc.

Tip 3: no planned meetings

It’s a common situation when Chingu Voyage team-mates are from different time zones, have different daily schedules and I think it’s too complicated in such circumstances to plan any big meetings especially meetings in skype to discuss the project by voice.

As for me, I prefer small daily stand-ups system. In the end of the every day each team-mate answer 3 questions in our Slack channel:

What I worked on since the last update
What I’m working on next

My blockers and problems

That’s fully enough for the Project Manager to be on top of the situation: to check progress, to help team-mates if they need any help, and to know how everything is going. I think this system is nice enough to work with, so I recommend you to try it out: no big meetings, only small daily (or 2–3 times a week) stand-ups.

Tip 4: make to-do lists

I’m fan of to-do lists and check-lists that’s why I’ve tried to-do lists system in my team and now I’m happy with the result. In my opinion, it’s not enough to tell your team-mate: “Create the landing page header” or “build a slider according to the design”, so a big task may be scary and demotivate the developer, especially if he/she is a beginner.

In Trello you can add check-lists to your task cards and it’s really great: add a check-list to every big task card, add in it small tasks like “add a github branch”, “create basic structure of the block”, “add block header and CSS styles for it”. I put 7–10 small tasks to every big block and it helps my team not to forget anything and just build this block step by step.

This is example of check-list for one of the blocks on our landing page:

Nothing was forgotten or missed because of this to-do list and my team-mates know that if they complete a check-list they complete an alpha-version of the block. It’s really helpful for Project Manager and for the team.

Tip 5: make code-reviews

I make code reviews after completing every block of our landing page and I think it’s the perfect frequency of code-reviews in such projects. I don’t merge block branch in GitHub to master branch without detailed review with 1–2 rounds of fixes, that’s why my team has had big progress in these 2.5 weeks of our collaboration.

I don’t want to make their code 100% perfect and try not to add more than 2 rounds of fixes because it’s a bit demotivating to work and work and work with only one block without any big progress, so I stop when the code is good enough: when it’s readable, easy-maintainable and there are no useless styles/classes/tags in it.

All the fixes I put in additional check-lists on Trello with comments. In these comments I attach useful articles which can help to fix issues, also I explain why this or that piece of code is not semantically good or why these styles can cause big problems in future. In the beginning of our journey there were many bugs in the code, but now we have only 2–3 small issues in the block because of very fast level-up of my team-mates.

Tip 6: friendly and warm atmosphere is essential

The Project Manager’s duty is not only to keep discipline and improve the quality of the code, but also keep a nice, warm and motivating atmosphere in the Slack team channel. Don’t hesitate to use smiles and funny emojis/gifs, remind your team-mates that they are doing great work and that your team is making excellent progress. Don’t shame your team-mates because of their mistakes or level: Chingu is a place to study how to be a great developer. It’s OK here to be beginner, to make mistakes and to have troubles with hard parts of code and if Project Manager wants to keep high motivation in his team he/she must be nice and polite with his/her mates and to prevent every aggressive behaviour from team-mates to each other.

I hope this article will be helpful for other Chingu Project Managers to create more comfortable and convenient work environments, to make a more efficient project building process and to keep their team-mates highly motivated. Chingu Voyage is an amazing adventure and awesome team building experience. It’s funny, it’s inspiring and it’s extremely interesting to participate in as a developer or as Project Manager and the better organised the teams are, the more projects will be successfully completed (and the more fun and positive experiences everyone will get).