This is the online version of our internal team handbook, with a few minor modifications. It is designed to help new team members get started. We hope it gives you a good idea of how we run the studio, and what it means to be part of our team. This document might be a bit out of date, so if you are part of the team: please refer to the internal version for the latest and most complete.

Getting Started

  1. You will get an @clockworkacorn.com email and Google Workspace account.
    • Only if you are a full-time team member; short-term contractors or interns don’t need this.
    • Make sure you check this email regularly for notifications, meeting invites, etc. If you prefer, you can forward it to your personal email to make that easier.
  2. You will get an invite to join our Slack. Join and set up your profile there.
  3. Make sure your security is correctly set up.
  4. Briefly read the rest of this document. Don’t memorise it, you can refer back later.
  5. Get started on your zeroth task.
  6. You should get access to project-specific resources, like source control and some basic instructions for getting started with the project. If not yet, ask on Slack.

Vision

As we focus on the minutiae of work tasks on a day-to-day basis, it’s important to remember why we’re doing this and keep the bigger picture in mind. The vision for Clockwork Acorn is to be a force for good in the world; more specifically:

  • Great place to work
    • Fully remote work with flexi-hours
    • Safe anti-racist, feminist, LGBTQ+ friendly space
    • Diverse team
    • No crunch
  • Timeless games with chunky design
    • Systemically interesting and thought-provoking design
    • Small efficient teams with manageable scope
    • Games that don’t age
  • Impactful on the South African game industry and beyond
    • Grow expert world-class skills within and outside of our team
    • Helping build, grow and maintain local communities
  • Sustainable
    • Financial security
    • Maintain team motivation and work/life balance

If you notice we’re doing something that goes against the vision, no matter how small, please raise this!

Culture

We strive to have a company culture of:

  • Trust
    • A high level of trust underpins everything we do.
    • We trust everyone to do good work and make good decisions.
    • Everyone has a lot of freedom and responsibility.
  • Collaboration
    • We are a team, not a clump of individuals.
    • We share openly and widely so we can keep highly aligned, functioning as a cohesive unit.
    • Asking questions and challenging assumptions is valuable.
    • Communication is an essential skill that we are all constantly working on.
  • Effectiveness
    • We strive to be highly effective, being our best selves.
    • We strive to be constantly growing and improving as individuals.
    • We view failure as an opportunity to learn.

Security

You must please follow these rules for online security:

  1. Use a password manager like 1Password or Bitwarden with strong unique passwords for all company accounts (also recommended for personal accounts).
  2. Use 2FA (2-Factor Authentication) for Google Workspace, Slack and other important accounts. Preferably use a mobile app or physical key, not mobile OTPs (they’re more vulnerable). Recommended: Authy.
  3. Confidentiality: please be conscious when working in shared company documents and who you share potentially confidential information with. We are very open with fellow team members, but relationships with external parties are often less open.
  4. Backups: you are responsible for making sure your important work files are backed up regularly. You can use GitHub or the shared Google Drive folders for each project. Make sure you use your @clockworkacorn.com account for these backup files.

Slack

We are a 100% remote company without a physical office environment and use Slack for most of our communication. As such, it forms a core part of the company culture and everyone’s day-to-day work. It’s important that you try to use Slack effectively. The way each company uses it can often be quite different, so we’ve tried to document how we use Slack to try and be the most effective we can.

If you’ve never used Slack before, here is Slack’s guide for the software.

Note: email is only really used when dealing with external parties or on rare occasions. Try to avoid email (or other communication tools like WhatsApp, Discord, Messenger, etc.) when communicating with fellow Clockwork Acorn team members.

Getting Settled

When you first get access to Slack, spend a few minutes setting up your profile and settings. You’ll spend a lot of time in Slack, so it’s worth getting things right for you.

You should make sure your profile name is correct, and details like your role and pronouns are filled in. Please upload an appropriate profile picture, preferably of your face (this helps people connect you to your words and makes us more human). Please try to use the same profile pic across different company software, so people can more easily recognise you.

Go through all the Slack settings and make sure they work for you. You should pay special attention to notification settings. With flexi-hours it can be hard to keep track of everyone’s hours, so it’s (mostly) the receiver’s responsibility to set their notifications to not bother them when they aren’t working. It can be helpful to also use your phone’s settings in tandem.

Notable Channels

  • #watercooler
    • Everyone is part of this channel. It’s a great place to chat with others and be a bit social, but also be mindful that everyone is in here.
    • Note: this also includes past team members, so be cautious about sharing confidential information here. Consider using #team if you’re unsure.
  • #team
    • For team-wide discussions. Active team members only.
  • #wid
    • Post a daily message here describing what you worked on. See: A Typical Day.
  • #kudos
    • We use this to publicly congratulate someone for having done a lovely, impressive, helpful and/or kind thing recently.
  • You have probably also been added to at least one project-specific channel.

Public Conversations over Direct Messages

It can be tempting, especially as a new person in the team, to direct the majority of your questions and comments to individual people directly via DM as opposed to writing those questions or comments in public channels. It can feel safer (i.e. “If I ask a dumb question, only one person will know I asked it”) and more polite (“I don’t want to bother everyone with my question/comment… let me just bother one person.”). We acknowledge all the very legitimate reasons you might initially feel uncomfortable posting in public channels, but want to encourage you as strongly as possible to post publicly despite that!

Motivation

In a co-located office environment, people have an intuitive sense of what other people are working on and/or struggling with because they overhear discussion about it and see it first-hand. This context can be very valuable for everyone. In a remote company, status updates in meetings and written WIDs help this, but never fully replace it.

In a co-located office environment, a question or comment can spur an interesting related conversation that ends up benefiting everyone. In a remote company, that can only happen if it occurs in a public channel.

When discussions happen in DMs, there ends up being a lot of damage to our collective productivity. For example, questions end up getting answered multiple times, instead of just once. And questions may take longer to answer (leaving people stumped in the process) because only one person was given the opportunity to answer and they may have been busy or unavailable at the time.

Another example: two people make a decision between themselves in DMs. Later, an issue related to the decision comes up. Nobody discussing the issue has any idea why the decision was made, and there’s no public record of it, so they are paralyzed. They have to ping everyone to ask, “Does anyone know why we did XYZ?” Hopefully the people who made the decision are both online and currently available to respond.

Finally, asking seemingly “minor” or “simple” questions publicly can often spark productive discussions. In fact, just expressing that “this is something I’m struggling with” can highlight significant inefficiencies or problem areas that might have gone overlooked had you not spoken up about them publicly.

How to Migrate to Public

Sometimes it isn’t obvious at the start of a private conversation that it would have been better suited as a public conversation (or for that matter, maybe it WAS best as a private conversation to start, but there were some important conclusions everyone should know about). That’s OK! The important thing is to be conscious of it and migrate from private to public when appropriate.

To migrate to public, you might want to post a summary of the conversation to a public channel when it is finished. Or if midway through the conversation, you realise it would be better as a public one, you might even want to just copy/paste the whole conversation into a public channel and continue the conversation publicly from that point forward. You might go about it like this:

  1. Posting into a public channel: “Hey everyone, X and I started having a chat privately about XYZ, but I wanted to surface the topic to everyone else so it is visible.”
  2. Copy/paste the existing conversation into a new public thread with notes for context.
  3. Explicitly @ key individuals who you think should be aware of the thread.

And to be clear, none of this is to suggest that DMs are always inappropriate! Sometimes DMs are more efficient; for example when a discussion topic is so minor, or so extremely specific and context-sensitive that it probably won’t interest or make sense to anyone but a given person you have in mind. And sometimes you’ll have personal things to discuss that are obviously better suited for DM. But in general, given the temptation you’ll probably feel to make most of your conversations into DMs, we want to encourage you to lean towards public channels instead. Don’t worry if they seem “too minor” while you’re new; there are worse things than making a minor conversation public.

Does this make Slack very noisy?

It’s a fair question. The answer is no, not in our experience. It helps that we contain discussions to threads, which can be ignored by anyone who isn’t interested in them. It also helps that we can create Slack channels for any given major feature or category of work on a project, which also helps people ignore stuff they aren’t interested in. Additionally, there are a few ways you can be mindful of noise.

Use Threads With Abandon

Slack threads are a terrific way to organise conversations while keeping channels clean and readable. Please make copious use of them. If you have a big message, it can be useful to put the important information in the root channel message and then put additional context or follow up details in the thread.

It can be difficult to create a thread if you post a burst of multiple messages, so try to keep your non-threaded messages in a channel to one (if it makes sense). If you find yourself often creating bursts of messages, maybe take a breath before pressing send.

However, threads also have a tendency to devolve into situations where the conversation just keeps dragging on, without resolution. Don’t be afraid to abandon a thread and take the conversation to voice chat. It can often take a 5 minute voice chat to avoid a 20 message-long thread. Use your discretion. If you do this, remember to add context to the thread so others are aware of what happened (“@X @Y: Let’s have a quick voice chat,” and later, “X, Y and I chatted and we think…”).

Be Mindful of Noise

Slack is a balance of signal vs noise. Try to be mindful of how you use Slack to reduce noise for everyone so they can focus more easily:

  • Make sure you’re using the right channel and aren’t off-topic.
  • Use @channel and @here very sparingly. Maybe just @ the relevant people?
  • Try grouping your short messages together instead of one per sentence, especially DMs. This makes sure you don’t ping people multiple times, and makes it easier to use threads.
  • Don’t open a DM with just “Hi”, “You there?”, “I have a question” or similar, and wait for a response. Just say what you want to say and have your question in the first message. Each DM will ping someone, so you should be mindful of that. See also.

Responsiveness

We are a remote company with flexi-hours. Our core hours are roughly 10:00–15:00 SAST/UTC+2, but people might be working outside of those hours as their needs dictate. Try to respond to messages timeously, especially DMs and @ mentions, so that others can work effectively.

However, Slack can sometimes be distracting and you might find it difficult to concentrate on work. Don’t be afraid to ignore Slack for a little while and then come back to it and batch your interrupt.

Because responsiveness can be lower than in a co-located office environment, it is important for you to try to be forward thinking and factor that into your planning and self-management. If you know you need a response by a certain time, try asking early and let the receiver know about the timing. It’s advisable to try to plan your work such that you are not blocked by a lack of response from someone (within limits), for example by having another task to work on.

Out of Office

If you are stepping away from the computer for a quick 15 minute break, you don’t usually need to tell anyone (and telling people can add to noise levels). If it’s for an extended period (more than an hour) during core hours, it can be nice to post something to #watercooler. If you’ll be away from work for a day or more, then please update your Slack status to indicate you’re away and when you’ll be back. You can also consider snoozing your notifications for this time.

A Typical Day

  • If you would like to, say good morning in #watercooler if you haven’t already. This is a casual way to let people know you’ve started work.
  • Our “core hours” are 10:00–15:00 SAST/UTC+2. During these hours, we’d really like you to generally be around and available for conversation.
  • The expectation is that a full day of work is about 6 “productive” hours.
    • Productive hours are: a mix of focused work and team communication, including time in meetings, but not time spent browsing news or social media.
    • Being honest with yourself about productive time is a challenge for everyone, but it can help you a lot if you’re able to tune out distractions and really focus. Keep working on it!
  • Hours are tracked on the honour system. Nobody expects you to account for your time in 15 minute increments or whatever. It can be helpful to use time tracking software for yourself, so you don’t under- or over-work.
  • How you spread your hours over the week is up to you, but we ask it to be somewhat predictable, and for it to have a decent overlap with your project team.
  • Post a daily short WID (What I Did) summary in the #wid channel
    • This helps keep the team aware of what others are working on.
    • Keep it relatively high-level. No need for the minutiae of the decisions you made.
    • Include any WIP (work in progress) tasks or things that didn’t pan out.
    • Mention any difficulties/issues you’re having — maybe someone can help?
    • It can be helpful to make notes to yourself of what you did throughout the day, by for instance sending messages to your own @name Slack DMs
    • Some people have a hard time remembering to do this, but it is important. If you suspect you’ll be the type of person to forget, please set yourself a regular morning reminder to post a WID for your previous day.
  • If you had a weird day and it ended up being drastically longer or shorter than usual, let people know during your WIDs, just so everyone is on the same page.
  • If you’re sick or ill, see if you can pop a message in Slack, just so we know not to expect you. See Vacation and Sick Leave.

A Typical Week

  • Projects have a weekly team meeting. It’ll be on your calendar. There will be an agenda doc (bookmarked in the project channel) that you can add items to in the week leading up to the meeting. You’ll typically also give a quick status update on your weekly work.
  • Consider how much work you have allocated to you and are able to work on (unblocked) throughout the week. It’s good to aim to not have too much work (it can be overwhelming), or too little (you can finish early or get blocked easily and have to wait for a response).
  • If you had a weird week and you’re significantly under your normal work hours by Friday, you can note it as time that you took vacation (usually preferable), or choose to make it up over the weekend.
    • If you’re voluntarily working during a weekend, you should try to avoid troubling other people. For example, scheduling your Slack messages for Monday.

A Typical Month

  • Every 2 to 3 weeks you’ll have a 1:1 (one-on-one) scheduled with Francois where you can discuss anything you want. When you first start, it will be even more frequent (i.e. weekly). If it’s not scheduled immediately after you join, ping Francois!
    • You should set up an agenda for your 1:1 so you can make notes beforehand and ensure important topics are covered. It’s up to you whether you share this or keep it private.
  • For contractors: the previous month’s invoices are expected to be submitted at the start of each month by emailing to finances@clockworkacorn.com. Example invoice with process here. Talk to Francois if you have any questions.
  • For your first month: try reaching out to your other team members and schedule some quick chats to get to know them a bit better.
  • Once a month we have an all-hands call, where we catch everybody up on company and project business.

A Typical Year

  • Take some time off to rest and recover. See Vacations and Sick Leave.
  • Your growth and improvement will be reviewed. See Growth and Improvement.
  • We try to have a fully-paid company retreat every year. We spend a week mostly on vacation with each other, having fun and developing our relationships.

Growth and Improvement

An integral part of Clockwork Acorn is continual growth and improvement. We want to give you the support and resources you need to grow into your best self. We value the impact this has on Clockwork Acorn, the South African game dev industry, and beyond in your professional and private lives.

Teams will usually consist of a mix of junior and senior members. Juniors (and often seniors) will be assigned one or more mentors, to explicitly help them on their path of growth. Mentors will be either internal senior team members or external trusted advisors.

At least once a year we’ll review your growth. Everyone is an individual with a different path, but we believe everyone has room to grow. If Clockwork Acorn is unable to offer you the support or resources you need to continue growing, we might offer to work with you to find another path that is more suited to your needs.

Feedback and Honesty

Meaningful negative feedback can be hard to give or accept. As a team of kind people, it can be easy to keep negative feedback to yourself and not share it; but if we do this too much we can rob others of a chance to improve and grow. True kindness also requires honesty. Please endeavour to share negative (and positive) feedback in an effective way, so we can all learn and grow — we promise it gets easier the more you practise it.

When receiving negative feedback, it can be an incredibly difficult experience. Try to stay calm and give yourself the space to reflect on it with an open mind. Remember: the feedback is (hopefully) being given with the best of intentions. With enough practice, receiving this meaningful negative feedback will not only be easier to receive, you will start to understand the incredible value you can get from it, in your path of growth.

Navigating Challenging Situations

Clockwork Acorn only works well when we acknowledge that remote communication — especially via text — is more prone to misunderstanding than face-to-face communication. For this reason, we generally recommend that when a conversation starts to feel confusing, unpleasant or tense for any reason, you immediately switch to voice/video chat if possible. You should never feel reluctant to suggest this to the people who you are communicating with! Please note: some people have a tendency to retreat further into text when a conversation starts to get tense — if this describes you, you must please make a conscious effort to do the opposite. Tense conversations are virtually never improved by text, no matter how much you might wish the opposite to be the case.

Clockwork Acorn also strives to have a diverse team. We consider this to be a big strength, but we must acknowledge that this diversity can sometimes make communication more difficult. You may have grown up under very different circumstances than other team members. Communication styles, emphasis on (and very definition of) “politeness”, and comfort with physical proximity are all examples of important interpersonal areas that may vary widely from culture to culture. Two equally wonderful people may have a completely different idea of the proper way to discuss a topic. What seems like an innocuous comment to one person might seem offensive to another.

We make a conscious effort to hire kind, decent people who want to be a force for good in the world. When you are interacting with another team member, and they say or do something that rubs you the wrong way, please remind yourself of this. It’s hard to be angry at someone when you stop and think “They care about their work, and they are probably under stress, and/or they may not realise that what they are saying is likely to irritate me. There may also be a simple misunderstanding underlying this situation.” In other words, try to give others the benefit of the doubt.

In any tense situation between team members, there are half a dozen innocent things that might be underpinning the tension. Being remotely distributed and chatting via the imperfect medium of text only exacerbates such tensions. Odds are high that you’re both lovely, hard-working people who are simply having a resolvable disagreement.

If you’re struggling to work effectively and happily together with anyone, please don’t be afraid to talk to other team members (especially Francois) about it. We’ll help, as discreetly as you want us to, and we’ll be very happy to do so!

Vacation and Sick Leave

We strive to be an important but not dominating part of your life. You should obviously take weekends and public holidays off, and regular small breaks throughout a work day/week are great (remember we have flexi-hours), but we think it’s important for you to take some extended time away from work for rest and recovery, on a regular basis throughout the year.

Full-timers have a “20 to unlimited” days of paid vacation per year. In other words:

  • Minimum allowance of 20 work days paid vacation per year, as stipulated in your agreement.
  • We highly recommend you take all 20 days. We track it to make sure you aren’t overworking.
  • Beyond that, our policy is that you can take unlimited additional paid vacation, as long as you’re mindful of your work responsibilities.

Contractors are usually paid per day/hour and can take as much time off as they like, but it is unpaid (pay should be adjusted to give them the flexibility to do this reasonably).

When scheduling vacations, it’s sensible to consider project deadlines, but sometimes conflicts are unavoidable. Just give people plenty of notice when you plan to take a lot of time off. Try hard not to be away during the weeks just before and during a major milestone, as that will increase the stress of your team.

People get sick from time to time, and sometimes also need to care for others. We trust that team members will take the appropriate amount of time to take care of their health and that of their loved ones. If you are able to, please try to post to Slack to let others know you need to take sick leave. If the amount of sick leave taken starts to meaningfully detract from the quality of your work, we’ll address that with individuals at the time.

See also: Out of Office.

Glossary

  • CA / CWA: Clockwork Acorn.
  • DM: Direct Message, usually via Slack.
  • ETT: Enter the Titan
  • TN: Terra Nil
  • WID: What I Did. Message posted to the #wid Slack channel to describe what you worked on that day. See A Typical Day for more info

Your Zeroth Task

At Clockwork Acorn, we want to be continually improving as a team. However, it can be really easy to get stuck in our ways and not notice that something could be better. This is where you come in! As a new team member, your perspective can give you valuable insights or ideas about how we do things. When you join the team, please start a (private) document where you take notes about anything that you find unclear, seems weird/odd, or is just simply a bad process in your eyes. After your first few weeks, please share this document with others, so we can try to learn from you and improve things. We call this your zeroth task to not be confused with your first work task on a project.

If you add something to your list and afterwards resolve it: feel free to cross it off your list (like this) but please keep it there so we see if it keeps coming up for multiple people. Maybe we need to introduce something better or update this doc?

If anything is blocking you from working effectively you should bring it up immediately, not wait until this list is shared. This task is about the longer-term team/company processes and slowly making Clockwork Acorn better, not a way to inhibit your onboarding.

History and Sharing

A huge inspiration to this handbook was Francois’ experience at Spry Fox from 2017 till 2023. In fact, sections were lifted almost verbatim from the Spry Fox handbook (with permission). If you find this handbook useful in your game dev journey, please consider passing on the love in a similar way so others can learn from you, like sharing your new revised handbook. Let’s make this a better world together!