Make it discoverable — then keep expanding it
Phase 2 began after the build journal launched and closed after turning the site into a discoverable, publishable and bookable platform: SEO and Google discovery, Thoughts When Driving, photo-enabled posts and verified Reza calendar booking.
Verified Phase 2 cost + time$0 new Phase 2 spend so farCompleted Sep 15, 2026 • ~20 minutes of laptop time used for Google Calendar setup • Jump to breakdown ↓Technical SEO foundation
Once the website, Reza and the build journal were working, the next question changed from “Does the site work?” to “Can search engines understand and discover it?” That started the first SEO pass.
- Write a unique search title and description for every important page. The homepage, Career, Recommendations and How We Built It now each explain their purpose to search engines.
- Choose one canonical URL for each page. Clean URLs such as
/careerand/how-we-built-itare the preferred versions, while old.htmlURLs redirect to them. - Add structured data. Schema markup describes the site, my professional profile, the build journal article and page breadcrumbs in machine-readable form.
- Create a sitemap and robots file. Search engines now have a clear list of the public pages to crawl, while admin and data routes are excluded from crawling.
- Improve social previews. Open Graph and social-card metadata were added so shared links can show a branded title, description and image.
- Reduce homepage weight. The profile image was moved out of a large inline data block and into a normal cached image file.
Search Console, sitemap & indexing
The next step was moving from “SEO is installed” to “Google can actually verify, discover and crawl the site.” We connected the domain to Google Search Console and completed the first indexing workflow from the phone.
- Verify ownership through DNS. Google provided a TXT verification record, which we added to the domain DNS in Vercel.
- Confirm the Domain property. Google Search Console verified
rouzbehsalehinia.com, giving us visibility into how Google sees the entire domain. - Submit the sitemap.
https://rouzbehsalehinia.com/sitemap.xmlwas accepted successfully so Google has a clear map of the public site. - Request indexing for the key pages. The homepage, Career, Recommendations and How We Built It were each added to Google’s priority crawl queue.
My Thoughts When Driving
Phase 2 expanded beyond search discovery and added a new public section: Thoughts when driving blog. The goal is to give real ideas a permanent place on the website instead of letting them disappear into a social-media feed.
- Add a permanent public blog page. Published thoughts now live on the website as part of the portfolio.
- Build a private owner publishing workflow. The same private owner-access pattern used elsewhere on the site opens a secure author studio without exposing the admin workflow publicly.
- Publish from the phone. A post can be written or dictated, categorized, saved as a draft, published, edited, unpublished or deleted without touching GitHub.
- Store the content in Supabase. New posts remain on the site without rebuilding the static website every time.
- Clean up navigation. “Thoughts when driving blog” was added as a normal navigation item, while “How We Built It” remains the one highlighted build-journal button.
Photo-enabled posts
The next upgrade was allowing a thought to carry its own visual evidence. Blog posts can now include photos directly from the author studio instead of requiring a separate website upload.
- Add photos from an iPhone. Images can be selected while writing a post and uploaded through the protected author workflow.
- Support multiple images. A post can contain up to eight photos, with one selected as the featured image.
- Control presentation. Photos can be reordered or removed before publishing, and captions and alt text can be added when useful.
- Keep the site fast. Images are compressed before upload and stored in a dedicated Supabase Storage bucket rather than embedded into the page.
Reza calendar booking
On September 15, 2026, we finished the booking workflow that had been on the Phase 2 roadmap. A visitor can now ask Reza to schedule time with me and be sent to a real Google Calendar appointment page rather than a one-time calendar link.
- Create a permanent 30-minute appointment schedule. Google Calendar now provides the live availability page.
- Respect existing commitments. Busy times are automatically unavailable for booking; visitors see availability, not the private details of calendar events.
- Add Google Meet. Successful bookings create a calendar invitation with video conferencing.
- Collect useful context. The booking form asks for contact information, what the visitor would like to discuss and optional company/organization information.
- Teach Reza scheduling intent. Requests such as “book a meeting,” “schedule time,” “calendar,” or “can I talk to Rouzbeh?” now route visitors to the live booking experience.
Phase 2 — grow without adding unnecessary cost
Phase 2 adds discoverability and measurement while keeping a simple rule: do not add a paid tool just because one exists. Pay when the capability creates enough value to justify it.
Google Search Console
Domain verification, sitemap submission, URL inspection and search-performance reporting were added without a software subscription.
Direct software cost: $0Technical SEO
Metadata, canonical URLs, structured data, sitemap, robots rules and social preview cards were built directly into the existing site.
No new SEO platform purchasedSocial posting
We tested a social scheduling workflow, but chose manual LinkedIn and Facebook posting rather than introduce an unnecessary additional paid program.
Decision: keep the workflow simpleThoughts When Driving
The blog, owner author studio, database storage and photo uploads use the existing Vercel and Supabase stack.
New direct software cost: $0Google Calendar booking
The 30-minute appointment schedule, Google Meet conferencing and live availability were added using the existing Google Calendar account.
New direct software cost: $0 • ~20 min verified laptop setup timeDiscovery & growth work
Phase 2 began after the build journal launched and currently includes technical SEO, Google Search Console, sitemap submission, indexing, the Thoughts When Driving publishing system, photo-enabled posts, Reza calendar booking and cost/time tracking.
Sep 13–15, 2026. Active working hours were tracked where verifiable; Google Calendar setup included about 20 minutes of laptop work.Only when usage justifies it
Higher service tiers, advanced analytics or booking tools remain optional. We will document the reason, price and expected value before adding a recurring cost.
No automatic upgradesSEO, Google discovery, the Thoughts When Driving publishing system, photo uploads and Reza calendar booking were all added without introducing a new mandatory paid service. Verified new Phase 2 spend: $0 so far. The phase ran from Sep 13 through Sep 15, 2026 and is now complete. Google Calendar setup required about 20 minutes of verified laptop time.
Discovery, growth and expansion — complete.
Phase 2 had a clear finish line: make the site easier to discover, give it a living publishing system, and make it possible for a visitor to move from learning about Rouzbeh to booking a real conversation.
Phase 1 built the platform. Phase 2 made it discoverable, publishable and bookable. Phase 3 now shifts the focus to protecting the work, measuring what earns attention and scaling only what proves useful.