2. Aviary
Photo-Editing
SDK & Apps
Fully-Baked UI
Configurable, High-Quality Tools
Over 5,000 Partners
Over 50 Million Monthly Users
Over 4 Billion Photos Edited
iOS, Android, Web, Windows, Server
J
3. Who Are We?
Nir
Jack
Lead Serverside
Director of
Engineer
Engineering
Likes:
●
●
●
Automated deployment
Big-O notation
Brainteasers
Hates:
●
Cilantro
Likes:
●
●
●
Parallelizing processes
DRY code
Seltzer
Hates:
●
Food after the sell-by date
13. Delivered Types
● Manifest JSON
○ Content Set
○ Content Versions
● Content JSON
○ Content Metadata
○ All Assets
N
14. The “Fat Tiny” Situation
We want to manage the Fat Tiny sticker pack
as a single entity, but we want to deliver it to
each device in its own
optimal format.
How can we do that?
N
15. Response Formatting Model
Content Entry
Response Formats
Responses
JSON document describing
content item
JSON documents defining mappings
from entry to responses
Actual JSON responses
delivered to devices
J
27. Other Mongo Usage
● PAULA permissions in user objects
users collection
{
"name": "nir",
"email": "nir@aviary.com",
"permissions": [
"content",
"dev",
"admin",
"partying"
]
}
● Integration tests interact with schemaless db willy nilly
N
29. The Facts
● Built and deployed in 3 months
● Very few struggles with MongoDB
● Seamless management
● Graceful scaling from 0 to over 20M MAUs
● Happy serverside engineers
J
30. The Future
● Targeted Translations
● Granular User Targeting
● PAULA for the masses
N