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
- 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 can get 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
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 Tallie 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
We prefer Google Docs because they are:
- Easily sharable by URL. Everyone has a browser, not everyone has
Microsoft Office 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
We use Google Sheets for our company-wide budget and forecast.
We also often use Google Sheets to collect or analyze other data.
We can often create an initial version of something new there using
to avoid building a custom app.
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 accountant, bookkeeper and controller. They provide us
with a hosted QuickBooks install that we can access via Remote Desktop.
They also receive our paper mail. If the mail contains a check, they deposit
it into our bank account.
They are excellent and provide 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.
- Making sure cash flow, checking account, savings account are in order.
- Sending out invoices regularly.
- Following up with clients when we don't receive payment on time.
Our law firm is Gesmer Updegrove LLP. They are
able to provide us with legal support for almost everything we need, which is
most commonly client, real estate, and company/stock matters. We also engage
Costa & Riccio LLP for US immigration matters.