I'm a full stack engineer, marketer and former startup founder. I enjoy working with startups, helping them build products and internal tools. I am a self-taught developer and everything I know I have learned by building interesting B2B products. I am always open to work opportunities, so feel free to drop me an email in case you want to connect.
NubeBar is a mobile app that helps bars and restaurants manage their alcohol inventory in order to avoid theft and boost revenue. For most bars and restaurants alcohol sales represent 40% or more of total sales. Alcohol also has the highest margins and is the most valuable inventory. Despite this, most businesses manage their alcohol inventory using manual, time-consuming methods that make inventory control a big challenge. NubeBar solves this problem.
Thanks to NubeBar's bar code and QR scanner, bar managers can do full inventory counts in a matter of minutes, not hours. And with the help of NubeBar's analytics module, bar managers have a detailed view of their inventory over time. NubeBar highlights any differences between reported sales and actual alcohol consumption, allowing bar managers to uncover theft or malpractice at the bottle level with milliliter precision.
I built the app using React Native, Django and Postgres. I like to think that I worked as a full stack entrepreneur because I did everything: customer research and development, sales, UI design, frontend engineering, backend engineering and customer support.
- Django
- Django REST Framework
- React Native
- Postgres
NubeBar allows bar managers to:
- Add new bottles to the inventory using the phone's camera as a barcode and QR code scanner.
- Track the liquid volume of each bottle over time.
- Remove empty bottles from the inventory.
- Parse sales reports from third-party point of sale software.
- Perform daily inventory counts.
- Generate variance analysis reports to compare alcohol sales versus actual consumption.
- Load drink menus and recipes from Google Sheets files via the Google Sheets API.
- Create inventory cost reports.
- Manage multiple locations (for restaurant and bar chains).
- Manage multiple storage locations.
- Preload more than 500 spirit brands sold in Mexico via the Google Sheets API.
- Validate the legitimacy of purchased bottles by scrapping the federal government's website.
Check out the backend repo (Django).
Check out the mobile app repo (React Native).
Watch a quick video of the app here
Dots is a YC-backed company that helps manage Discord and Slack communities at scale, providing custom onboarding flows and analytics. I helped them build an analytics dashboard where community managers could check out critical data such as active users, popular threads, user retention and community growth over time.
The frontend is built with React, Ant Design and Recharts. The dashboard fetches data direclty from the Postgres database thanks to Supabase and its RPC functionality which executes complex queries in the form of stored procedures.
Watch a quick video of the dashboard here
Culina Health is a NY startup that connects people who want to eat healthier with registered dietitians around the US. They needed to build a complex multi step form that could be reused later to build other complex forms inside the company.
Building convoluted forms is not a trivial thing so I used Formik, a battle-tested library that simplifies the process and provides great flexibility thanks to its React Context-based approach and its integration with Yup to handle complex validations.
- Accomodates any number of steps/screens
- Follows different routes depending on user input
- Built with React Router v6, Formik and Typescript
- Form validation handled with Yup
- Styling done with Tailwind CSS
- Handles image uploads with React Dropzone
- Stripe integration
An app that connects to the Yelp API and searches for the worst rated parking spaces in America. Built for Air Garage, a YC startup that automates the operation of parking lots and enables churches and businesses to rent out parking to drivers on demand. Although the app looks quite simple, it deals with a couple of technical challenges under the hood. First, it's not possible to make requests to the Yelp API using a regular frontend client. Second, the Yelp API does not provide any functionality to search and sort businesses by reverse ratings. To solve these challenges the app includes a backend that handles requests to the Yelp API and performs a series of tricks to sort parking lots from worst rated to best, maintaining a nice set of paginated results.
Built with:
-
React
-
Styled components
-
Node / Express