Context
SmartNews plays a major role in delivering election coverage. For the 2020 US election, the product included features aimed at presenting balanced perspectives across political content.
The timeline was fixed—everything had to be ready for election day.
The problem
We needed to:
- present content from multiple political perspectives clearly
- build new UI patterns (not just reuse existing ones)
- support real-time election results
- handle US/JP edition differences correctly
Approach
I worked across several election-related features:
Political balancing experience
- Built a News Event view with a custom UISlider:
- 3- or 5-position support for perspective selection
- Added onboarding, deep links, and action logging
- Enabled “News from all sides” entry points across surfaces
Candidate and results features
- Implemented:
- candidate widgets and lists
- election results widget with time-based visibility
- Added:
- timestamp gating (start/end times)
- edition-aware language rules (e.g. JP edition shows Japanese regardless of system locale)
Infrastructure
- Built API integrations with fallback behavior
- Used client conditions for controlled rollout
- Ensured telemetry coverage across interactions
Outcome
- Delivered multiple election features on a fixed deadline
- Enabled users to explore balanced political perspectives
- Handled complex requirements around time, localization, and data availability
What this demonstrates
- Shipping under non-negotiable deadlines
- Building custom UI for sensitive product areas
- Handling multi-edition, multi-locale product logic
- Delivering across multiple surfaces with consistent behavior


