fleet/handbook/business-operations
2024-01-17 14:32:54 -06:00
..
Application-security.md Reorganize Fleet documentation (#12871) 2023-07-27 17:40:01 -05:00
README.md Remove Revops responsibilities (#16178) 2024-01-17 14:32:54 -06:00
security-audits.md Update security-audits.md (#14172) 2023-09-27 09:35:25 -07:00
security-policies.md Update security-policies.md (#15977) 2024-01-09 04:38:52 -06:00
security.md Reorganize Fleet documentation (#12871) 2023-07-27 17:40:01 -05:00
vendor-questionnaires.md Update vendor-questionnaires.md (#14619) 2023-10-18 23:36:45 -05:00

Business Operations

This handbook page details processes specific to working with and within the Business Operations (BizOps) department.

Team

Role Contributor(s)
Head of Business Operations Joanne Stableford (@jostableford)
Business Operations Engineer Nathan Holliday (@hollidayn), Isabell Reedy (@ireedy)

Contact us

  • To make a request of this department, create an issue and a team member will get back to you within one business day (If urgent, mention a team member in #g-business-operations.
    • Please use issue comments and GitHub mentions to communicate follow-ups or answer questions related to your request.
    • Any Fleet team member can view the kanban board for this department, including pending tasks and the status of new requests.

Responsibilities

The Business Operations department is directly responsible for the functions of all Finance, People, Legal, IT, and Revenue Operations (RevOps).

Run payroll

Many of these processes are automated, but it's vital to check Gusto and Plane manually for accuracy.

  • Salaried fleeties are automated in Gusto and Plane.
  • Hourly fleeties and consultants are a manual process each month in Gusto and Plane.
Payroll type What to use DRI
Commissions and ramp "Off-cycle" payroll Head of Revenue Operations
Sign-on bonus "Bonus" payroll Head of Business Operations
Performance bonus "Bonus" payroll Head of Business Operations
Accelerations (quarterly) "Off-cycle" payroll Head of Revenue Operations
US contractor payroll "Off-cycle" payroll Head of Business Operations

Reconcile monthly recurring expenses

Recurring monthly or annual expenses, such as the tools we use throughout Fleet, are tracked as recurring, non-personnel expenses in "🧮 The Numbers" (¶confidential Google Sheet), along with their payment source. Reconciliation of recurring expenses happens monthly.

Use this spreadsheet as the source of truth. Always make changes to it first before adding or removing a recurring expense. Only track significant expenses. (Other things besides amount can make a payment significant; like it being an individualized expense, for example.)

Register a domain for Fleet

Domain name registrations are handled through Namecheap. Access is managed via 1Password.

Access a background check

Fleet team members with access to Fleet's infrastructure undergo a background check provided through Vetty. Only the most recent background checks appear on the home page of Vetty's dashboard. To access a complete list of background checks run in Vetty, scroll down to the bottom of the candidates page and click "View Historical".

Secure company-issued equipment for a team member

As soon as an offer is accepted, Fleet provides laptops and YubiKey security keys for core team members to use while working at Fleet. The BizOps engineer will work with the new team member to get their equipment requested and shipped to them on time.

  • Check the Fleet IT warehouse before purchasing any equipment including laptops, monitors, and Yubikeys to ensure we efficiently utilize existing assets before spending money. If Fleet IT warehouse inventory can meet the needs of the request, file a warehouse request.

  • Apple computers shipping to the United States and Canada are ordered using the Apple eCommerce Portal, or by contacting the business team at an Apple Store or contacting the online sales team at 800-854-3680. The BizOps team can arrange for same-day pickup at a store local to the Fleetie if needed.

    • Note: Most Fleeties use 16-inch MacBook Pros. Team members are free to choose any laptop or operating system that works for them, as long as the price is within reason.

    • When ordering through the Apple eCommerce Portal, look for a banner with Apple Store for FLEET DEVICE MANAGEMENT | Welcome [Your Name]. Hovering over Welcome should display Your Profile. If Fleet's account number is displayed, purchases will be automatically made available in Apple Business Manager (ABM).

  • Apple computers for Fleeties in other countries should be purchased through an authorized reseller to ensure the device is enrolled in ADE. In countries that Apple does not operate or that do not allow ADE, work with the authorized reseller to find the best solution, or consider shipping to a US based Fleetie and then shipping on to the teammate.

A 3-year AppleCare+ Protection Plan (APP) should be considered default for Apple computers >$1500. Base MacBook Airs, Mac minis, etc. do not need APP unless configured beyond the $1500 price point. APP provides 24/7 support, and global repair coverage in case of accidental screen damage or liquid spill, and battery service.

Process an email from a state agency

From time to time, you may get notices via email (or in the mail) from state agencies regarding Fleet's withholding and/or unemployment tax accounts. You can resolve some of these notices on your own by verifying and/or updating the settings in your Gusto account.

If the notice is regarding an upcoming change to your deposit schedule or unemployment tax rate, make the required change in Gusto, such as:

  • Update your unemployment tax rate.
  • Update your federal deposit schedule.
  • Update your state deposit schedule.

In Gusto, you can click How to review your notice to help you understand what kind of notice you received and what additional action you can take to help speed up the time it takes to resolve the issue.

Note: Many agencies do not send notices to Gusto directly, so its important that you read and take action before any listed deadlines or effective dates of requested changes, in case you have to do something. If you can't resolve the notice on your own, are unsure what the notice is in reference to, or the tax notice has a missing payment or balance owed, follow the steps in the Report and upload a tax notice in Gusto.

Inform managers about hours worked

Every Friday at 1:00pm CT, we gather hours worked for anyone who gets paid hourly by Fleet. This includes core team members and consultants, regardless of employment classification, and regardless whether inside or outside of the United States.

Here's how:

  • For every hourly core team member in Gusto or Pilot.co, look up their manager (who they report to).
  • If any direct report is hourly in Pilot.co and does not submit their hours until the end of the month, still list them, but explain. (See example below.)
  • Consultants don't have a formal reporting structure or manager. Instead, send their hours worked to the CEO, no matter who the consultant is.

Then, send the CEO and each manager a direct message in Slack by copying and pasting the following template:

Here are the hours worked by your direct reports since last Saturday at midnight (YYYY-MM-DD):

  • 🧑‍🚀 Alice Bobberson: 21.25
  • 🧑‍🚀 Charles David: 3.5
  • 🧑‍🚀 Philippe Timebender: (hours not available until they invoice at the end of the month)

And here are the hours worked by consultants:

  • 💁 Bombalurina: 0
  • 💁 Jennyanydots: 0
  • 💁 Skimbleshanks: 19
  • 💁 Griza Bella: 0

More info: https://fleetdm.com/handbook/business-operations#inform-managers-about-hours-worked

Run US contractor payroll

For Fleet's US contractors, running payroll is a manual process:

  • Add the amount to be paid to the "Gross" line.
  • Review hours ("Time tools > Time tracking")
  • Adjust time frame to match current payroll period (the 27th through 26th of the month)
  • Sync hours and run contractor payroll.

Run US commission payroll

  • Update commission calculator with new revenue from any deals that are closed/won (have a subscription agreement signed by both parties) and have an effective start date within the previous month.
  • Let the Head of Business Operations know they can run the commission payroll. Use the off-cycle payroll option in Gusto. Be sure to classify the payment as "Commission" in the "other earnings" field and not the generic "Bonus."
  • Once commission payroll has been run, update the commission calculator to mark the commission as paid.

Convert a Fleetie to a consultant

If a Fleetie decides they want to move to being a consultant, either the Fleetie or their manager need to create a custom issue for the BizOps team to notify them of the change. Once notified, BizOps takes the following steps:

  • Confirm the following details with the Fleetie:
    • Date of change
    • Term of consultancy (time period)
    • Hours/capacity expected (hours per week or month)
    • Confirm hourly rate
  • Once details are confirmed, use the information given to create the consulting agreement for the Fleetie (either in docusign (US-based) or via Plane (international)), and send to their personal email for signature. Once signed, save in Fleetie's employee file.
  • Schedule the Fleetie's final day in HRIS (Gusto or Plane).
  • Update final day in "🧑‍🚀 Fleeties" spreadsheet.
  • Create an offboarding issue for the Fleetie converting to a consultant, and confirm with their manager if there is a need to retain any tools or access while they are a consultant (default to removing all access from Fleet email, and migrating to personal email for Slack and other tools unless there is a business case to retain the Fleet email and associated tool access).
  • Follow the offboarding issue for next steps, including communicating to teammates and updating equity plan.

Updating personnel details

When a Fleetie, consultant or advisor requests an update to their personnel details (name, location, phone, etc), follow these steps to ensure accurate representation across systems.

  • Team member submits a custom issue to update their personnel details (or BizOps team creates if the request comes via email or is sensitive and needs a classified issue).
    • If change is for a primary identification or contact method, ask for evidence of change and capture in employee's personnel file.
  • BizOps makes change to HRIS (Gusto or Plane) to reflect change.
    • Note: if making the change requires follow up steps, resolve those steps to action the change.
  • Once change is effected in HRIS, BizOps makes changes to "🧑‍🚀 Fleeties" spreadsheet.
  • If required, BizOps makes any relevant changes to Fleet's equity plan.
  • If required, BizOps also makes changes to other core systems (e.g: creating a new email alias in google workspace; updating details in Carta; etc).
  • The change is now actioned, notify the team member and close the issue.

Process monthly accounting

Create a new montly accounting issue for the current month and year named "Closing out YYYY-MM" in GitHub and complete all of the tasks in the issue. (This uses the monthly accounting issue template.

  • SLA: The monthly accounting issue should be completed and closed before the 7th of the month.
  • The close date is tracked each month in KPIs.
  • When is the issue created? We create and close the monthly accounting issue for the previous month within the first 7 days of the following month. For example, the monthly accounting issue to close out the month of January is created promptly in February and closed before the end of the day, Feb 7th. A convenient trick is to create the issue on the first Friday of the month and close it ASAP.

Check franchise tax status

No later than the second month of every quarter, we check Delaware divison of corporations to ensure that Fleet has paid the quarterly franchise tax amounts to remain in good standing with the state of Delaware.

  • Go to the DCIS - eCorp website and use the details in 1Password to look up Fleet's status.
  • If no outstanding amounts: the tax has been paid.
  • If outstanding amounts shown: ensure payment before due date to avoid penalties, interest, and entering bad standing.

Check finances for quirks

Every quarter, we check Quickbooks Online (QBO) for discrepancies and follow up on quirks.

  • Check to make sure bookkeeping quirks are all accounted for and resolved or in progress toward resolution.
  • Check balance sheet and profit and loss statements (P&Ls) in QBO against the monthly workbooks in Google Drive.

Report quarterly numbers in Chronograph

Follow these steps to perform quarterly reporting for Fleet's investors:

  • Login to Chronograph and upload our profit and loss statement (P&L), balance sheet and cash flow statements for CRV (all in one book saved in Google Drive.
  • Provide updated metrics for the following items using Fleet's KPI spreadsheet.
    • Headcount at end of the previous quarter.
    • Starting ARR for the previous quarter.
    • Total new ARR for the previous quarter.
    • "Upsell ARR" (new ARR from expansions only- Chronograph defines "upsell" as price increases for any reason. - Fleet does not "upsell" anything; we deliver more value and customers enroll more hosts), downgrade ARR and churn ARR (if any) for the previous quarter.
    • Ending ARR for the previous quarter.
    • Starting number of customers, churned customers, and the number of new customers Fleet gained during the previous quarter.
    • Total amount of Fleet customers at the end of the previous quarter.
    • Gross margin %
      • How to calculate: (total revenue for the quarter - cost of goods sold for the quarter)/total revenue for the quarter (these metrics can be found in our books from Pilot). Chronograph will automatically conver this number to a %.
    • Net dollar retention rate
      • How to calculate: (starting ARR + new subscriptions and expansions - churn)/starting ARR.
    • Cash burn
      • How to calculate: start of quarter runway - end of quarter runway.

Grant equity

Equity grants for new hires are queued up as part of the hiring process, then grants and consents are batched and processed quarterly.

Doing an equity grant involves:

  • Executing a board consent
  • The recipient and CEO signing paperwork about the stock options
  • Updating the number of shares for the recipient in the equity plan
  • Updating Carta to reflect the grant

For the status of stock option grants, exercises, and all other common stock including advisor, founder, and team member equity ownership, see Fleet's equity plan. For information about investor ownership, see Carta.

Fleet's equity plan is the source of truth, not Carta. Neither are pro formas sent in an email attachment, even if they come from lawyers.

Anyone can make mistakes, and none of us are perfect. Even when we triple check. Small mistakes in share counts can be hard to attribute, and can cause headaches and eat up nights of our CEO's and operations team's time. If you notice what might be a discrepancy between the equity plan and any other secondary source of information, please speak up and let Fleet's CEO know ASAP. Even if you're wrong, your note will be appreciated.

Deliver annual report for venture line

Within 60 days of the end of the year, follow these steps:

  • Provide Silicon Valley Bank (SVB) with our balance sheet and profit and loss statement (P&L, sometimes called a cashflow statement) for the past twelve months.
  • Provide SVB with our board-approved annual operating budgets and projections (on a quarterly granularity) for the new year.
  • Deliver this as early as possible in case they have questions.

Update weekly KPIs

  • Create the weekly update issue from the template in ZenHub every Friday and update the KPIs for BizOps by 5pm US central time.
  • Check the KPI sheet at 5pm US central time to ensure all departments have updated their KPIs on time. If any departments are delinquent, notify the department head and let the Apprentice to the CEO know so they can put it on the agenda for their next one-on-one with the CEO.

Enroll a macOS host in dogfood

When a device is purchased using the Apple eCommerce store, the device is automatically enrolled in Apple Business Manager (ABM) and assigned to the correct server to ensure the device is in dogfood. You can confirm that the device has been ordered correctly by following these steps:

  • Log into ABM
  • Use the device serial number to find the device.
    • Note: if the device cannot be found, you will need to manually enroll the device.
  • View device settings and ensure the "MDM Server" selected is "Fleet Dogfood". Screenshot 2023-11-21 at 11 08 50 AM

On occasion there will be a need to manually enroll a macOS host in dogfood. This could be due to a BYOD arrangement, or because the Fleetie getting the device is in a country when DEP (automatic enrollment) isn't supported. To manually enroll a macOS host in dogfood, follow these steps:

  • If you have physical access to the macOS host, use Apple Configurator (docs are here).
  • If you do not have physical access to the device, the user will need to undertake the following steps:
    • Install the fleetd package for your device from shared drive folder here.
    • Once fleetd is installed, click on Fleet desktop icon in top right menu bar, and select "My device".
    • In Fleet desktop, follow the instructions to turn on MDM.
    • Once complete, follow instructions to reset disk encryption key.
  • Disk encryption key will now be stored in Fleet dogfood, which signifies that the device is now enrolled in dogfood.

Enroll a Windows or Ubuntu Linux device in dogfood

To enroll a windows or Ubuntu Linux device in dogfood, instruct the user to install fleetd for their platform from internal shared drive folder here. Once the user has installed fleetd, verify the device is correctly enrolled by confirming the device encryption key is in dogfood.

Enroll a ChromeOS device in dogfood

ChromeOS devices are automatically enrolled in dogfood after the IT admin sets up automatic enrollment. This is done in dogfood by following the steps found in the dialog popup when selecting "Add hosts > ChromeOS" from the dogfood Hosts page.

Lock a macOS host in dogfood using fleetctl CLI tool

  • Download the lock command XML file from Google Drive here.
  • Customize any messaging that will appear on the locked device, and modify the pin for unlocking the device by editing the file in text editor.
    • Note you will need to safely store the recovery pin for the device, suggest using 1Password or other secure storage method
  • Run this command with fleetctl CLI tool: fleetctl mdm run-command --hosts=hostname --payload=Downloads/command-lock-macos-host.xml
    • Note that hostname must be replaced with Hostname in Fleet (not the display name)
    • Note that the payload path may change based on where the file is stored once downloaded
    • Note that if you haven't logged into fleetctl recently, will need to follow authentication steps (see Logging in with SAML (SSO) authentication ).
  • Device will be locked
  • When device needs to be unlocked, enter the security pin (from XML file) in the input field of the device
  • The device will then open to the regular login screen, asking for password
    • If you do not have the password available, you can choose the option to enter recovery key/disk encryption key (this option might be behind ? icon).
    • Get disk encryption key from Fleet dogfood (using the action menu from the individual host page).
    • Enter disk encryption key on laptop. This should prompt you to create a new password.
  • You will then be logged into the default device profile, and can complete any needed actions (wipe, recover data).

Rituals

The following table lists this department's rituals, frequency, and Directly Responsible Individual (DRI).

TODO: Verify each of these points to the correct link above. Then extrapolate into rituals.yml. (See CEO handbook page for an example.)

Ritual Frequency Description DRI
Key review every three weeks Every release cycle, a key review deck is prepared and presented. Head of Business Operations
Informing managers about hours worked Weekly See Informing managers about hours worked". Head of Business Operations
Payroll Monthly before payroll runs Every month, Mike McNeil audits the payroll platforms for accuracy. Head of Business Operations
US contractor payroll Monthly Sync contractor hours to payments in Gusto and run payroll for the month. Head of Business Operations
Commission payroll Monthly Use the commission calculator to determine the commission payroll to be run in Gusto. Taylor Hughes
Revenue report Weekly At the start of every week, check the Salesforce reports for past due invoices, non-invoiced opportunities, and past due renewals. Report any findings to in the #g-sales channel by mentioning Alex Mitchell and Mike McNeil. Taylor Hughes
Monthly accounting Monthly Create the monthly close GitHub issue and walk through the steps. (This process includes fulfill the monthly reporting requirement for SVB.) Nathanael Holliday
Quarterly grants Quarterly Create the quarterly close GitHub issue and walk through the steps. Nathanael Holliday
AP invoice monitoring Weekly Look for new accounts payable invoices and make sure that Fleet's suppliers are paid. Nathanael Holliday
Tax preparation Annually on the first week of March Provide information to tax team with Deloitte and assist with filing and paying state and federal returns Nathanael Holliday
Vanta check Monthly Look for any new actions in Vanta due in the upcoming months and create issues to ensure they're done on time. Nathan Holliday
Investor reporting Quarterly Provide updated metrics for CRV in Chronograph. Nathanael Holliday
Applicant forwarding Daily Whenever an application notification arrives in the BizOps slack channel, forward this notification to the hiring channel for that position. Joanne Stableford
KPI roundup + weekly update Weekly Update KPI spreadsheet with BizOps KPI data by 5pm US central time every Friday. At 5pm check other department KPIs to make sure they have been updated, and if not, notify DRIs and the apprentice to the CEO which KPIs have not been updated. Nathanael Holliday
Deliver annual report for venture line Annually Within 60 days of the new year, provide financial statements to SVB, along with board-approved projections for the new year. Joanne Stableford

Stubs

The following stubs are included only to make links backward compatible.

Vetty

Please see hanbook/business-operations#access-a-background-check.

Role-specific licenses

Please see hanbook/business-operations#grant-role-specific-license-to-a-team member.

Recurring expenses
Tools we use

Please see hanbook/business-operations#grant-role-specific-license-to-a-team member.

Namecheap

Please see handbook/register-a-domain-for-fleet.