#opticon2015
Pushing the Boundaries
of Optimizely
Alex Ivashchenko
Principal Software Engineer,
Trulia
alexi@trulia.com
Markis Taylor
Engineering Lead, Trulia
mtaylor@trulia.com
Shaunak Mali
Solutions Architect,
Optimizely
shaunak@optimizely.com
Brad Taylor
Sr. Solutions Architect,
Optimizely
brad@optimizely.com
Introductions
Topics
• node.js
• Single Page Applications
• Mobile Web
• Media Trends
• Ad Integration
Load Time vs User Experience vs Product Experimentation
Weighing the Opportunity
Costs
but...
I love Javascript
12 seconds
Mobile with JS
2 seconds
Mobile without JS
node-optimizely library
• Creates isolated environment
• Runs provided optimizely experiments
• Outputs modified html
• Returns list of added images and cookies
• Framework agnostic
The Developer
• Choose between jsdom and cheerio/vm
• Fetch fresh optimizely bundle (no jquery)
• Generate original html page
• Handle new cookies and images
• Send modified html to a client
Example
GitHub:
github.com/trulia/node-optimizely
node-optimizely
NPM:
npmjs.com/optimizely
Performance vs User Experience
Single Page Applications
Dev Tools for the Win!
Wordpress Plugin
Left hand should know what the right hand is doing.
Advertising Operations
meets Product Development
Javascript, the solution to and cause of all life’s problems.
Optimizely Javascript API
bit.ly/1GAIzOs
DFP Integration
https://gist.github.com/ff7a5bb9b4cc44f62c6e.git
Code to block iFrame load
Final Thoughts
Q & A
#opticon2015
Pushing the Boundaries
of Optimizely
Alex Ivashchenko
Principal Software Engineer,
Trulia
alexi@trulia.com
Markis Taylor
Engineering Lead, Trulia
mtaylor@trulia.com
Shaunak Mali
Solutions Architect,
Optimizely
shaunak@optimizely.com
Brad Taylor
Sr. Solutions Architect,
Optimizely
brad@optimizely.com

Opticon 2015-Pushing the Boundaries of Optimizely