Interaction with the product team 2/3: working with a remote team

Andrei Smagin
11 min readFeb 23, 2021

Remote specialists can be of various profiles. For example, an email marketer who creates, distributes, analyzes, and improves selling email chains. Or a tester that tests your website or mobile app. It can be a frontend developer working from a sunny country on the layout of your site or a designer who draws your UI and lives in a nearby city.

Where to look for remote specialists?

Facebook is the number one social network in the world. There you can write requests for the employees you need. Ask for maximum repost from friends and colleagues. Review professional communities and text to people directly. Yes, this is absolutely normal.

LinkedIn is the same as Facebook, but this social network is sharpened for professional contacts. It is very convenient to find all the employees directly on the company’s page and contact them.

YouTube. Professionals leave comments under thematic videos. You can find good specialists there by going through the most thoughtful and sensible comments. Just go to their pages and write your offer.

Habr Q&A — questions and answers from the popular website Habr. There you can find skilled freelance programmers. Universal advice: google the question that interests you, find the answer, read the comments and write to the authors.

Habr is a service of unique articles mainly on IT topics. There is a separate section of freelance search.

Twitter. Even though it is not obvious, people from IT love Twitter. For example, almost all cool Python developers post news there.

VC is a news and job search platform. You look for a cool article on the right topic and text the author with a job offer. It’s simple.

Telegram. Professional communities always have more than one channel. Join, send your offer, and respond to feedback. It works. Truth.

I created my own telegram channel, follow the link ProductMonkey, and you can find a lot of interesting things there.(https://t.me/productmonkey)

Google is the basic tool of any modern man. Do we need DevOps? We go to Google. Do we need testers? Google. Anything you need, you can find it on Google.

Ask around. We all live in a community. Someone always knows someone. Someone is working with someone or has worked with someone. This is a great channel that has helped us out more than once. Just ask around your friends, go through the contacts in the phone book. You can find a specialist in a most unexpected place.

Upwork or any freelance service. Just a must-have. First, you get access to a lot of potential performers of your work. Secondly, you won’t get a headache over the ways of payment: the service takes all the responsibility for a small commission. We even recommend you to work with some of your actual specialists through platforms like this: it is more convenient for both you and them.

The Job Board. No matter what anyone else says, 99.99% of all resumes are on hh.ru. So you can find absolutely any specialist there. There are no private databases. Don’t pay agencies for air.

Stack Overflow. It is a Q&A service for programmers. It is also a freelance platform. 100% of developers use this resource daily.

Tagline-analytical Agency. There are ratings of all top studios for the development of websites and mobile applications. If you need to find a contractor, 100% you are here.

Digital agencies. SETTERS, ZephyrLab, IKRA, Artemy Lebedev Studio, etc. If you need to do well and have a budget.

How to create a technical task

Write down what needs to be done in your own words

For example: “Code the purple button in the upper right corner. When you click it once, a picture with a cat appears.” That’s enough to start with.

The more details, the better. What size should the button be? A photo of a cat? In what resolution? What happens if the button is pressed 2–3 or more times? etc. You have to ask yourself these questions.

The main criterion is that the technical task should be sufficiently complete so that product can be developed according to it. For example, if the shade of purple is not important, omit this detail. If important, specify a reference.

Specify what result you want to get

For example: “When you click the button, the client should receive an SMS notification within five seconds. Example of an SMS in an attachment”.

Tell what you have now (optional)

If the project uses a specific stack or if there are special requirements that need to be considered.

For example: “The website is written in PHP” or “Be sure to use Kron”.

Attach screenshots of the prototype, an example report, buttons, — everything you need

It is best to show examples that you like while discussing the layout. If you want to get a report, draw schematically in Excel what it should look like: the fields, the columns, where the buttons are located.

Write down how much you are willing to pay for an hour or the whole work

For example: “The wage is 1000 rubles per hour. The payment is on each 1st day of the calendar month. In total, you’ll be working 80 hours per month (20 per week)”

Specify the deadline

For example: “We expect you to complete the project in 3 working weeks. Weekly on Fridays, you need to show 1/3 of the entire work. Project synchronization with the team via Skype daily at 12:00”

It will be great if you write a list and discuss it with the contractor. It should contain the main important criteria for accepting work (milestones):

- The button is pressed.

- The image comes out with a size of 600x600.

- The SMS is sent and the recipient can read it.

How to evaluate your work

Does it do what you want?

It’s very simple. Does what you got perform the function you wanted to get? Does the new functionality work correctly? Does the final layout match the design?

If not, then you need to redo it. For example, you wanted the designer to draw you three transition pages. He only drew one. If he figured out how to elegantly fit the functionality of three transitions into one, and it was agreed — super! In all other cases, the work is not completed.

Is it functional?

Do you remember the evaluation criteria? That’s where they come in handy. If something important that you knew about and did not think about, you left it to the decision of the performer, and they did as they saw it, this is your problem. But if you discussed this point, and the performer did it in his own way, this is his flaw.

Does it perform a business task?

Sometimes you don’t know how to implement something, or you don’t know how to do it well. And you can only evaluate this by asking the developer to make some kind of prototype. Keep in mind that for each such iteration you will have to pay and this is normal. The artist should not redo the layout for free if you do not know what you want. But be prepared that the hypothesis in general might have to be thrown out as unrealizable.

How to communicate

The most convenient messengers are Telegram, Slack, Skype, Zoom.

Discuss where and how often you will communicate. Any performer needs periods of prolonged deep cognitive work. During these periods, they will be unavailable, and this is normal. It is impossible to create a good design, write good code or strong selling text if you are constantly hammered on the phone or in WhatsApp.

It is best to get in touch at the same time every day. Discuss the schedule of your communication sessions and do not forget that you and the performer may have different time zones. These are two-way feedback sessions. The contractor will immerse you in the progress of your project and ask you clarifying questions. So you will have an understanding that the project is moving, and the performer will have a feeling that they weren’t left alone with the task.

If you work with this person for a long time and have done more than one project, trust their professionalism and sense of style, you can communicate less often. But still do it at least once a week, so you will not come to a complete loss of control over the project. In remote communications, consistency and frequency are important.

How to pay

For hours worked (1–2 times a month)

We pay once a month, regardless of the type of work: programming, design, copywriting, etc. This is a normal payment option. The person will know that, for example, on the first day of the month they will receive money.

Try to fulfill your obligations and your part of the contract. Any performer does not work for free and relies on this money, especially freelancers. If the first number falls on holidays and banks will not work, take care of this in advance. Do not transfer money after the tenth day with the words: “Sorry, I didn’t have time.” The next time a person doesn’t work with you, they know you’re doing it.

For complete project

Pay only for what you have accepted as fulfilled. If a person has done 98% of the work and you expect them to do the other 2%, don’t pay. The work is either done (accepted) or not done. This is binary. If a person has completed only four tasks out of five by the end of the reporting period, then they will only receive payment for four. And the fifth task, if completed, they will not be paid until next month. We are all adults and fully capable of taking responsibility for our actions.

What tools to use

For prototypes and references Figma is best. It is convenient, works online and has already become the standard in the industry. For example, it is used in web development and mobile development.

The messengers such as Telegram, Slack, Skype. There’s nothing more to add. Telegram has almost everything except video calls. You can use Zoom for these.

To rummage through documents use Google Docs. If you need it quickly, simply and for free, humanity has not yet come up with anything better.

For business processes, workflow use Whimsical, Miro. You can, of course, draw in Microsoft products and follow the notation, but Whimsical is more convenient, more beautiful and free for 99% of tasks.

For drawing up technical specifications-Notion, Evernote, Google Docs. We usually write in Notion or Evernote, because they allow you to beautifully fumble a document with one button.

The most convenient presentation tools are PowerPoint, Google Docs. The most frequent case is Google Presentations.

How to say goodbye

If the project is limited in time and budget, this should be discussed in advance

If you are hiring a person for a five-month project, be sure to say so. If the task is a one-time thing, it is the same. Be sure that there is no misunderstanding when you want to break up suddenly with a person. You don’t know when, where, or with whom you’ll have to work again. So this information is one of the most important after payment.

If the work is not completed within ten working days (two weeks), cancel the order, it will not be completed

In our experience, it makes no sense to work with tasks that last more than two weeks. If you have a large project, divide it into small pieces. If a programmer cannot program code for ten days in a row for any reason, then they are not able to do it. Just remove this task from them and give it to another performer. There are no miracles.

If something needs to be programmed for longer than two days, it doesn’t need to be programmed

Divide the task so that it can be completed in 16 hours. Longer attempts at coding do not lead to anything. It is better to move in small controlled iterations than to live under the illusion that the work will be done. Let you better have ready-made atomic code fragments implemented than porridge of unknown things.

Be honest. Tell only the facts

If the person failed, say so.

Don’t say nice things about how we’re all good people and all that. A person can be wonderful, but the work is not done. For any reason. Don’t look for excuses, don’t look for hidden meanings. The job just isn’t done.

Try to work long hours. Reputation is more important

If a person does not deceive you and honestly fulfills his part of the contract, do not deceive their expectations.

Never try to hang additional requirements on the way. Keep in touch responsibly and regularly. Believe me, reputation is earned over the years, and lost in five minutes.

You will want to attract these people from project to project more than once. Someone, perhaps, you will take on the staff. Someone will recommend you.

How to justify the expansion of a team (for example, by a contractor)

The first thing you should do is calculate the current team capacity.

Based on the figures obtained, critically examine your backlog. How many tasks can you actually complete with the current capacity and in what time? If the answer doesn’t suit you, there is potential for expanding the team.

For example, you understand that the conversion to a purchase directly depends on the availability of a full description and beautiful photos in the product card. One content Manager can fill out effectively 300 cards per day. This is with a full description, filled in characteristics and photos. You understand that it will take 100 days for one person to fill out 30,000 cards. It is very difficult to automate this process, since the parser still needs to be rechecked. Plus, consider the time it takes the programmer to figure out how to do it. You realize that because of unfilled cards, you lose sales by about $10000 a day. Add to this the reputational losses, which are impossible to calculate, but they are there.

Is it worth hiring a couple more content managers to reduce the amount of losses? Of course! You go to the CEO and show that the temporary expansion of the team is justified. In scenario A, we lose 5 million dollars. In scenario B, we earn 3.3 million (roughly), or 2/3 of the original loss amount, by hiring two freelancers. And we do the work 3 times faster: 33 days against 100.

No role, no expertise in the team

Often there is no specific expertise in the team. For example, you want to use Docker, but no one in the team has worked with it. You can wait for the guys to sort out their own books, courses, videos on the Internet, etc. Or you can immediately hire a specialist and overlap his expertise. In general, you can always overlap only two things: either expertise or money.

This doesn’t work with development (Frederick Brooks rule)

There is such a book named “The Mythical Man-Month”. There, the author explains in detail why adding new programmers in the middle of the project does not speed up the work, but on the contrary, slows it down a lot. So, if your project has already started, finish a key iteration with your existing development team, and don’t try to hire more specialists to meet the deadline. It never works. The book, by the way, was written in 1975. Little has changed since then.

If you haven’t subscribed to my telegram channel yet, now is the time to do so by clicking on the Product Monkey link. You can find a lot of interesting things there.(https://t.me/productmonkey). Every day I make posts about the most important things in product management.
If you want to learn more about team interaction, here is my course on Udemy. I created my own course on this topic, based on the fact that I believe that the product is built, including on relationships in the team.(https://www.udemy.com/course/interaction-with-the-product-team)

--

--

Andrei Smagin

Product Manager nut. Stirring up some monkey business. Delivering genius solutions. Teaching on moonlighting. Usually here: https://t.me/productmonkey