I Was the Problem I Was Solving
December 2024. I was sitting in a café in Kharkiv with my laptop open to three tabs: FreshBooks, a spreadsheet, and a calculator. I had just sent an invoice to a client in Germany. The invoice was in euros. My accounting was in dollars. My rent was in hryvnias. FreshBooks handled the invoice beautifully. Then I exported it to CSV, opened the spreadsheet, converted currencies manually, and updated my "real" tracker — the one that told me whether I could pay rent next month.
I paid FreshBooks $19 that month. I paid my bank $12 in conversion fees. I paid with two hours of my life that I would never get back — just to understand where I stood.
That was the moment. Not dramatic. Not cinematic. Just a guy in a café realizing: I'm building systems for businesses all day, and I don't have a system for myself.
Twenty Years of Building for Others
Factories. Retail chains. Service companies. For twenty years, my job was the same: find the inefficiency, build the tool, make it work. I built ERP modules, inventory trackers, payroll systems. I sat with accountants and managers and watched them struggle with software that was too complex, too expensive, or too dependent on the cloud.
I was good at it. I understood their workflows better than they did. I could map a business process in my head and translate it into code in a weekend.
But I never used the tools I built. They were for "enterprises." For "teams." For people with departments and budgets and IT support. I was the consultant who came in, fixed the system, and left.
Then, in 2023, I started freelancing. And I discovered that the software I had been building for others was completely useless for me.
The Freelancer's Trap
I thought freelancing would be simpler. No office. No meetings. No enterprise software. Just me, my skills, and my clients.
Instead, I found myself juggling:
- FreshBooks for invoicing ($19/month)
- Toggl for time tracking ($10/month)
- A spreadsheet for actual accounting (free, but I spent 3 hours a week maintaining it)
- Google Drive for client files (free, until I ran out of space)
- A notebook for everything else
Every month, the same ritual: export from FreshBooks, import to spreadsheet, reconcile currencies, check if the client paid, send a reminder, update the tracker, hope I didn't forget anything.
And every month, the same anxiety: where is my data? On FreshBooks' servers. On Google's servers. In a spreadsheet on my laptop that I forgot to back up. Spread across five services, none of which talked to each other.
I tried switching. Wave was "free" but charged 2.9% per transaction. QuickBooks was $30/month and built for accountants, not freelancers. Bonsai was beautiful but locked me into their ecosystem. Every tool had the same model: your data lives on our servers, and you keep paying to access it.
That model never felt right to me. But I tolerated it — because I didn't see an alternative.
The Last Straw
November 2024. I was working on a project for a client in the legal sector. Sensitive data. Client confidentiality. And I realized: I was storing their information on FreshBooks' servers. In the cloud. On someone else's computer.
I read their privacy policy. I read their security whitepaper. Both were impressive. Both said the right things. But at the end of the day, my client's data was on a server I didn't control, in a country I didn't know, protected by people I would never meet.
That week, I had a conversation with a friend who had been freelancing for ten years. I asked him: "What do you use for invoicing?"
He opened his laptop and showed me a folder. Inside: PDF invoices, a text file with client notes, and a spreadsheet. "I tried the cloud tools," he said. "Too expensive. Too complicated. And I don't trust them with my data."
I asked: "What about backups?"
He shrugged. "I email the spreadsheet to myself once a month."
That was the state of the art. That was the best a ten-year freelancer could do. And I thought: this is absurd. I can build systems for factories with a thousand employees, but I can't build a simple tool for myself?
The Decision
December 1, 2025. I opened a new folder on my laptop. I named it Lockmargin. No business plan. No market research. No pitch deck. Just a question: what would I actually want to use?
I wrote down three principles:
- My data stays on my machine. No cloud. No servers. No "we'll be right back" outages. If my laptop is in my bag, my data is in my bag.
- I pay once, own forever. No subscriptions. No "price increase" emails. No vendor lock-in. If I stop using it tomorrow, my data is still mine.
- It works without internet. I travel. I work from cafés with bad Wi-Fi. I don't want to wait for a page to load to send an invoice.
Those three principles eliminated 99% of existing tools. And they pointed to one architecture: a desktop application, local database, offline-first.
I chose Rust because I wanted speed and safety. I chose Tauri because I wanted a modern UI without Electron's bloat. I chose SQLite because I didn't want to run a database server. And I chose to build it alone because — honestly — I didn't want to explain my decisions to anyone else.
The First Month
December 2025. I was still freelancing — I had to pay rent. So I worked on LockMargin in the mornings and evenings, between client projects.
The first version was ugly. No design system, no animations, just forms and buttons. But it worked. I could create a client, generate an invoice, and export it to PDF. It took 3 seconds to open. My data was in a single file on my desktop. I could back it up by copying the file to a USB stick.
On December 15, I sent my first invoice from LockMargin. Not to a test client. To a real client. A €2,400 project. I held my breath when I clicked "Export PDF." The file generated. I attached it to an email. The client paid three days later.
That was the moment I knew this wasn't a side project. It was my system.
What I Didn't Know Then
I didn't know that building a product alone would take six months. I didn't know that I would rewrite the database layer three times. I didn't know that encryption would be the hardest problem I ever solved — or that I would need help from a security researcher I had never met.
I didn't know that I would dogfood my own product every day, finding bugs at 2 AM because I needed to send an invoice in the morning. I didn't know that the "simple" features — recurring invoices, time tracking, expense categories — would be ten times more complex than the "hard" ones.
I didn't know that I would fall in love with the process. Not the coding — the decision-making. Every feature was a choice: what matters to a freelancer? What can we cut? What is essential?
I didn't know any of this. But I knew one thing: I was building something I would use. And that was enough.
Why This Matters (To You)
If you're reading this, you're probably a freelancer. Or a consultant. Or someone who works alone and wonders why the tools you're using feel wrong.
They feel wrong because they were built for someone else. For teams. For enterprises. For people who have IT departments and budgets and compliance officers. Not for you.
LockMargin is built for the person who sends invoices at 11 PM from a hotel room. Who doesn't want to think about subscriptions. Who wants to know that their data is on their machine, encrypted, and no one else can see it.
That's who I was in December 2025. That's who I am now. And that's who I'm building for.
What's Next
This is the first post in a series. Over the next six months, I'll write about the technical decisions, the security audits, the features we cut, and the ones we kept. I'll be honest about what worked and what didn't. Because this isn't a success story — yet. It's a work in progress.
Follow the entire series at Building LockMargin.