TEN7 is a completely distributed company; we have no central office space. Though most of us live in the Minneapolis, Minnesota area, we all work from home (or various coffee shops).
It took some trial and error, but we have this distributed office thing down. We depend on several tools to help us communicate and be virtually present to each other. The most important rule of thumb is that it’s better to over communicate than under communicate. Post on Slack, share your status on the #attendance channel, jump on Zoom (preferably using video)—do whatever you need to in order to be virtually known.
We typically work during normal business hours: 8 a.m. to 5 p.m.-ish CST. That’s a big “ish.” We trust each other to put in 40 working hours a week, whether those hours are before the sun rises or after the kids have gone to bed. It’s not uncommon that a personal appointment runs long during the day, so you log a few evening hours. This is ok! We understand life happens. Do what you need to do, just keep everyone apprised of your status on Slack.
Slack is the tool we use daily for team and project communication. We’ve installed a ton of custom emoji packs in Slack, to keep things from getting too serious. You’ll be using the Slack status, and Slack channels.
Set your status on Slack using the following:
In Slack, topics are called “channels.” We have several types of channels: internal for everyone, internal for teams or topics, and channels for discussing client projects. With channels, it’s easy to scan them to see if there’s new information to pay attention to.
Here’s a cheat sheet for our most commonly used channels:
To learn more about how we use Slack, listen to our podcast episode “Blueprint Series #2: Slack.”
While we can do a lot of things over Slack, there are some things you just can’t do. We have a loose rule: if there are more than three back-and-forths on an issue in Slack, we take the conversation to Zoom to hash it out. We encourage regular check-in meetings over Zoom as well, as it’s just nice to see the faces of your coworkers if you’re staring at a screen all day.
Another thing that Zoom conferencing is great for is screen sharing. We share screens to review documents, presentations, or code. And I’m sure some of us are still pointing at the screen with our fingers.
Being remote can be great (puppy time, yay!), but we also know it’s important to come together in person. If you live close to another TEN7 team member, we encourage you to grab a coffee or a meal together! Otherwise, we have in-person meet-ups a few times a year. Sometimes it will be a working session and other times it will be a meal, because we all understand the importance of good food (by the way, check out the #food Slack channel).
For more information on working for a distributed company, read Yonder’s post “The Anatomy of a Successful Remote Worker.”
We use JIRA for issue tracking, but we also use it for time tracking and more importantly, client billing. If we make a code commit, the requirement is, there’s an issue in JIRA that maps to the code change. It’s easy for us to stick to that, because if we make a code change and there’s no issue associated with it, we can’t bill for it. We pull your hours and explanation of work and include it in the invoice to clients. Reporting is available at the account, project, team and user levels, which makes it invaluable for managing projects and client billing.
Time entry is important. And accurate time entry is even more important. We challenge each other to enter time daily to ensure accuracy. While billable hours for clients are crucial, it’s also important to accurately log time spent on internal TEN7 work, such as meetings and administrative tasks. We’re always looking for ways to become more efficient and accountable, and time tracking helps us do that.
Use Tempo (in JIRA) to submit your hours (including any paid time off) on a weekly basis. The Tempo workweek starts on Sunday at 12:00:00 a.m. and ends on Saturday 11:59:59 p.m. Please submit your hours first thing Monday morning, at least before the staff meeting at 11:00 a.m. CST.
The 40-hour workweek is split up into the following buckets:
If you’re doing billable work on a project for a client, you should have around 30 billable hours per week. Sometimes, billable work on internal projects where TEN7 is the client is approved, such as development work on the ten7.com website.
The remaining 10 hours could be spent on activities such as:
We’re all adults, and we trust each other to use good judgment.
We hope you’ll spend 10% of your workweek giving back to the community by contributing your talents—whether design, development, content or otherwise—to open source projects.
All internal hours should be tracked to issues under the TEN7 Internal project in JIRA. For example, you’d use issue T7IN-65 to enter holiday time for when the TEN7 office is closed, and T7IN-12 for PTO time. As always, ask if you have questions on how to do this!
We don’t believe in meetings for meetings’ sake. We’ll only hold meetings if we have a goal, if we need to meet with a client, or if it’s more efficient to hash things out in a meeting vs. doing it over Slack.
We have a weekly company meeting each Monday at 11 a.m. CST. Ivan will share updates, the team can connect, and anyone can bring any topic to the table.
If you’re a part of an Agile team, you’ll also have a daily standup. These happen at 9:30 a.m. CST sharp over Zoom.
Payroll is processed biweekly and your salary will be direct deposited every other Friday. When you receive your first paycheck, please verify that taxes, insurance, and 401(k), were accurately deducted.
We use Gusto to keep track of payroll - you’ll receive an invitation to setup your account for direct deposit.
You’ll receive a corporate American Express card to use on any TEN7 business-related expenses like travel, conferences, client lunches and so on. We don’t have hard and fast rules about things like _per diems; we just ask that you use your best judgement and keep expenses reasonable. It’s always okay to ask if you’re unsure.
Here are the core tools we use at TEN7. Take some time to review and familiarize yourself with them.
|Tempo for JIRA||Time tracker||Tempo tab in JIRA|
|1Password||Secure credentials database||https://teamten7.1password.com|
|Hubspot||CRM and Marketing||http://app.hubspot.com|
|InVision||Design mockups & prototypes||https://projects.invisionapp.com|
|firstname.lastname@example.org||General support request intake||https://mail.google.com|
|Slack||Client chat||#t7care_CLIENTNAME channel|
We’re building things for humans, and the people who use the sites we make are all different. Some of us are visually impaired, others are hard of hearing. Every single thing we build will be experienced uniquely and we should always keep in mind that these experiences should be accessible. We strive for WCAG accessibility in everything we do. It’s not a checkbox to be completed, it’s a continual improvement of our products. And it’s not something that a developer does once and forgets about. It’s a goal that each and every one of us needs to continually champion for the user, in every line of code we write, in every design we publish, and in every minute of support we spend on behalf of our clients.