Timothy Marland
Build Delightful Mobile Experiences with Kotlin, Realm, and Atlas Device Sync
#1about 1 minute
The challenge of building offline-first mobile apps
Users expect a fast, reactive experience which requires local data and a complex, custom-built synchronization layer to a primary database.
#2about 3 minutes
The complexity of building a custom sync solution
Building a custom synchronization layer involves object-relational mapping, error handling, and conflict resolution, which is undifferentiated heavy lifting.
#3about 4 minutes
Introducing Realm and Atlas Device Sync for mobile
Realm is an object-oriented mobile database with live objects, while Atlas Device Sync provides an out-of-the-box synchronization layer.
#4about 1 minute
A sample architecture for an online retail application
An online retail example demonstrates how GraphQL, Kafka, and Atlas Device Sync can all connect different services to a central MongoDB Atlas database.
#5about 2 minutes
Understanding the mechanics of Atlas Device Sync
Changes are written locally, sent via websocket, converted to MongoDB documents, and synchronized using operational transforms to handle conflicts.
#6about 2 minutes
Implementing granular data permissions and access control
Atlas Device Sync allows for defining specific read and write permissions at the document and even field level for different user roles.
#7about 2 minutes
Using data ingest for one-way IoT data flow
The data ingest feature is optimized for one-way data flows from sources like IoT sensors, skipping conflict resolution for higher efficiency.
#8about 4 minutes
Setting up a sample real-time sync application
A walkthrough shows how to create a new application from a template in the MongoDB Atlas UI and pull the starter code using the Realm CLI.
#9about 2 minutes
Demonstrating real-time and offline data synchronization
A live demo with a to-do list app on two devices shows how data syncs instantly online and automatically resolves changes after a period of being offline.
#10about 2 minutes
Demonstrating dynamic permission rule enforcement
The demo shows how server-side permission rules prevent unauthorized writes and how changing a rule in the cloud immediately affects client behavior.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
03:31 MIN
Using Realm for real-time data synchronization
From Zero to Mobile Developer in 45 Minutes With SwiftUI
20:20 MIN
Introducing MongoDB Atlas and the Realm serverless platform
40 Minutes to Build a Serverless COVID-19 REST and GraphQL APIs
33:28 MIN
Verifying real-time sync with MongoDB Atlas
From Zero to Mobile Developer in 45 Minutes With SwiftUI
36:32 MIN
Answering audience questions about mobile development
From Zero to Mobile Developer in 45 Minutes With SwiftUI
24:22 MIN
Q&A on large databases and offline work
Solve the “But it works on my machine!” problem with cloud-based development environments
27:55 MIN
The mobile era of small screens and intermittent connections
Closing Keynote by Joel Spolsky
00:43 MIN
Meeting modern application and data platform demands
Tomorrow's cloud data platforms - fully managed database-as-a-service (DBaaS)
15:23 MIN
Introducing MongoDB Atlas as a unified solution
Protector Of The Realm
Featured Partners
Related Videos
Offline first & automatic data synchronisations for your web and mobile applications
Sebastien Stormacq
Protector Of The Realm
Sani Yusuf
From Zero to Mobile Developer in 45 Minutes With SwiftUI
Andrew Morgan
Mobile at a Crossroads: The Declarative UI App Revolution
Peter Steinberger
Challenges of building React and React Native apps
Milica Aleksic & Stefan Nikolic
Optimizing Your App for Success: Tips and Techniques for managing slow devices
Milica Aleksic & Nemanja Petrovic
Scalable architecture for mobile apps
Nachiket Apte
Challenges for omnichannel applications at ALDI: Data distribution and offline capabilities
Enrico La Torre & Renato Dompieri Beltrão
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

Android App Developer / Entwickler - Kotlin & Jetpack Compose (m/w/d)
Aufmaster GmbH
Frankfurt, Germany
Intermediate
Senior
GIT
Kotlin







