I'd rather earn the click than buy it.
I'm Cameron. I design and build websites and the apps behind them, photograph hotels and real estate, and run the marketing that gets a business found. It started with two hotels on the Oakland waterfront.


In 2013 I was a hotel's entire web department.
I joined Executive Inn & Suites as its IT manager, and ran the website and the marketing too. If the booking engine broke at nine on a Saturday, that was me. I still work with the same owners today, and I shot the photographs on their current site, including this one.
Four things, one person.
Most projects pass between a designer, a developer, a photographer, and a marketer. With me it's the same person from the first conversation to launch, so what we agreed on is what gets built.
Design
I work out what your site needs to do for your customers and design it around that. Clear, fast, and yours to update.
Build
Then I build it, and the tools behind it when you need them: a booking flow, a quoting tool, a ballot that counts votes, a dashboard for the office.
Results I can stand behind.
Every number on this site says where it came from. Here are four.
227
ballots counted, 2 thrown out by the rules
SF Queer Film Festival audience award
4 days
from deposit to the client seeing it, against a three-to-four-week estimate
Frost Driving School
~$1.5M
bookings from email in a single year
Executive Inn & Suites
2,000%+
more visitors from Google over six years, without paying for ads
Executive Inn & Suites, 2013–2019
Mistakes get caught before they go live.
I build checks into my sites, so a broken link, a missing photo, or a number with no source stops an update before anyone sees it. This is the list of checks this site runs on itself.
- every page has exactly one h1
- every page has a meta description
- every image carries meaningful alt text
- no placeholder or template rot ships
- every internal link resolves to a built page or a public file
- no two pages share more than 40% of their eight-word sequences
- every fact rendered on a page is marked confirmed
- anonymised clients never enter the build
- the teardowns tab only ships once three teardowns exist
- nothing is still owed before launchruns at launch, 4 still owed
- every referenced image actually exists
- every work card shows an image or the typeset fallback
- every page has a social image that exists
- titles and descriptions fit a search result
- every page carries structured data naming the person
Every number has a source
Each figure on this site comes from one record that says where it came from. If a number can't be backed up, the page can't be published.
Checked on the finished site
The checks run on what visitors will actually see, not on a draft. And I don't trust a check until I've watched it catch the mistake it was written for.
Honest about what launched
Not every project here has gone live yet. Each page says so, along with what was never measured.

Tell me what you're working on.
Send me a little about your project or the role you're hiring for. I'll tell you whether it sounds like a fit.







