SwireSep 2022 to Jan 20243 min read

Swire, the first business plan I ever wrote

Co-Founder & Full-Stack Developerios appmatchingpitch finalist

I co-founded Swire, a swipe to match iOS app for internships, built its interface and matching service, and took it to the Diamond Challenge final pitch round.

Role
Co-Founder & Full-Stack Developer
Period
Sep 2022 to Jan 2024
Team
Two co-founders
Stack
Figma, Swift, Combine, Node.js, Firebase Auth, Firestore
Competition
Diamond Challenge, final pitch round
AI in the loop
A matching model trained on swipes. The 2026 redesign was built in Claude Code.

01 · Why

An internship problem I had myself

Finding an internship in Vietnam, as I wrote in 2022, "has always been a difficult and perplexing process for me." Employers had no good way to publicize openings, and students had no good way to find them.

The same problem connects everything else I did at school, HYRE, Digital Enterprise and my research on wages in Vietnam. I would later name the common thread the dignity of gainful employment.

The timing made it sharper. After the COVID lockdowns lifted, demand came back faster than staff, and businesses were wary of hiring full time. I surveyed 241 Vietnamese students. 85.5% were looking for an internship and 88.4% said they had difficulty finding one.

02 · The pivot

Killing the idea I liked first

Swire did not start as an internship app. My partner and I joined the Diamond Challenge late with an app that would match freelancers and clients one to one. Near the end of the competition my own market analysis showed that launching into such a crowded market was impractical.

So we narrowed to a problem I knew first hand, interns instead of freelancers, a market with no direct competitor. We rewrote the business model and the financial model, about 1,500 words, in two weeks. The survey was how we checked the new idea was worth building.

It was my first business plan, and research is what carried it. I sized the market from the bottom up, about 5.45 million secondary and 2.6 million post-secondary students, and 505,000 companies with 79% short of labor. That gave a reachable market of 4.1 million students and 398,950 companies, served only by job sites built for full-time roles.

03 · The app

One swipe to say yes to an internship

Job boards made students search and apply one listing at a time. Swire turned that into a deck of cards. Students browse internships by field, open a role, and swipe to accept or pass. Businesses swipe on candidate profiles the same way, and both sides stay anonymous until they match. A match opens messaging and video chat inside the app for the interview.

I designed the screens in Figma and programmed the iOS interface in Swift. Combine drove the data bound UI, so cards and lists refreshed as match data changed, and Dispatch kept the asynchronous work off the main thread.

The home screen leads with search, then recommended internships by field and the most popular roles.

04 · Matching

Matches that learn from every swipe

A swipe app is only as good as the next card. I built a real time matching service in Node.js using collaborative filtering. Each swipe is a signal about what a student or a business wants, and the service uses the patterns across users to rank what each person sees next.

Firebase carried the back end. Firebase Auth handled token based sign in, and Firestore stored the app's data as NoSQL documents.

05 · Business model

A model that had to turn a profit to survive the judges

Our first plan could not show a profit, which meant many sleepless nights. The fix was adding advertising on top of the subscription. Businesses pay per click or per thousand impressions, priced below local competitors at $3.40 and $4.03, and students get 100 free swipes a day with a $2.59 a month premium tier.

To keep the build affordable the plan was to outsource part of it to a Vietnamese studio at about $15 an hour, with me building the rest. The estimate came to about $8,500 for 550 hours. The deck then projected revenue over five years and a growth path from Vietnam to Southeast Asia, Asia and then global.

StreamWho paysPrice
Cost per click adsBusinesses$0.95 to $2.00
Cost per 1,000 impressionsBusinesses$1.24 to $2.41
Premium subscriptionInternship seekers$2.59 a month
Free tierInternship seekers100 swipes a day
Revenue streams from the pitch deck and business concept.

06 · The pitch

Taking it to the final round

For the Diamond Challenge I wrote the business concept, from the problem and the matching model to the market, the financials and the growth plan, and produced a five minute pitch video around an animated walkthrough of the app.

As I wrote afterwards, "This was my first time producing a business plan, so research was an important aspect that has helped me succeed." Research is also what told me to drop the first idea.

Reimagined in 2026

Swire, if I built it now

In 2026 I redesigned Swire from scratch, built in Claude Code, to show how I would design it today. The idea is unchanged. All content is placeholder.

Setup asks for interests once, when you can start and whether remote works, so the first deck is already relevant.

The 2022 plan described a model that learns from every swipe. The redesign makes that visible. Each card carries a fit score that updates as you swipe, and you can drag or tap, with an undo.

When a business likes you back it becomes a match, kept apart from the roles you only applied to.

The business side, which the 2022 plan served through candidate profiles, can now post a paid role in under a minute.

Archive

More from the project

  • Pitch slide titled swipe and hire with two phones showing the internships home screen and a profile menu.
  • Three phone screens, a sign in page, an internships feed with category cards, and an IT Support match card with decline and accept buttons.
  • Swire home screen with a search bar, recommended internships in Marketing and IT Support, and popular internships for web developer and UI/UX designer.
  • Pitch slide The Problem with three points on COVID job losses, staff shortages and 88.4% of students struggling to find internships.
  • Pitch slide with 398,950 businesses and 4,100,000 students and the benefits for each side.
  • Pitch slide Unique Value Proposition with a phone and three points, easy interface, specialized intern searching and direct consultation.
  • Pitch slide with a monthly user activity bar chart and a market share donut.
  • Pitch slide comparing advertising by cost per click and per thousand impressions, and free versus $2.59 premium subscriptions.
  • Pitch slide Financial Projections with a rising yearly revenue chart and revenue streams.
  • Closing slide reading Thank you, any questions, framed by app screens.
  • Pitch deck cover with the Swire chevron logo and the tagline swipe and hire.
  • Cover of the Swire business concept for the 2022 Diamond Challenge, by David Nguyen.
  • Swire wordmark with a blue chevron.