Design
Taught myself Photoshop and other Adobe tools. Worked after school at a local design studio, where I learned product photography, client work, and production workflow. Later left to freelance for local businesses.
At 20, I am building SempreVenda, an offline-first point-of-sale and operating system for restaurants, bars, and cafés in Brazil. I also run the bar and café where I first encountered the problems it solves.
semprevenda.app.br (opens in a new tab) Technical note main.agnaldoguerra@gmail.com
Current status finishing the production version of SempreVenda and preparing it for deployment in a live restaurant environment.
01 Current work
A restaurant’s point-of-sale is not a back-office tool. It is in the hands of the staff through every service, and when it stops, trade stops. Most of the systems available here bill forever and take custody of the data the business runs on. The dependence is not only financial: when the record of your sales, your stock, and your history lives somewhere else, so does your ability to keep trading without it.
SempreVenda keeps selling when the connection drops, and the business buys the core system rather than renting it indefinitely. Sales, payments, stock, cash movements, and audit history all resolve against a single transaction model, so there is one answer to what happened during a service rather than four that disagree.
The product covers table service, orders, kitchen and bar production, payments, cash management, inventory, costs, and reporting: the whole of what a shift touches, rather than a checkout screen with reports attached to it.
The terminal keeps selling when the connection does not.
The business buys the core system instead of renting it indefinitely.
One model owns what a sale, a payment, and a stock movement mean.




Current status Rust kernel built; features migrating onto it.
02 Founder-market fit
I opened a bar at nineteen and later expanded it into a café. I still run it: hiring and paying staff, ordering from suppliers, counting stock, closing the till, reconciling card-terminal payments, and paying the software bills.
That is where I learned what unreliable restaurant software costs in practice. I have seen orders appear on one screen but not another, card-terminal totals fail to match the POS, and a line form at the counter while the terminal restarts. These are not back-office inconveniences; they interrupt service while customers are waiting.
I am not building software for a customer I understand only through interviews. I operate the same category of business I am building for.
03 Technical judgment
The first version of SempreVenda proved the product’s scope: it did enough of the job to show the shape of the whole thing. It also spread the rules of the business across the application, so the answer to what a sale was depended on which part of the code you asked.
I stopped adding features. Rather than continue compounding, I rebuilt the transactional foundation as a single kernel in Rust. A kernel here means one piece of the system, and only one, is allowed to decide what happened: every sale, payment, and stock movement is submitted to it, and nothing else may write the record.
Typed commands in, validated state transitions and receipts out, safe to retry, defined behavior on crash, and an audit trail that is written rather than reconstructed. For the operator that means one figure at the end of the night, and a record of how it was reached that nobody had to assemble afterwards. The kernel is finished. The production application is being rebuilt around it, with the interface holding far less authority than it used to.
04 Record
Taught myself Photoshop and other Adobe tools. Worked after school at a local design studio, where I learned product photography, client work, and production workflow. Later left to freelance for local businesses.
Joined a small sneaker-resale business. My first attempt was a Nike restock bot; it never worked, but I became the operation’s general problem-solver. Later, I sold websites to local businesses.

Built a coffee brand in Minas Gerais. Bought 60 kg sacks directly from farmers, transported them myself, worked with a local master roaster, packaged the coffee, and sold it to businesses and supermarkets.



Moved about 1,000 km alone to Ponta Grossa to study electrical engineering. Worked on an electric race-car project and helped organize university events attended by more than 700 people.


When I could not expand through my father’s boot business, I sourced boots from another factory and built my own sales operation in southern Brazil. It grew enough to hire a salesperson before eventually failing.


Opened a bar at nineteen and later expanded it into a café. Running it exposed the operational and software failures that led me to build SempreVenda.
Built the first version of SempreVenda. When I found its transaction logic fragmented across the application, I stopped feature work, built a central Rust transaction kernel as the single source of truth, and began rebuilding the production app around it.
I play classical piano and improvise jazz and blues. I have competed in boxing and still play tennis. I also cook, make cocktails, and ride motorcycles.
05 The pattern
I tend to learn by entering an industry, selling something real, and taking responsibility for the result.
My earlier projects taught me how to start, sell, and move quickly. Their failures taught me that speed only compounds when the underlying system is durable. SempreVenda is the company I am building with both lessons.
07 Contact
I am currently finishing the production version of SempreVenda and preparing it for deployment in a live restaurant environment.