ESPROFILER Handbook
Company

Communication

We prioritise clear, consistent, and intentional communication so that teams can stay aligned, make effective decisions, and collaborate smoothly, no matter where they are.

Tools

E-Mail

E-Mail communication should only be used for external communication, or when you need a written record of internal communication, e.g. topics like compensation, underperformance, or other formal decisions where clarity and traceability matter.

All e-mail for the company should be sent from your official company e-mail address. We use Google's Gmail for this.

Google Chat

Google Chat is our primary tool for internal communication.

Best Practices

  • Appropriate Spaces: When posting messages, please make sure you are posting in an appropriate space (see some Useful Spaces and their purposes below). This prevents over-notifying people that don't need to be made aware, and makes discoverability of conversations easier in the future.
  • Threads: You should try to use threads in Google Chat where possible to save pollution (and over-notifying) the primary spaces.
  • Public over Private: Prefer public channels over direct messages. Public channels help everyone stay informed and make it easier for others to join or support the conversation.

Useful Spaces

  • AFK: Things come up throughout the day that need your attention, that's fine, just let the wider team know if you're going to be away from keyboard (AFK) for any reasonable amount of time so that they know they can't get hold of your quickly if they need to.
  • Announcements: This channel is used by senior leadership to communicate important company-wide updates.
  • Daily Standup: When conducint gour async Daily Standups, the DailyBot will report everyone's standups into this Space.
  • Thanks: A place to be appreciative of the help you recieve from your colleagues and the hard work they put in.

Jira

We use Atlassian's Jira for our project management operations. Any discussion and communication about a particular item of work should be conducted in that item's thread on Jira directly. Communication in Google Chat Spaces or DMs can be lost. Using Jira as a central source of conversation support collaboration and helps team members quickly get up to speed on new issues they may not have been involve with previously.

Company Announcements

In Google Chat we have an Announcements space. This is used for important company-wide announcements. Whilst some announcements may be made in meetings, all announcements should then be shared here too so that everyone can get up-to-date in their own time if they have missed the news.

Meetings

Agenda

Each meeting should have an agenda. An agenda helps participants prepare and decide whether they need to attend. Any participant may add items to the agenda. Please prefix your item with your name or initials so it is clear who will introduce and lead that topic.

It is fine to add new items while the meeting is happening. Doing this can keep the discussion focused and help the group stay on track.

Note Taking

TBC

Daily Standups

We operate with asynchronous standups, meaning that everyone is responsible for reporting their standup status in the mornings but we have no fixed meeting/call on which status is shared.

For this, we use DailyBot, this is a standalone application, but offers Google Chat integration. It has been configured to message each employee at 9am each morning asking for a "Daily Standup" status. You will be prompted with the following questiions:

  • Anything from yesterday's plan that is left over?
  • What are you planning on working on today?
  • Any Blockers?
  • Anything else you would like to share?

When submitted, you can then view yours, and others, standup status' in the "Daily Standup" Google Chat space

Best Practices

  • Mention colleagues that have items blocking you if appropriate
  • Link to Jira tickets where possible, so that others can follow up and see the detail of what you're working on

Shortcuts

The following commands can be sent directly to the DailyBot App in Google Chat:

  • checkin - Manually triggers the Daily Standup prompts, instead of waiting for the 9am auto-prompt
  • checkin edit - Allows you to edit an already submitted standup status
  • help - Lists all of the commands available to interact with DailyBot

1:1 Meetings

Each employee at ESPROFILER should have regular one-on-one meetings with their manager. For individual contributors, 1:1s should happen at least once a month. Depending on role, tenure, and current needs, a biweekly (every two weeks) or weekly cadence may be more appropriate and should be agreed upon by the manager and direct report.

The direct report owns the agenda. Use this time to talk about anything that helps you succeed, such as personal updates, challenges, feedback, or decisions you need support with.

Keep your agenda in a shared Google Doc. Both you and your manager should add items as they come to mind, instead of waiting until the day before. During the meeting, you can walk through the topics in whatever order is most useful.

A 1:1 should not turn into a status update meeting. Share status updates in GitHub issues, standups, or other async channels. Use your 1:1 to get alignment, talk through difficulties, or brainstorm solutions.

When preparing your agenda, you can reflect on questions like:

  • What went well in the last few weeks?
  • What did not go well?
  • Which problems were difficult, and what would have made them easier?
  • What important but not urgent tasks need attention?
  • How did you receive feedback, and did that approach work for you?
  • Where do you want to improve, and do you want help creating a plan?
  • Include an “Action Items” section in your agenda to track follow-up tasks from the meeting. Add timelines when they are helpful.

Asynchronous Communication

Even though ESPROFILER is runs a hybrid working practice with employees often working in-office, we operate with the best practices in place to support full remote/async working. We do this because it is easier to do in-person working with those practices, than it is to do async/remote working whilst having best practices align to requiring in-person contact.

Information should always be stored so it is easy to find later. Important information should live in places that are persistent and searchable.

Information should thus be stored in:

  • The Handbook: Used for storing company policies and procedures.
  • Google Drive: Should be used to store meeting notes (in Docs), financial planning (in Sheets), sales pitch decks (Slides), etc.
  • Jira: Items and discussion about a Work Item should happen in the work item.

Do not store information in:

  • Google Chat

Not Everything Needs a DM

In can be an easy trap to fall into, direct messaing a colleague asking them to take an action on something. Consider though, have they already been notified, does this require immediate action?

You should try to limit requests for action in a DM when you only need action taken as a priority. If it's urgent, call them.

Such examples include:

  • Assigning someone as a Reviewer for a Merge Request: Ensure you've actually requested them as a reviewer on the MR, if so, they would have already been e-mailed/notified that's the case. No need to DM them too, unless it's urgent.