Running a software-based business requires more than beautiful code or a popular product. Managing cash flow and taxes can feel unimportant or difficult, but getting them right is as vital to our success as product design.
Fortunately, many services exist which make things like bookkeeping, receipts, signatures, and invoicing much easier.
Some principles have helped us streamline our operations:
- Outsource things which are super important but we are not excellent at.
- Spend time selecting a vendor and occasionally spend time reevaluating other vendors.
- Automate repetitive tasks.
- Give everyone "admin" access to as much as possible to avoid bottlenecks.
- Try to avoid building internal tools. It requires time and money to build and makes us reliant on ourselves when things don't work.
- Our problems are not unique. We will try manual processes first. When we do build something, it is usually after using other things for years.
Every full-time employee gets an American Express corporate card for business expenses. We've hired trustworthy people. Use your best judgement on how much to spend and what is a business expense. It saves time and treats people like adults.
We buy things. The IRS appreciates it when we track those purchases. So do we, in order to know whether we're profitable.
In the US, we use Zoho to send all receipts (meals, travel, books, computers) to our accountant.
We use Gmail for our email.
We use Google Calendar for our calendars.
We use Google Docs for our editable documents.
We prefer Google Docs because they are:
- Easily sharable by URL. Everyone has a browser, not everyone has MS-Office or OpenOffice installed.
- Always up to date with the latest edits.
- Enable real-time collaboration, like group meeting notes.
- Autosaved to the cloud, so no worrying about backup.
- Are as easy to find as Googling something.
- Without document type versioning (e.g. xls vs. xlsx).
These tools are not well-suited for large documents or complicated spreadsheets, but broadly these are not problems we have. We write code and are biased toward minimal documentation and against upfront specs so we rarely write long documents.
For cases where we are writing large spreadsheets, we find it's faster to snap together a small app to do the job. This is a good time to ask if such complicated analysis is really necessary.
When documents are mostly similar with slight variations (like contracts), we create templates using Pages and export to PDF for external use.
We over-communicate with clients in-person and online to avoid having scheduled meetings. Every problem arises from poor communication.
When we need to meet for a discussion, we aim for 30 minutes spent in-person.
When working remotely, Google Hangouts are indispensable as the "next best thing". They are easy to set up, sharable by URL, and let us get a look at whoever we're talking to.
Screen-sharing is also very easy, when necessary. We have used Hangouts for client meetings, candidate interviews, and company meetings.
We use conference lines that are part of our VoIP system, provided by OnSip, for voice conferencing.
Supporting Strategies provides us with an outsourced bookkeeper, controller, and tax accountant/CPA.
We use BlueDart to receive all paper mail for our offices.
We interact with them mostly through email. It's very efficient and we pay for what we use, which is great for scaling.
Our accountants review Clockify for new invoices and new payments on a daily basis and input them into Zoho Expense. If any checks or wire transfers have come in, they are entered into Clockify and Zoho Expense. Clockify sends payment received email notifications to both clients and the management team.
All our receipts go to them automatically.
Our CPA is excellent and provides these services for us:
- Making sure payroll happens regularly and correctly.
- Gathering our accounts payable and making sure we pay partners promptly.
- Preparing monthly P&L statements, broken down by services and products.
- Preparing our taxes.
- Making sure cash flow, checking account, savings account are in order.