Table of Contents

Book Info

Introduction

Management

• How to Start a Successful IT Project: a No-Stress Roadmap

• 7 Outdated Project Management Practices You Need To Abolish Now

• Time Saving Hacks (Not Only) for Better Project Management

• After Action Review. Does a failure always mean we failed?

Processes

• 3 Ways to Plan IT Projects (Tried and Tested by Netguru)

• How Scoping Sessions Can Help a Client Launch a Better Product

• How Iteration Retrospectives Can Improve Your Work

• Estimation Myths Debunked!

Communication

• Communication with Clients: Top Secret Cheat Sheet

• 5 Communication Tactics For Building Great Web Applications

• Avoiding Common Mistakes in Workplace Communication

• What Wikipedia Won’t Tell you About Calls with Clients

Motivation

• 5 Ways (and 13 Apps) to Help You Fight Off Procrastination

• How To Demotivate Your Team Members

• How to Motivate Your Team: Naked Facts and Surefire Tips

• Guide to Giving Effective Feedback

Editor: ALEKSANDRA PREJS

Authors: AGNIESZKA AMBORSKA, AMELIA RUBIŚ, ELŻBIETA DURKA, KATARZYNA KRAMNIK, KINGA HANKIEWICZ, JOANNA KNAP, PAULINA TOMASZEWSKA, CHRIS MEIER, BASTIAAN REPETSKI, JOHN WALDRON, SZYMON KRYWULT

Design: BARTOSZ BĄK

Technical consultation: Netguru PM Team

Ebook made by: eLitera s.c.

Introduction

It’s quite obvious that electronics and IT are all around us – behind every computing device there’s software that runs it. End users may have the impression that building an IT product happens like magic. Every project manager (including yourself) knows, however, that instead of doing magic you have deadlines to meet, a budget to stick to and a team of various individuals to motivate and cooperate with. Quite a challenge, isn’t it? If you’re looking for ways to make your professional life easier and happier - you’re in the right place.

Over the 8 years of our activity in software development – having delivered more than 150 projects – we’ve learned our lessons and we truly believe you can learn from our successes and mistakes. That is the very reason this ebook was created. Below, you’ll find tips and solutions on such topics as:

• Management,

• Processes,

• Communication,

• Motivation.

Enjoy your read and learn methods, strategies and tricks that will help you get your job done on time, within the budget and without stress. Let’s get started!

Aleksandra Prejs

Content Marketing Specialist, Netguru

How to Start a Successful IT Project:
a No-Stress Roadmap

Starting a new IT project can be stressful for your client. Yet it doesn’t need to be stressful at all, provided that you focus on communication and good project organization. Here’s how to launch a successful project and avoid unnecessary fuss and stress.

Phase 1: Aligning the client’s vision with the dev team’s plan

Before any development work begins, you need to make sure that everyone is working towards the same goal and that they share the same vision of the project. Careful and thorough planning is vital. Everyone must understand the overall purpose of the product, the features it requires and the initial project goals.

The most important things to be established during the initial stages of the planning:

• Who the user and client personas are: The development team need to understand exactly who will be using the final product.

• What need the product will satisfy: Ask the client to provide you with any market research relevant to the project to help the team understand the purpose of the product.

• How the end product will meet the client’s needs: Each member of the project team can bring their own ideas to the table so that they become active participants in the idea formation.

• SWOT analysis: What are the strengths, weaknesses, opportunities and threats to the project? Who are the competitors? How will the product improve?

• The available budget: Aim to create the best deal for the client taking into account the maximum amount they can spend on the project.

• Time constraints: When will the client expect the final product to be completed? Do the development team consider that realistic? Are they able to deliver it within the proposed time frame?

Phase 2: Drawing up a software requirements specification (SRS)

The goal of an SRS is to assist in the creation of great software.

The SRS should cover the following aspects:

• What the software is required to do.

• How the external interfaces of the software function.

• The expected performance of the software.

• A list of the product’s features.

• Attributes: security, maintainability and portability considerations.

• Constraints: whether or not there are any required standards, database integrity policies, limits on resources etc.

A good SRS will be an excellent resource for the dev team, as it will establish a common ground between the developer and the client before the work even begins. It will form the basis for the forecasting of costs and timelines, and considerably reduce the amount of work needed to complete the development.

Phase 3: Giving and receiving feedback (by the client)

Before the project can progress any further, you must discuss the project specifications with all who are involved on the client’s part. By taking the time to do this now, you can save many hours in the future – you’ll prevent the development team from starting off in the wrong direction or forgetting to include an essential functionality of the programme.

Phase 4: An interview with the project manager (PM)

The project is now moving closer and closer to getting underway. Before this happens, it’s important that you have a meeting with the client to dispel any doubts that they still have with regards to communications and processes.

Here are the 10 most important questions from a client that every project manager should answer before a new IT project gets underway:

1. How should I communicate my ideas?

2. Which communication tools are we using?

3. What is the structure of the communication flow?

4. What type of process model will be used?

5. How will the workflow be managed and how will we be alerted if we fall behind schedule or if unforeseen problems arise?

6. Who is responsible for the project?

7. Can all of my requirements be met?

8. How are project priorities translated into iterations, estimations and processes?

9. How will the final product be distributed?

10. How can I support you throughout the development process?

You also need to ask your client a few questions in order to ensure that some requirements will be/have been fulfilled:

1. Does the client have their own servers already?

2. Does the client have any preferred delivery or deployment tools?

3. Does the client have a technical person on their side, e.g. a CTO (chief technical officer)?

Phase 5: Preparing for the kick-off meeting

A kick-off meeting is always held prior to the start of a project. The developers’ team will need to have the following ready before the meeting:

• Information on whether the team will be conducting all the work themselves or whether they will be sharing it with another team.

• All communication channels up and running. Try a combination of daily email updates, weekly calls, and various project management apps and tools.

• A first draft of the app architecture, which will be consulted with the client during the kick-off meeting or during the first days of collaboration at the latest.

Phase 6: The kick-off meeting

The final stage before development begins is the kick-off meeting. Here’s what you should cover during such a meeting:

• Introduce the team and outline all roles: the developer(s) in charge of coding; the QA team in charge of testing the software and reporting bugs; yourself as the project manager in charge of planning and communication with the client.

• Ask the client how they plan to monetise the application.

• Discuss the initial drafts of the app architecture and make changes where necessary.

• Outline the communication tools for all team members and the client.

• Set up a staging server to which the client and relevant team members will be granted access. Ask the client if they have a production server. If not, then the development team should provide one.

Phase 7: Go!

Everything should now be in place for the work to begin. During the initial stages of collaboration, you need to set milestones with iterations laid out that all devs will consistently follow. Everyone will now have a clearer idea whether or not they have all the materials and information they require to complete the project. If anything turns out to be unavailable, it should be sorted out now so that everything is ready when it is needed.

7 Outdated Project Management Practices You Need To Abolish Now

In the age of Agile adapting, introducing new methods and improving old ones in response to problems is essential. Outdated project management tactics do nothing but demotivate team members and cause disruptions and delays to an otherwise promising project.

Over planning

Dev teams don’t need to be tied to the drawing room for weeks before they start coding – they just need to start coding. The work philosophies are changing so fast that planning for even 2 months ahead can prove to be futile. Try to do the planning in small segments – perhaps just from week to week.

Too rigid scope

Following on from the last point, too rigid project and/or product scopes can be detrimental to a project. When starting a project, nobody knows for certain what they will need three, four or ten iterations down the line. Sufficient flexibility of the product scope is the only way to ensure the delivery of a well-designed, great product. We need the flexibility to prepare for all the unexpected events that will crop up along the way and to be able to adapt as they come.

Continuous risk management

Continuous risk management can also be seen as a kind of overplanning. It’s impossible to account for all possible risks, as these will continuously change in line with changes in the Agile plan and scope.

Micromanagement

One of the most demotivating habits of over-enthusiastic PMs is their need to micromanage every single element of a project. Inevitably, such PMs will have effectively no control over anything other than a bunch of highly stressed employees who will be much more prone to making mistakes as a consequence.

Relying only on verbal communication

When a team relies only on verbal communication to stay organized, the flow very quickly becomes muddled and forgotten. By writing things down, all team members are able to keep in touch with the workflow, trace back what has already been achieved and what they need to prepare for.

Lack of order in documentation

Once you’ve developed coherent written communication channels you must be aware that they will be truly useful only if you keep record of all communications. Once recorded, communications must be stored in a place which all team members can easily get access to.

A fixed mind-set instead of a growth mindset

Development teams need to adopt a growth mindset, be willing to learn new things and thus grow, progress and evolve.

Time Saving Hacks (Not Only) for Better Project Management

Time management is one of the most obvious and... most dreaded elements of every project. Sticking to your schedule in the face of unexpected events may seem like a dream that will never come true. Fear not: where there’s a will, there’s a way!

Real-time vs asynchronous communication

Multitasking is a real pain in the neck: if you stop working on one task to do something else, your productivity plummets. Interruptions of this sort dramatically increase the time you need to spend on a given task. It doesn’t matter how many projects you start if you finish none in the end.

But let’s get out of the multitasking box and look at things from a different angle. The workflow of project managers differs in many respects from that of developers. While devs usually work on one project, PMs have to deal with many at a time. Replying within 30-60 minutes in a regular workflow won’t kill your productivity. This also applies to live chats.

Notifications vs real-time communication

If you switch off during a meeting to check a notification, you will lose focus. It would be just as if you started working on a different task before completing the previous one and you would also distract all the other people at the meeting. When at meetings, leave notifications on for the most important events and only for those. If you’re having a storm in your project and everyone’s suddenly on the line, you’re excused. Be careful about what you call a storm, though.

Solution? Iterations!

Plan your day in short segments and stick to the time limits you establish. Of course, you can make an exception for issues that urgently need your attention. Here’s an example:

• 20 minutes for real-time communication/Slack,

• 40 minutes for weekly summary preparation,

• [other tasks on your to-do list, broken down into daily steps]

If you prefer to focus your iterations on different projects, you might find the following method more efficient. The basic rule is: 1 hour (or any other amount of time) for every project. Don’t extend that timeframe unless really necessary and don’t cut it short either. Spend it on real-time communication, planning, writing and answering emails – anything related to the project you’re working on. Next, switch projects. It’s as simple as that.

No matter which sort of iterations you prefer, don’t forget to communicate with other project members. Stay in touch with your team and your client – let them know that you’re busy working on something complex and say when you’ll be available to talk again (30-60 minutes, preferably).

Calendar: Communication and planning 2-in-1

Step 1: The easy part.

Set placeholders for recurrent tasks (e.g. executive summaries and time sheets, weekly summaries, application tests, etc.). This will help you stick to the plan and actually find the time for scheduled tasks. Also, it helps communicate with others when you have the whole agenda in front of your eyes.

Step 2: The harder part.

Make people remember and understand that they can check your availability in the calendar. Don’t be afraid to point out that “busy” means “really busy” to you and you don’t want to be disturbed then. By the way, naming your tasks clearly will make the calendar more comprehensible to those who view it.

How to save even more time?

• Create a plan for the next day. Before you finish work, it’s a good idea to decide what you are going to do the next day. Set tasks, priorities and most importantly, make a list of the things you are just getting started with.

• Use your resources wisely and think ahead. If you can do something in advance, do it! When you’re planning your iterations for the next week, but also have a chance to list some issues for the next three weeks, organise these as well while you still have time and make a note of the context of these tasks.

• Make calls. Text chat is always convenient, but sometimes it’s a lot easier and quicker to talk than to type. Apart from regular calls, you can always set up an extra call to explain something, discuss an issue or find out about something important.

• Keep breaks between your calls and meetings. We get it, the client is important, but a 20-minute delay it will take you to get your thoughts together and have a breather probably won’t completely wreck their schedule.

After Action Review. Does a failure always mean we failed?

We are all but human and sometimes we fail. That’s a fact. On the other hand, as long as we are able to learn from our failures, we are never defeated. The first step is to admit failure. Then we should analyse why we failed and remember what we actually did well. Our successes are just as important as the mistakes we make.

Have a look at our recipe for handling failure. If anything goes wrong, we always have a meeting with the entire project team and discuss four crucial points:

1. What did we want to achieve?

2. What did we do well?

3. What could we have done better?

4. What should we do in the future to avoid failure?

These (not so simple) questions are better known as AAR – After Action Review. AAR is a standard tool for managing failure in the Kaizen framework.

What does it look like in detail? Let’s take a look at a simple example.

One of the clients had been expecting large traffic to their application during the weekend, but sadly we received the information about at the last minute. As a result, instead of adding more capacity, we only managed to set up a page with an announcement about the server overload. The weekend passed and luckily nothing went wrong, but it certainly could have. We decided not to focus on the happy ending, but to treat the scenario as a risk instead.

Q: What did we do well?

A: Our developers’ reactions were quick, smart and the most adequate in those circumstances.

Q: What could have been done better?

A: We could have been informed earlier.

Q: What can we do in order to avoid such situation in future?

A: Firstly, we should explain to our client that it is vital that they inform us about such events, even if they find them insignificant. Secondly, we could suggest that the client upgrades the server.

Q: What did we achieve?

A: The next time the client will let us know earlier when they need server improvements.

3 Ways to Plan IT Projects (Tried and Tested by Netguru)

When starting a greenfield project it is often necessary to establish two elements: a timeline and a budget. You can do both using one of the below approaches to creating an MVP.

One-size-fits-all

Based on our experience we can say that the average time to develop a working product (not the final version yet) is around 2-3 months with 2 developers onboard. After the launch, real users test the product and their feedback may necessitate some further work and fine-tuning.

• Pros: on average, this is the minimum time commitment that you can expect for most projects.

• Cons: this approach does not allow for any customisation; it may also be inadequate for more challenging and unusual projects.

Estimation

Does the client have a clear idea of what they want to create? The client might already have some designs, a list of functionalities or even some user stories, but they might still be unsure how to implement these. In such case, you should have a look at all the available information and come up with a rough estimate with the help of your developers.

• Pros: an estimation can give you an approximate timeline, depending on the amount of details provided.

• Cons: the estimate is only an approximation, based on all the functionalities described in your materials, so it covers a fully working product rather than an MVP.

Scoping sessions

Scoping sessions are meetings organized with the client to answer all the questions listed above regarding project planning, time estimation, budgeting, etc. You will read more about them in the next chapter.

• Pros: finally, you will receive a precise time and budget estimation, user stories list available for you and your investors and a road map showing how to complete your project efficiently.

• Cons: the plans can change after receiving feedback from experienced professionals.

How Scoping Sessions Can Help a Client Launch a Better Product

Imagine the following situation: you’ve come up with a great idea for a startup. You want to go ahead with it, but some questions remain. Where do we start? How long will it take? How much will it all cost? These are probably the most common questions all potential clients ask themselves. Scoping sessions can be used to tackle all these problems. A scoping session is a tailor-made estimation, which can be done with or without materials, but the format may vary.

Scoping sessions without materials

The basic rule is to think of as many questions as possible to ask your clients. Dozens of questions! As the leader of the team, you should ask about:

• the clients’ ideas,

• the name of the application,

• the application type: is it going to be a web or mobile application, or maybe both?

...and much more.

Scoping session with materials prepared by the prospective customer

How hard can it be when you have everything handed on a plate? Well, sometimes it’s even harder than scoping sessions without any materials! How come? The client’s vision is crystal clear only in their own mind – explaining it to others usually comes as a challenge. Make sure that the client:

• Knows who the potential users are

• Has a clear flow in mind

• Understands the user stories you sent to them

What are the next steps?

Since you chair the session as the project manager, it’s your responsibility to review everything and add details to a project management tool in the form of user stories to cover the MVP stage.

Next, you organize a session meeting for the client and the project. It usually takes around 2-3 hours and during that time you set priorities, explain any areas that may be unclear and give recommendations or suggest solutions for any possible problems. Finally, estimate all the tasks and draft an MVP including goals and milestones.

After the scoping session, the clients will take home a solid development plan and a recommendation of how to complete the project in the most effective way. Additionally, all notes and user stories will become their property and can be made available to investors, stakeholders and the team. The more thoroughly you plan the process in advance, the fewer complications you encounter later on.

How Iteration Retrospectives Can Improve Your Work

Iteration Retrospectives are short internal meetings held at the end of an iteration, preferably before the next one starts. During an IR, the project team members moderated by the project manager assess how the last iteration went. Great, but what’s in it for you?

Complex feedback on an iteration

The ultimate aim of an IR is to identify things that negatively influenced the team’s workflow the previous week (e.g. overestimated task(s), poor organization, blockers, etc.). Simply bring to the table anything that bothered you or disrupted your workflow. Next, discuss how you could eliminate these problems in order to improve the team’s workflow and future performance.

Proposed questions & survey templates

OK, but how do we elicit this sort of information from each team member? The four simple questions below should help you initiate and stimulate the discussion:

• How was the iteration? Rate it on a scale from 1 to 5: 1 being the lowest and 5 the highest (Make your choice based on your overall subjective feeling)

• What went well? (mention even the smallest successes!)

• What didn’t go well?

• What actions can we take to improve our process going forward?

In order to automate collecting feedback from your team members, try using a short feedback survey (maximum 5 minutes). Send it to your team members 1-2 hours before the meeting so that they have ample time to respond. The privacy that a questionnaire gives will make many people more willing to share their insights about the last iteration! Check with your team whether they prefer a discussion only or an initial survey and then a discussion.

IR follow-up

It is crucial to monitor and check whether actions taken on the basis of an IR have actually been implemented and if they are delivering the desired results. Be open to the team’s opinions and feedback regarding the new initiatives. Do not hesitate to organize a quick team follow-up after a week (perhaps even merge it with the next IR session) in order to see if ideas generated during the last IR have actually worked out.

Frequency of iteration retrospectives

Generally, it’s a good idea to do an IR after every iteration, but don’t think you always have to do it. If you think that an IR will not bring any added value, just skip it and wait until you have enough things to discuss. You may notice that retrospectives become shorter and shorter as the team gets used to discussing and resolving the issues regularly. You’ll be surprised how eager the team will be to share their workflow insights and feedback with you. Just create a 15 minute “space” for them to talk and you’ll be able to identify many strong and weak points in the team’s workflow. Iteration Retrospective is a powerful tool, so use it wisely!

Estimation Myths Debunked!

What is an estimation?

By definition, estimation is a guess. Still, you can take appropriate steps to ensure that it is at a well-informed guess. Let’s learn how to do it better.

First things first: who should do the job? No, not your client. And no, not a developer who isn’t working on your project. No, not the project manager either.

The people who can do it right are yourself and your project mates, since you’re the ones who will actually be involved in the implementation of whatever it is you’re sweating over.

Do your homework to better understand the feature / app you will be developing:

• Do the research – carefully read the brief/specification of the functionality.

• Ask your client PM and UX questions.

• Research, research and research again. You will definitely find out something that will help you pinpoint potential issues and find ways to tackle them.

• Know what you want to use – choose the most adequate solutions, tools, gems etc.

• Ask around – your colleagues are a stellar source of knowledge; a question posted on your company chat will spark lots of intelligent insights.

With the above in mind, never try to estimate unexpected things during a call with your client – ask for some time to do your research instead. Even the easiest things can turn out to be monstrous.

How to estimate a feature?

Keep in mind what the estimation of a feature actually involves:

feature = planning + actual work + tests + code review

Include the time you need to do this in the initial feature estimation. If you don’t do it, you’re likely to end up underestimating it. Well, we all have situations when we are not 100% sure about something – a number of unpredicted variables will emerge during a project. Call it risk management and add some padding! You never know what the future will bring!

A short checklist to remember:

DOs

• Make a list of requirements (ping PM/client if needed) and do your research (mockups, APIs, edge cases...)

• Ask when in doubt and explain when something’s amiss

• There is always room to fail and for things to go wrong: add padding

• Track elapsed time and learn from past experiences

• Ask around: check with others / the Internet / seniors / PM

• Use more than one method to arrive at an estimate and strike a happy medium.

DON’Ts

• Never estimate during a call!

• Don’t let someone else do the estimation for you

• Don’t estimate unless you’re sure you have all the information you need

• Always predict the worst-case scenario

Bugs. To estimate or not to estimate?

Ok, we have the features covered. What about bugs? How do you estimate them? The answer is: you don’t. Just DON’T. Bugs and new tasks always crop up over time and while they are part and parcel of your project, they can drag down the business-valued output. In addition, if they need to be fixed, a developer will have to dig deep into the code to find the problem.

If you really have to estimate a bug, you need to emphasize that it’s a bug and the initial estimation can change dramatically. It’s also really important to track progress and admit it if your guess was wrong – it’s always helpful for all parties to get an explanation why it’s taking more time.

Failures in estimating sometimes happen. What causes them?

1. Unknown issues that are difficult or impossible to anticipate and sometimes even more difficult to resolve.

2. Our idealistic views of our own capabilities. We frequently believe that we can achieve much more than is possible given the available time.

3. The strong human desire to please other people by telling them what they want to hear. (After all, who wants to bring bad news?)

Sit down and review estimations with your team during the retrospective. Finally, confront it with your initial estimation – you’ll learn a lot. The more of these exercises you do, the better your estimations will be in the future.

Communication with Clients: Top Secret Cheat Sheet

You can deliver the world’s greatest code, but communication problems can potentially ruin any cooperation. As a project manager, you must learn when you need to step in and get involved in a project and when to keep away.

How it starts

Most project managers will know the following scenario very well: you are assigned to a new project, you get your team together, you plan tasks, have all deadlines scheduled, everyone is excited and can’t wait to start working (adventure time!). At last, the prep work is finished and now all you need to do is wait for some feedback from the client... and this is when the problems begin.

Possible reasons for communication issues:

• Different backgrounds and communication methods

• Different definitions of “done”

• No timely feedback from clients and team members

• Inefficient communication flow: things getting lost in translation

• Too much information from the client and too little time to analyze it

• Technical issues and different levels of technical fluency

• Differences in personality: we are only human – we don’t always like each other

Types of clients and their characteristics:

Type 1: “I don’t know how it works but let me teach you anyway”:

• always know better

• don’t like your ideas

• their ideas are the best

• interrupt constantly

• send 1000 messages a day

• change their mind a lot and expect you to deliver iterations on time.

Type 2: “I don’t know much, I like everything”:

Subtype 1. Quiet:

• don’t say much during meetings

• don’t ask many questions

• don’t reply to emails

• afraid to talk

Subtype 2. Tell me more:

• ask tons of questions but don’t understand the answers

• don’t really like the results, but only give feedback when it’s too late!

Type 3: “I’m from IT”:

• very technical

• do programming themselves or know a lot about it

• expect similar knowledge from the PM (dev-alike background)

Type 4: “I know how to do it, you know how to do it, we both know so let’s do it like that. Or not...”:

• have plenty of ideas, but like your ideas too

• thinks their solutions are better... but not necessarily... maybe yours are better after all...

• don’t know what their feedback is

Type 5: “This project will SAVE the galaxy. It’s OUR life”:

• your life depends on it

• there is nothing else you should do 24/7

• you, as the PM, should be available on all communication channels, all the time...

Type 6: “I’m the boss. I know better. PM is my PA”:

• don’t want to listen to any suggestions

• give orders

• don’t want feedback

• don’t care about iterations much (unless they change it)

• expect a thousand updates a day (call me, call me, mail me)

Sounds like too much a single project manager can cope with, doesn’t it? But it’s not always the client who makes communication tough. Both parties make mistakes.

What can you do to make it better?

• Get to know something about your client. Talk with clients, learn their language, show them that you want to know them better. This will help you understand their motivation, their fears and their expectations. Spending a few extra minutes during a call won’t hurt either!

• Get involved. Show that you’re invested in the project, that this is not “yet another project” in line. It may be so for you, but the clients DON’T need to know this. They need to feel that each time they talk to you, you are 100% at their disposal.

• Listen carefully and ask questions. You schedule calls, make checklists, take notes, write summaries, set tasks... Still, you have to remember to ask questions on top of it. Thus, you will understand your client better, especially when they are the technical type.

• Remember to have everything in writing. It is extremely important to keep record of everything you have ever discussed with your client. Don’t let yourself become overwhelmed by too many ideas and arguments. Keep all agreements, requirements and anything that the client has ever communicated to you. It’s a good idea to send daily or weekly summaries to your client.

• Teach your clients. You are the project manager and you should be the expert. This is what your clients want to see. They have to know you’re the best person for the job. Be there to advise them, show them another perspective, think outside the box.

• Don’t overdo it. You have to strike a balance between taking your team’s perspective and representing the client. Take responsibility for your team, but don’t be overprotective when you see that something is going wrong. At the same time, have the courage to stand up and say “no” to your clients when you notice that some of their ideas can potentially harm the project.

At the end of the day, one of the most important roles of a project manager is to strengthen the relationships with clients. This translates into making effort to get to know your clients, being open to their ideas and trying to understand their perspective. If they know your work philosophy, it is a lot easier to create a customer-manager dream team.

5 Communication Tactics For Building Great Web Applications

When working in a remote team, you can easily get lost in the jungle of emails, chats, calls and instant messages. The five hacks below will help you keep all your communications neat and tidy and avoid unnecessary clutter.

Weekly calls

At a weekly call, you brief the client about what has been accomplished throughout the week. It’s a perfect opportunity to get feedback on the working features and then plan the iteration for the following week. Make sure you dispel any doubts about the tasks and put the details into the project management tool! After the call, send a summary to everyone involved in the project.

Email and Slack communication

Apart from weekly calls, we use emails and/or Slack to communicate on a regular basis. Asynchronous communication (emails) is usually preferred by clients who are busy with other projects. We always copy each team member and the project management team in on each email to keep everyone in the loop. Some clients, on the other hand, prefer to be constantly involved in the project development. For those types, Slack is the perfect tool. Not only do they keep in touch with the team, but they can also get access to other tools integrated with Slack.

JIRA

Every feature that we discuss – at weekly calls or via emails or Slack – ends up in JIRA. It’s where we keep all project requirements and where we put the final version of the feature. The tool shows the estimations of the tasks, the current status of the work in progress (whether a ticket has been started, finished, delivered, accepted, etc.) and the planned release date.

Staging app / Testing server

The staging app is also an important way to communicate. Before going live, every single piece of code is deployed to staging or, in other words, the testing server. The clients can explore it as much as they like and see the results of the team’s work. Being able to try out a working feature can also inspire interesting discussions and ideas for further improvements. It shows a realistic representation of the product to the client.

Weekly summary

At the beginning of each week, our clients get a weekly summary of all tasks we finished and bugs we squashed the previous week and the ones we are working on currently.

Avoiding Common Mistakes in Workplace Communication

Communication mistakes in the workplace go beyond misunderstandings, sharing too little or too much information or the lack of a coherent communication strategy. Poorly managed communication in the workplace can easily lead to poor motivation and even conflict. Below we present the most common communication mistakes.

Email: you’re doing it wrong

Emails and texts facilitate instant communication, regardless of where you are. It’s hardly a surprise then that the convenience these communication channels afford is easily abused. Some time ago we used to joke that one day people will get fired via email. Lo and behold, this has now become reality!

Reaction ≠ Response

Although reaction and response are almost synonymous, there are situations where a reaction is less desirable than a response. A reaction reveals a person’s emotional attitude to a situation or information, which can cause unintended consequences.

A better way of dealing with upsetting information is to employ the five principles of listening:

• Receive. Hear the message and start processing it.

• Understand. Take in what you have just heard and interpret it.

• Evaluate. Form your own opinion on what you have just heard, separate facts from opinions and evaluate the quality of the information.

• Remember. Store (mentally) what you heard for future reference.

• Respond.

Ask questions. Make sure you ask different types of questions. By doing this, you will elicit much more information than by constantly using the same question patterns.

If you react emotionally, you will disrupt the discussion and make it more likely that people misunderstand you. You will get the same result by constantly interrupting your interlocutor. Allow the speaker to finish what they are saying before you respond.

Sharing too much or too little information

When communicating, you are constantly at risk of losing the balance between giving too much or too little information. Start by sharing only the information truly relevant for your interlocutor and give them the opportunity to ask questions. It certainly helps to get prepared beforehand. You don’t really have to write a detailed script of what you’re going to say. Have a rough draft of what you discuss and then check whether each point you want to make is really important.

The cookie cutter approach

The so-called cookie cutter approach is yet another problem you might come up against. Just like using one cookie cutter to make all your cookies, a cookie cutter approach means using the same style for all your communication, regardless of what the situation actually calls for. Your weekly all-hands meetings might be informal, but the same approach isn’t necessarily going to work at meetings with clients. Adjust your communication styles so that they fit different situations and make sure the approach you employ works for your interlocutor’s personality type.

Not checking for understanding

How often do you check for understanding when you share information with other people? Probably less often than you think. We easily assume that we communicate clearly. At the same time we are reluctant to check if people understood us, because we are worried that they will perceive us as being condescending. Don’t worry – they won’t.

Not respecting the privacy of others

Emails, social media and mobile phones have turned the concept of boundaries and privacy upside down. Be careful and whenever you communicate, avoid sharing too much personal information about yourself and others or sensitive company information.

Autocratic communication

Having a strong and clear leadership style is beneficial in many ways, as long as it doesn’t turn into an autocratic style of communication, where the leader makes discretionary decisions all by herself or himself and ends up being the only person to communicate instructions.

Allowing no outside input

The input of everyone in a given organisation should be encouraged and valued. When you allow others to contribute but have to make a tough decision which goes against their input, take some time to explain why you came to this decision.

Encouraging effective communication

Now we can briefly look at what steps you can take to promote effective communication in the workplace.

• Have a policy (formal or informal) for dealing with workplace conflicts.

• Encourage teammates to double check all written communications before clicking ‘send’. Make sure that your messages are clear by avoiding using jargon or confusing acronyms and abbreviations.

• Promote communication via platforms like HipChat or Slack, especially where departments and offices are scattered across multiple locations. By allowing open communication they make teams feel more connected and foster healthy interpersonal relations.

• Develop a culture of giving feedback, not only between clients and team members, but also inside your team. Getting positive feedback boosts people’s motivation, but negative feedback can also be valuable, as long as it is delivered in a way that doesn’t destroy confidence.

• Help co-workers understand what situations is each communication channel appropriate for. Face-to-face meetings are good for important discussions which involve only the person you are speaking with. Group meetings are best for anything that affects a large number of people and where team input is needed.

• Use the cc and reply all in emails to shorten your internal feedback loop. This means sending internal communications to specific people, but then also copying in relevant colleagues or departments. Thus, work and feedback can continue even if the intended recipient is away or on sick leave. Naturally, this approach does not apply to email containing sensitive, or personal, information.

The more openly and effectively everyone in the workplace communicates, the less likely you are to experience conflicts that stem from misunderstandings. The cherry on top is that you won’t have to repeat yourself all the time. Your team’s morale and motivation levels will improve. A highly motivated workplace is a productive workplace.

What Wikipedia Won’t Tell you About Calls with Clients

Organizing a productive meeting with a group of people you haven’t worked with or haven’t even met before is no piece of cake, especially if you cooperate remotely. Remote work and differences between people’s personalities could pose numerous challenges for project managers. One example is handling video calls with clients and the team.

Preparation is key

Gather as much intelligence about the client as possible. Go through the email history, then talk to the sales department and ask for their insights. Seek out some information on the Internet if needed.

• Make sure you know the goal your team will be aiming for. Find out as much as you can about the application you are going to be working on and the skills required to build it. Review all existing project documentation and give developers access to the existing code.

• Share the information you collected with your team. Even the most minute details might turn out to be crucial, i.e. whether or not the client has a sense of humor or whether they have some technical knowledge.

• Let everyone know who is going to take part in the call. Both on your and on the client’s side. Carefully review the duties and responsibilities of each team member and communicate this. Transparency will pay off.

• Plan the call and discuss it with your team. Make sure each team member knows what their scope of discussion is and when and how they should elaborate on a given topic. Stick to the strategy you all agreed on and remember to be assertive with the client about the agenda of the meeting.

• Inform your client in advance about the purpose of the call, say what you plan to discuss and who will participate. Let them prepare for the meeting too! By doing this you make sure you get down to business straight away without losing your precious time.

Execution: it’s showtime!

• Turn on your camera during the meeting. When working remotely, it is crucial to maintain eye contact in conference calls and to look professional. Before joining the meeting, make sure you choose a room with a neutral background and that you don’t look as if you’d just crawled out of a sleeping bag ;) Google Hangouts give you a preview opportunity before you actually join the call.

• Take control and moderate the call. You are in charge! Set the pace of the conversation – your interlocutors will adapt to the way you speak, so don’t speak too fast and say all your words clearly. Stick to the established agenda and your plan. Don’t let any participant sidetrack the conversation. Politely suggest dealing with additional issues at the end of the call or during a separate call, if you need some preparation time.

• Use positive language. Instead of saying “it won’t be done until mid-June” it sounds better when you say “it will be done by mid-June”. Always emphasize the solution, not the problem or obstacles. The ability to cope with difficulties is a measure of your professionalism.

• Don’t hesitate to ask questions. By asking questions you don’t show that you don’t have the experience or knowledge necessary to run the project – it’s precisely the opposite: you show that you’re eager to learn and to gain an even deeper understanding of the project. Besides, it is always better to clarify any uncertainties at the very beginning than resorting to guesswork later on.

Remember that you are a part of the team and hence you a have certain role to fulfill. It’s your job to make sure that the clients get to know the team from their best possible side. You also have to ensure that everyone in your team feels confident and secure. You are the project manager – manage the call, your client and your team. Do not leave anything to chance.

5 Ways (and 13 Apps) to Help You Fight Off Procrastination

Most people face the problem of putting things off for ‘later’. This probably includes you and your co-workers too. However, when procrastination makes you totally unproductive, things start to turn sour. To save you from losing touch with your daily tasks here are few tips to help you get stuff done.

Start from the very morning. Just get up.

Easier said than done, right? If you really want to stop putting things off for later, you might want to force yourself to get up as soon as your alarm clock goes off. If you love your smartphone too much to simply put it away from the bed, try using sleep tracking apps and smart alarm clocks, such as Sleep Cycle, Mathe Alarm Clock (it won’t let you turn off the alarm until you solve a simple mathematical equation), or Puzzle Alarm Clock (same thing but with puzzles).

Eliminate distractions

While working you’ll be tempted to check something on Facebook or [insert your distractor of choice] every once in awhile. Get a browser plugin (try block-site for Chrome or leechblock for Firefox) to block chosen websites for a pre-defined amount of time and spend it productively. After you’ve finished working, just go crazy and scroll through your entire news feed!

Make to-do lists

Make a list of things you need to get done. Divide your tasks into small chunks that you can complete easily. Working through big tasks bit by bit can help you stay focused on each stage and you’ll immediately see progress, because you’ll be striking those complete tasks off the list. Oh, by the way, there’s an app for that too: Wunderlist, Task, or simply Google Calendar.

The Pomodoro technique

The Pomodoro technique is the exact opposite of multitasking. It couldn’t really be any simpler: you set a timer for a pre-defined interval (typically 25 minutes with a 5-minute break) and you focus only on a single task for the entire interval. Then you have a short breather and start again. Lather, rinse, repeat. There are lots of yummy apps ready for you to download and try out: Pomodoro Timer or Pomodoro Keeper in App Store, Tomato Timer, Marinara Timer, ClearFocus.

How To Demotivate Your Team Members

Lack of motivation has become a serious problem in the modern working world. The International New York Times cites studies estimating that unhappy employees cost more than $300bn every year in lost productivity in the US alone. What makes people demotivated and how to ensure that your team’s motivation levels stay high?

Lack of confidence in the leader

A great team needs a great leader. But leaders don’t become truly great until they realise that they don’t always know best. A truly great leader picks great people to work with, who can always be trusted when it comes to making the right decisions and giving the best advice. We all work best when we know what we’re doing. When there’s no clear structure to the workflow, things can become unruly pretty quickly and lack of focus starts to creep in.

Micromanagement

Micromanagers can really get under people’s skin. When you’re trying to get your work done, there’s nothing worse than having someone breathe down your neck the whole time, trying to control your process.

Bad atmosphere

People never get on well with everyone – we always have people whom we dislike. However, if a PM cannot manage all the different characters in the team properly, people will start arguing and the atmosphere will turn sour. The worst-case scenario is that some people will hate coming to the office so much that they will take days off or call in sick and the productivity will slump.

Lack of planning and prioritizing

Your teammates need to know exactly what they need to do and have plenty of time to get it done. Unreasonable deadlines – either too long or too short – can result in lower motivation, for they will either engender a culture of twiddling thumbs or a super-stressed workforce who never have enough time to do things well. Rushed work leads to mistakes, which can have a negative impact on team members’ confidence. Similarly, when deadlines are too generous, people will start wasting time and procrastinating and they will lose focus on your project. The office will seem like a place for recreation rather than professionalism and this certainly won’t do any good for the motivation.

Communication problems

Inefficient communication is one of the most common causes of unproductive and apathetic teams. Without full transparency of communication, certain members of the team who aren’t kept in the loop will begin to feel devalued. This is unacceptable, for every member of a team has a role to play in making the business run smoothly – without transparency an atmosphere of petty competitiveness will begin to rear its ugly head.

Lack of feedback and rewards

Feedback is vital for motivated and productive teams. Without clear feedback mechanisms, your team will start voicing their concerns outside the official channels, which might worsen the atmosphere in the project team. Feedback processes should be in place so everyone can address the facts instead of taking out personal grievances against one another. Rewards are also great motivators – a small reward will go a long way.

How to Motivate Your Team: Naked Facts and Surefire Tips

Many people you manage will have worked at other companies before, where inefficient organisation, lack of communication and bad blood between team members negatively affected their working day experience. The last thing you want to do is create a similar environment for the people you manage. A happy co-worker is an efficient co-worker... in THAT order.

The advice below will help you create a positive and enthusiastic working environment with good morale and high productivity levels.

10 motivation tips from Netguru team:

1. Keep everyone informed

Remember: every single team member is equally important. You want to make sure everybody feels that they are valued. One of the easiest ways to do it is to always keep everyone informed about everything that’s going on in the project.

2. Encourage communication

Create a friendly environment, where everyone feels like they can talk openly. We have purposefully created a number of active communication pathways to make this possible.

3. Always ask why

Problems in the workflow process will always occur every once in awhile. As a PM, you should always know the reason those issues came about – do not jump to conclusions and avoid making rash judgments. Always ask why? so you can get to the bottom of any development or QA problem.

4. After Action Review (AAR)

Failures happen. Yet, as long as we learn from the mistakes we make, we continue to improve. In Netguru, we conduct After Action Reviews – especially after a project failure but also after a success. In the former case, it puts the team back on track by letting them come up with better solutions to the problems that occurred. AARs following a success, on the other hand, help keep up the high spirits.

5. Find and set personal goals for each team member

Clients can be difficult to deal with. They can be indecisive or abrasive and demanding. Sometimes you have to set personal goals to avoid becoming frustrated with others or being fed up with what you’re asked to do. Rotating people between teams and projects can help prevent anyone from getting too used to one project.

6. Finding balance between familiar and challenging

Highly creative and challenging tasks are great for creative people – but too much can be exhausting. Happy workers need a well-balanced schedule that consists of tasks that are both challenging and easy routine tasks that can be completed quickly.

7. Listen first, talk later

Team members can sometimes become frustrated when they don’t feel they are being listened to. PMs need to take care to always listen carefully to what team members think the problem is instead of assuming that they know all the answers.

8. Admit you were wrong if you’ve made a mistake!

If you happen to make an mistake, don’t try to cover it up, brush over it or pass the buck. Just admit you were wrong – you will come across as more human for one thing and build trust and confidence.

9. Appreciate effort and reward personal improvement

We all like to feel valued. In Netguru, we’re not shy about rewarding great work or personal development with praise. Showing appreciation of other people’s work is also important – it helps to build a thriving creative and motivated team.

10. Get to know your team!

Your colleagues have more to them than just their professional roles. It’s important that you get to know more about their private side and that they get to know a little more about you and your life after hours. Occasional get-togethers outside the office will help you create stronger bonds among team members.

Guide to Giving Effective Feedback

Communicating feedback effectively is one of they key elements of today’s working culture. You want to know if team members deliver their tasks correctly but you are afraid to hear that you didn’t do your job right or that the client is unhappy? Many people perceive feedback as a potential problem, because they mistake it for personal criticism.

How to give feedback

Here are the ground rules for giving good feedback:

• Always speak about facts – never base feedback on a gut feeling.

• Speak about concrete objectives or behaviours, not about people’s qualities (e.g. You did X wrong vs. X could have been done better).

• Give feedback as soon as possible after a situation occurs. Don’t mention things that happened 6 months ago.

• Be specific, focus on visible behaviours or recurrent patterns. Illustrate or explain how a given behavior affects other elements.

• Choose a private space, e.g. a conference room. Never do it in a room full of other people, especially if they’re not involved.

• Try not to use online chats or instant messages. It is hard to explain some things in writing. You should be able to see another person’s face and react to their emotions.

• Don’t judge the aspects that the person has no influence on.

• Choose your feedback style appropriately. For example, less experienced people need more praise. More experienced team members know what they are doing right – you can get straight to the point and explain what they could improve on.

• State your expectations clearly.

• Focus on the benefit that your interlocutor will get from the feedback.

• Give only as much information as a person can handle or is needed to rectify the situation (don’t list 10 pieces of supporting evidence, just a few strong ones).

Forms of feedback

There are a number of forms of giving feedback like the Sandwich model, the GROW model, the SWOT model, which you can choose depending on your level of experience. The words you use in your feedback are important. For example: “you jeopardised an important project again” is emotional and non-specific. Instead, we can say, ”you didn’t deliver the part of code on time, which has caused a delay in project x”.

Avoid words like always, never, everybody - generalisations will kill everything you said right. The key to good feedback is not WHAT you are saying but HOW you are saying it.

Feedback culture

If you are working in an environment with a culture of giving feedback, people are used to receiving feedback and feel comfortable in such situations. If giving feedback hasn’t always been a usual practice in your company, you can expect the following reactions:

• Shock/Anger – people react emotionally or impulsively

• Indifference – people don’t commit to doing things differently

• Resistance/Denial – people attack your credibility and the facts, refuse to acknowledge the issue and deny that the situation took place

• Lack of confidence/Self-pity – people don’t know their strengths and weaknesses or are uncertain in their abilities to succeed

• Avoiding responsibility – people acknowledge the negative feedback but try to blame others, implying that they won’t change

The way you can cope with such reactions is to always remain calm, present the facts, ask for the opinion of the other party, make people feel respected, observe their reactions and respond accordingly.

Good luck with your projects!

.

About Netguru

We are software experts who help startups and corporations build their products from scratch or take them to the next level by developing already existing features.

You only pay for the development, QA and PM are free of charge.

Contact us and get a free code review worth $400.

hi@netguru.co

netguru.co

netguru.co/blog

facebook.com/netguru

twitter.com/netguru