The one person dev business tools I run today are the result of a few painful lessons, not a wishlist. When I went full-time freelance I was also, overnight, the entire sales team, the accountant, the project manager, and the support desk. The mistake I made early was trying to fix that with software — I signed up for a CRM, a fancy proposal app, two time trackers, and a project tool, and within a month I was spending more time feeding the tools than building for clients. The real lesson: every tool you add is a subscription, a login, and a context switch. The goal is the fewest tools that remove genuine friction, so the billable work stays front and center.
Why the tooling matters more for one person than for a team
On a team, overhead gets distributed — someone owns invoicing, someone owns the pipeline, someone answers the client. Solo, all of that lands on the same calendar as the code. I tracked it for a quarter: roughly 30 percent of my hours were non-billable admin. Good tools did not eliminate that, but they cut it to around 15 percent, which is effectively a full extra billable day every week. That is the whole reason to be deliberate about your stack — not productivity theater, just hours bought back.
What I actually use, by category
Here is the real stack, grouped by the job it does. I have deliberately kept it small. Where one tool covers two jobs, I let it, even if a dedicated app would be marginally better — the cost of a second login almost never justifies the marginal gain.
Client and project management
I run everything in Notion. One workspace, one database per client, with a simple board for the active work: Backlog, This Week, In Review, Done. I tried Trello and ClickUp; both were fine, but Notion doubles as my docs, my meeting notes, and the place I keep the client's credentials and decisions. For a solo operator, having the project board and the project knowledge in the same place beats a slightly nicer Kanban view.
Invoicing and accounting
Invoicing is where I am strictest, because cash flow is the whole business. I use Wave for invoicing and basic bookkeeping — the invoicing, recurring invoices, and automatic payment reminders are free; the only charges are payment-processing fees if a client pays by card, and I export to a simple spreadsheet for tax. The automatic reminder is the single highest-leverage automation I have — clients pay late not out of malice but because the invoice slipped down their inbox. Reminders that fire automatically at 3, 7, and 14 days after an invoice is due have collected money I used to chase by hand.
Contracts and proposals
I never start work without a signed agreement, and I never write one from scratch anymore. I keep a templated proposal and a templated contract in plain markdown, fill in the specifics, and send the contract through a free e-signature tool. Templating the proposal alone took my turnaround from half a day to about twenty minutes. If you want my take on the deal terms themselves — scope, deposits, milestones — I wrote that up in pricing freelance development work.
## Proposal — [Project name]
**Prepared for:** [Client] **Date:** [Date] **Valid for:** 14 days
### Problem
In one or two sentences, the outcome they are buying — not the tech.
### Scope (what is included)
- Deliverable 1
- Deliverable 2
### Out of scope (priced separately)
- The thing they will ask for later
### Timeline & milestones
- Milestone 1 — [date] — [amount]
- Milestone 2 — [date] — [amount]
### Investment
Fixed: $X total. 50% deposit to start, balance on delivery.
### Next step
Reply "approved" and I will send the contract + deposit invoice today.Time tracking
I use Toggl Track, even on fixed-price work. The point is not billing — it is knowing my real effective hourly rate so I can price the next project honestly. A job that felt profitable can turn out to be $22/hour once you count the revisions, and you only learn that if you track. Two clicks to start a timer; that is the whole discipline.
Communication
Email and one shared channel per client, nothing more. I push clients toward asynchronous, written updates and resist getting added to their internal Slack — that way lies scope creep and 11pm pings. A short weekly written summary (what shipped, what is next, what I need from you) prevents most status-meeting requests before they happen.
Code, CI/CD, and hosting
Git on GitHub, deployments through GitHub Actions, hosting on AWS for anything that needs to scale and a cheap VPS for everything else. The pipeline is non-negotiable for a solo dev: I cannot afford to babysit deploys or fix a broken production push at midnight. I documented the exact workflow in my CI/CD pipeline with GitHub Actions for Laravel guide. Push to main, tests run, deploy happens, I get a notification — no manual steps in between.
AI assist
Claude Code is now a real part of the stack — for boilerplate, for first-pass code review, for turning a rough idea into a working scaffold, and for writing the documentation clients actually read. When you juggle personal projects and client work under different accounts, keeping them separated matters; I walk through that in running multiple Claude Code profiles on Windows.
- Project/PM: Notion (board + docs + client knowledge in one workspace)
- Invoicing/accounting: Wave, with free automatic overdue reminders
- Contracts/proposals: markdown templates + free e-signature
- Time tracking: Toggl Track, including on fixed-price jobs
- Comms: email + one channel per client, weekly written summary
- Code/deploy: GitHub + GitHub Actions + AWS / cheap VPS
- AI assist: Claude Code for scaffolding, review, and docs
What I dropped, and why
The stack got better mostly by removing things. Each of these felt necessary at signup and turned out to be pure overhead for a one-person operation.
- A dedicated CRM — at my volume a Notion table of leads does the same job for free
- A second time tracker — running two meant trusting neither
- A standalone proposal SaaS — a markdown template plus a PDF export beats a $29/month subscription
- Group chat apps for client comms — they invited interruptions and blurred scope
- A separate docs platform — Notion already held the knowledge, so this was a duplicate
The principle that decides every tool
Before I add anything, I ask one question: does this remove friction I feel every week, or am I just buying the feeling of being organized? If it does not save real hours, it is a tax. And the biggest wins are never the tools themselves — they are the automations layered on top: the invoice reminder that chases payment for me, the deploy pipeline that ships without my attention, the proposal template that turns a half-day into twenty minutes.
Every tool is also a subscription and a context switch. Pick the fewest that remove real friction, then automate the parts that repeat.
If you are setting up your own one-person operation, do not start by copying my list. Start by tracking where your non-billable hours actually go for two weeks, then add one tool at a time to attack the worst offender. The stack that fits is small, boring, and mostly automated — and that boring quality is exactly what lets you spend your day building instead of running the business around the building.

