It’s been a year and a half since Recidiviz hired its first employee, and in that time we’ve built a team of nearly 20 engineers, product managers, and designers. More people in tech are looking to transition to purpose-driven work, and we’ve now been asked several times about how we built Recidiviz without getting bogged down in HR and compliance tape.
We had a few constraints out of the gate that have guided us on which products and services we use:
Our most delightful productivity tool is trot.to. If you’ve worked at Google you’ll be familiar with ‘go links’ — a kind of URL-shortener that works inside an organization. Think of it as verbal bookmarks: you can tell anyone on a project that the mocks are at go/project-mocks, the timeline at go/project-schedule, and the status dashboard at go/project-dash — instead of a bunch of gnarly long links to copy, paste, memorize, or bookmark. It may sound like a small thing, but they’re very popular internally. We use trot.to over some of the alternative services because it works reliably, doesn’t require any risky permissions in Chrome, it’s open source and we always have the option of transitioning it to on-prem if necessary for security in the future.
We use GSuite for most of our productivity software (email, documents, etc.) It’s robust, secure, familiar, and affordable. Plus, App Script makes it easy to automate small workflows when we need to. The only downside is that in the criminal justice space, CJIS compliance is important for any systems used for especially sensitive data — and GSuite doesn’t have that compliance yet. As a result, we wouldn’t be able to analyze case-level policing data in (for example) Google Sheets. So far we haven’t found this to be a large drawback — most of our data science work is done locally, in Python, or on our production systems. It was a pretty minor change to ban it from GSuite. (In addition to using GSuite overall, we’ve had small contingents on our team fall in love with Dropbox Paper and Coda for documents or project tracking.)
For communications and collaboration we use Slack, which is just head-and-shoulders above most other team communications apps. We continue to use Google Hangouts for video conferencing, though — it’s free with GSuite, browser-based, and integrates well with Google Calendar.
As a 501(c)(3) and as a recipient of federal and restricted foundation grants, we have more strict accounting requirements than many organizations. Employee time has to be expensed against grants by the hour, and project expenses have odd rules (e.g., you can expense a taxi ride against a federal grant, but not a tip for the driver). We realized early on we’d need an accounting team that was familiar with some of the unique constraints on nonprofits.
After talking to several similar organizations, we decided to use Smarter Good for our accounting. It was started by a serial social entrepreneur, and is purpose-built to support nonprofits. They took the time early on to get to know our business, helped us to set up our internal accounting practices, and fully maintain our books (we chose to use Quickbooks, which has better support for restricted grants than most other accounting software). So far, this has turned out to be a great decision.
We build grant budgets and budget projections internally, but Smarter Good has helped us to ensure that our records, taxes, and invoices against grants are always consistent and correct, and that we have a clear monthly picture of where our finances sit against projections, and sources of any growing costs.
We use Chase for banking, and Vanguard to accept stock donations. These are pretty stuffy old institutions, and in this case we prefer things that way — our operating funds are business critical, and this is the one area where we’re less comfortable using new startups, because startups can come and go quickly. We looked at several other banks, including a few with higher rates of return on business savings, but chose Chase because of better service during the vetting process (which hasn’t changed since we signed up).
We try to keep as much of our employees’ business expenses on company cards as possible — it’s easier to account for, cuts down on complexity in expense reports, and ensures our employees never need to spend out-of-pocket. We set up Brex early on because their physical + virtual cards were convenient, and their management system very easy to use. (Also convenient: Brex didn’t need a personal guarantee or long company credit history to back the company cards, something most banks would ask for.)
We use Expensify to handle expense management, and ensure that all expenses are tracked against the specific function and program they map to (again, for grant management). Brex offers basic expense management, but it’s nowhere near as robust as Expensify, which is why we use both. Expensify integrates well with Quickbooks tags, so that grant-specific expenses are tracked all the way through with very little manual work needed on our end.
(Expensify has become very aggressive in marketing its own company cards — doubling their price for plans without them, and targeting our end-users with marketing to pressure admins. We don’t have anything against Expensify’s cards, but the tactics are troubling — we’re likely to switch providers here soon, and will update this section when we do.)
We looked at both the stodgy old benefits providers (Trinet, Workday, ADP) and some of the new entrants. In the end, we were impressed with Gusto and JustWorks — they felt modern, well-built, and intuitive. Having used stodgier systems in past lives, we think employers often don’t appreciate how much their HR software represents them to staff — and how an old, slow, corporate web app for payroll and benefits can reflect indifference or worse for the organization.
We ended up picking JustWorks over Gusto, mostly because of their status as a PEO. This was a bit more expensive, but meant we had less tax paperwork and less active benefits management (and so less to mess up). So far we’ve loved JustWorks — it’s been incredibly simple to use without losing the nuance, and has very responsive support. Managing HR for our growing team has been remarkably lightweight so far.
Through JustWorks we’ve been able to continuously and affordably add benefits — from the more common healthcare, dental, and vision, to the less common commuter, gym benefits, 401k, etc.
Restricted grants, a common source of funding for nonprofits, require hourly accounting of staff work. There were several challenges here:
We looked around at out-of-the-box solutions, such as TSheets, but none of them really addressed these issues. (Also, we really didn’t like that a lot of these apps track employees’ locations for employers by default — definitely doesn’t communicate a trusting culture.)
Eventually we built a spreadsheet-based tracking system for this, which is filled out weekly instead of as-it-happens, by managers, and automates some of the translation between time spent on each function and project into what our accountants need for invoicing against grants. This still isn’t great, but it’s significantly reduced overhead and friction for staff compared to more traditional approaches.
Lastly, our contracts have often required that we have a variety of insurance for Recidiviz (including General Liability, Directors & Officers, and Cyber insurance). We’ve worked through CoverWallet for this, and it’s been convenient to manage everything (from quote to renewals) online and in one place with a single contact and round-the-clock support.
Recidiviz has been remote since early March, but for our first year we leased offices in co-working spaces. Given that, it was important to us to lease rooms with doors that our team could lock (mainly for data security, given compliance requirements).
Co-working was more expensive than renting directly, but it came with stocked kitchens (coffee, tea, and snacks) and regular cleaning, which were helpful as perks for employees coming from big tech. More importantly, the convenience of renting month-to-month allowed us to move each time our team outgrew its office, which happened several times in our first year, instead of paying extra for a larger office early on when funding was less certain.
Recidiviz is still early in our work, but it’s been encouraging to see so many other people moving from big tech to purpose-driven initiatives at the same time.
From the start, we worried that Recidiviz would get so bogged down given the space we’re in (for grants, government data access, etc.) that we wouldn’t have much time for our core mission. Thankfully, this side of the company has been a light lift. There are so many modern, well-built tools now, from productivity to payroll, that we’re only just starting to look for our first operations hire — after nearly 20 employees, and 18mo of working in the space. Hopefully this post will help provide some useful guidance for others starting down the same path.
We’ll try to post more about getting started as a nonprofit tech company in the future (we get asked a lot about fundraising, tech stack, security and compliance), but in the meantime just drop us a line at firstname.lastname@example.org if we can be helpful.