Problem and process discovery are the keystones of greenfield app development.

For the last 2 months I’ve been building my wife an app to help with common issues in her fashion resale business.

In this time we’ve made some progress with software improvements, but like what happens most times during a company’s first consulting & software engagement, we also documented and improved on a lot of the existing business processes.

The 3 main ones we’ve been focusing on are pre-show, pre-shipping, and shipping.

Trust Recovery

All in all, wife’s newest mindset is “I’m going to ask you to do any part that is too annoying because I know you’ll just fix it with some sort of code,” which is a practice I’ve employed in throwing myself where I don’t belong at work to find and solve plenty of $100k problems.

The value of the reverse testing pyramid:

Something I’ve personally adopted for years but have kept a little hush-hush - I haven’t reconciled it with the typical big-team environments that I work in - is the reverse testing pyramid. Learning to write quick, highly integrated tests that cover integral or volatile functionality has been a way for me to maintain relatively high development speed (a typical day being ~5 bug fixes across various deployable apps, 1-3 features, and progress on a larger project) while maintaining a high level of confidence in the current state of the codebase.

The idea being that especially if you are in a new project that can have outsized impact and change the underlying business, focus on basic working verifications with the highest coverage closest to the user experience as possible until you have stability in business process and software functionality. In 2 months Wife has tested 3 pre-show listing strategies, 2 post-show organization strategies, and at least 2 ways of bundling cross show purchases during a buy period.

2 Months by the Numbers

  • 25 deployments of the web app
  • 9 deployments of the bookmarks, now browser website
  • 13 deployments of the API gateway
  • 411 Go & TypeScript cloud function deployments
  • 138 iOS builds → 12 TestFlight releases
  • 183 commits on main
  • 45 closed GitHub issues
  • 200 closed pull requests
  • 1 new programming language (Swift)
  • 137k lines of code
  • $100 in software costs
  • 22 new apps: 4 browser extensions, 1 iOS app, 3 web apps, 14 cloud functions
  • 3 broken air conditioners
  • 1 flooded basement
  • 1 sparrow rescued

Rapid iteration and feedback loops were the main focus of development, typically we would do shipping development changes Monday - Wednesday and then show development the rest of the week.

We also went from my-machine-only, to stable to-device builds, to test builds for iOS and a direct to production deployment strategy for almost everything else.

Every app that’s been made represents a unique set of capabilities in her business running processes and they all need to be able to respond to real-time changes, like testing a model being deprecated or Poshmark deciding that HTML anchor links are not cool man and removing users’ ability to open their sold orders in a new tab… paired with a search view that did not hold state between navigations means that order shipping times became an issue for basically all full-time resellers… WHY!? Oh well, this was a 5-minute change including the feature toggle on an extension settings page.

Wife moved to a stable TestFlight environment and her phone needed to be forcibly removed from Xcode after an almost accidental build during showtime… for those that don’t know, Xcode builds to devices forcibly open the app after the build.

2 Months of Business Impact

One of the wife’s 2025 goals is to reduce her hours compared to last year.

The changes we’ve made in the last 2 months allowed for a pretty significant impact.

Starting Consignment

The process improvements allowed for time to be spent on consignment - professional pickers from her sourcing friends have led to 4 people increasing their income. This led to her single biggest profit day last weekend. She can spend less time sourcing and typically has higher quality items during the show, with her sourcers able to pull a wider variety of items than typically sells in their own shows now.

She tried consignment ~3 years ago, but since she was doing listings and not live shows, the consignment process was not her bottleneck. It was the listing time. And the sale price of fixed used goods listings is pretty stable. Meanwhile, live shows can have a significant sales variance, listing setup was already lower (even lower with the app), and the higher quality brands and goods typically lift the price of all items sold in the show.

This ended up being her best June ever.

One non-money impact that is super important is how much more energized she has been having people involved in her business. She loves watching her friends shows more, and I’ve been seeing her message them more about the performance of specific items etc. I don’t think I could put a price on that sort of impact.

Eating the Vendor Lock-In Elephant

One of the riskier parts of her business, and any live fashion reseller right now, is vendor lock-in. Typically, you will choose a single platform to sell on - this is a relatively new market, being about ~3 years old for the current industry. Major lifecycle events being Whatnot’s expansion into fashion circa 2023, and top Poshmark resellers being invited to the early version of Poshmark Live around the end of 2022.

There are a couple issues we’ve seen with this vendor lock-in:

  • Changes to the website, instability of the platform, cancelled shows. We’ve seen this in ~5% of shows during this 2-month period.
  • Platforms are incentivized to add features and functionality, not stabilize sellers. We’ve seen this in prioritization of single show functionality, like in the reports and even navigating the site for shipping items. For instance - when you do bulk uploads, they don’t even populate in closet in order.

Also, wife is a data nerd as a former accountant and current spreadsheet wizard. She knows sellers will have their own unique most valuable brands, sizes, and maybe colors. She wants a better insight into her best show times, especially for her Super Buyers. And one of the earlier things she had me work on was the ability to distinguish new buyers, repeat buyers, and long return buyers. Each of these gets a different set of package business cards.

It’s hard to quantify the value of this impact, but she actually owns her sales data now and can come over my shoulder and engage in blatant manipulation by complimenting me until I make her report views. We just need to automate collection which is currently ingested via a manual collection bookmarklet action.

AI Observations

  • Around ~20k tokens for the user codebase, “total context development” work becomes untenable.
  • Codebase metaresearch tends to do well on Gemini 2.5 Pro’s 1 million token context models up to around the ~120k token mark.
  • The fundamentals are more important than ever when using AI to assist - small focused changes, tight known context, work started after research of current state of codebase + target package/functionality, refactor aggressively and often with pattern and code reuse. I noticed that my productivity is much higher when I adopt much smaller, focused component-based development earlier than I would when building strictly with human-known context.
  • In most environments I’ve worked in there has been a huge deficit of ‘SWE Attention’ to business practices and processes. The ability to effectively choose and make 5-minute, 30-minute, 1-hour, half-day, 1-day, and major changes to real business processes is something that AI simply cannot do for the foreseeable future. I think something like the next 5-10 years, easily. The LLMs are trained on generalized data, and do not build solid foundational approaches to business change, when to ask for feedback, when the requestor may be wrong, and complex social interpretation of feedback. Not only that, but LLMs cannot determine when the information they have is out of date - something that is almost fundamental to human development.
  • I’ve been a huge lover of ADRs, or Architecture Decision Records, for a long time. This project has really solidified an issue that I’ve consistently had with them: the value of the ‘current state definition’ being so good, vs. the potential of the ‘change history record’. Maintaining a current state of what types of changes are documented how, where, common patterns by product/deployable type in the agent markdown files has been one of the most valuable and instantly useful pieces of documentation I’ve written in a long time.

The Screaming Week of Gaston

June 23 - June 28th a sparrow nestling decided to join our lives. On the 22nd a nestling decided to jump out of the attic nest into our crawl space and scream for a day, something that was too loud to be outside from the bathroom. The next day I decided to go on the hunt, sure enough a little one which we named Gaston was stuck away from parents. We ended up having shared custody with the parents on our back porch for a week-long screaming session, at which point Gaston decided to become a fledgling. I put a “Bird In Progress” sign on the back door so we wouldn’t forget and scare Ma and Pa. They let us know when we were crossing the line. We learned where Gaston got his screaming from.

Highly recommend finding out which of your neighbors are The Animal People so they can tell you what the heck to do with this tiny bird in a washcloth you’re carrying out of your house.

What’s Next

The next month will be focused on:

  1. Enjoying a week off for summer! Resale business slows down a lot during the summer - perfect time for a break.
  2. Adding weekly show schedules, and starting a public page with subscription for show notifications.
  3. Integrating show item exports with the browser extension - Poshmark has a bulk upload feature, which uploads items out of order and messed up quantities and data so they need to be manually edited prior to the show. I already have working listing edit automation for the browser extensions that will completely remove this manual process.
  4. Wife wants in on the AI definitions - we will probably be adding customization to the specific generated elements for each item, support for audio details (like noting a stain, whether it’s consignment, recording measurements across items, etc).
  5. Onboarding friends! We demo’d the app early on to some reseller friends, then got an emergency browser extension out for the Anchor Link Debacle, but we’re getting ready to scale to another person’s resell flow.
  6. The next app - this was built with love for my partner, but I have more to do now that there’s a solid monorepo foundation for projects.
  7. Dealing with a large amount of birds getting too comfortable with us on the front porch.