projects
Real estate website design for Indochina Capital
A bilingual brand website for a real estate investment firm: a portfolio-style project catalogue, team profiles, and a news section the communications team runs itself.

- Role
- WordPress Developer
- URL
- indochinacapital.com
Indochina Capital has worked in real estate investment and financial services since 1999. The website serves as a company profile for international partners and investors, and it is not a sales channel. Three constraints follow from that: flawless visuals, English/Vietnamese bilingual content, and fast loading for visitors abroad.
Bilingual: two independent versions, one shared structure
A common mistake on bilingual sites is to treat the English version as a "translation" of the Vietnamese one, forcing the two to match paragraph by paragraph. An investment firm can't work that way: a press release for foreign partners differs from a news post for the domestic market, and some content exists in only one language.
The structure I chose lets the two versions differ in content while staying in sync on structure: the same set of pages, the same data types, different content. When the communications team publishes a Vietnamese post that has no English version yet, navigation keeps working.
Investment projects presented as a portfolio
In high-end real estate, the photos do most of the persuading. So the project catalogue uses a portfolio layout: large images, generous white space, concise information.
Each project is its own data type with fixed fields: location, property type, scale, status. Visitors can filter the list page, and editors don't have to remember a format. Alongside it sit the leadership team profiles and a timeline of company milestones, two sections institutional investors always read.
Speed when the visitor is half a world away from the server
Visitors come from Vietnam, Hong Kong, Singapore and the US. For someone far away, network latency adds up and a heavy page gets much slower, starting with the very first visit.
I handled it with three measures, in decreasing order of impact:
- Full-page caching on the server, so each view doesn't rebuild the HTML
- Image sizes matched to each display slot, instead of loading the original image and shrinking it with CSS
- Cutting third-party scripts as far as possible
The third one often gets skipped. A few tracking snippets and widgets whose numbers nobody reads can weigh more than the rest of the page combined.
More projects
all projects →
MacBook retail website design for MacOneA retail website for MacBooks and Apple accessories with spec filters, multi-variant product management, and prices synced directly from KiotViet in the stores.read more →
Apple retail website design for 1ProA retail website for used and factory-sealed MacBooks, iMacs and iPhones: a custom WordPress theme, filters by device condition, product data synced from KiotViet.read more →
Pre-order fashion shop website design for MoonChic OrderA website for a shop that orders authentic designer goods from abroad: mobile-first layout, proof-of-authenticity blocks, clear order status, NGINX caching for load speed.read more →
B2B catalogue website design for Nam Thành CôngA catalogue website with thousands of telecom, industrial and measurement products: a multi-level taxonomy, lookup by brand and specs, and a quote form for each product.read more →