Firebase Study Guide & Review Questions
What is Firebase?
Firebase is Google's comprehensive mobile and web application
development platform that provides developers with a suite of tools and
services to build, improve, and grow their applications. It offers backend
services, easy-to-use SDKs, and ready-made UI libraries to authenticate
users, store data, send notifications, and much more.
Think of Firebase as a "Backend-as-a-Service" (BaaS) that handles all the
server-side functionality so developers can focus on creating great user
experiences without worrying about managing servers or infrastructure.
Core Firebase Services
Authentication
Firebase Authentication provides easy-to-use authentication services with
support for multiple sign-in methods including email/password, phone
numbers, and popular federated identity providers like Google, Facebook,
and Twitter.
Realtime Database
A NoSQL cloud database that stores data in JSON format and synchronizes it
in real-time across all connected clients. When data changes, all connected
devices receive updates immediately.
Cloud Firestore
Firebase's newer, more scalable NoSQL document database. It offers better
querying capabilities, multi-regional support, and more robust offline
capabilities compared to Realtime Database.
Cloud Storage
Provides secure file uploads and downloads for Firebase apps. It's built on
Google Cloud Storage and can handle everything from profile pictures to
large video files.
Cloud Functions
Serverless functions that run backend code in response to events triggered
by Firebase features and HTTPS requests. It allows you to extend Firebase
functionality with custom server-side logic.
Hosting
Fast and secure web hosting for static and dynamic content, including single-
page applications (SPAs) and progressive web apps (PWAs).
Cloud Messaging (FCM)
A cross-platform messaging solution that lets you send notifications and
messages to users across different platforms (iOS, Android, Web) for free.
Analytics
Provides detailed insights about app usage and user engagement, helping
developers understand user behavior and make data-driven decisions.
Performance Monitoring
Helps you gain insight into your app's performance characteristics by
collecting performance data automatically.
Remote Config
Allows you to change the behavior and appearance of your app without
requiring users to download an app update.
Key Advantages of Firebase
Real-time synchronization: Data updates instantly across all
connected devices
Scalability: Automatically scales with your user base
Cross-platform support: Works with iOS, Android, Web, Unity, and
Flutter
Offline capabilities: Apps continue to work even when users are
offline
Google integration: Seamlessly integrates with other Google
services
Security: Built-in security rules and authentication
Cost-effective: Pay-as-you-go pricing model with generous free tiers
Common Use Cases
Real-time chat applications
Social media platforms
E-commerce applications
IoT applications
Gaming applications
News and content apps
Collaborative tools
Review Questions
Basic Level Questions:
1. What is Firebase and who owns it?
2. What does BaaS stand for and how does Firebase qualify as one?
3. Name five core services provided by Firebase.
4. What is the main difference between Firebase Realtime Database and
Cloud Firestore?
5. What authentication methods does Firebase support?
Intermediate Level Questions:
6. Explain how Firebase's real-time synchronization works.
7. What are Cloud Functions and when would you use them?
8. How does Firebase handle offline functionality?
9. What is Firebase Cloud Messaging (FCM) used for?
10. Compare Firebase Hosting with traditional web hosting services.
Advanced Level Questions:
11. When should you choose Firebase Realtime Database over Cloud
Firestore, and vice versa?
12. How do Firebase Security Rules work and why are they
important?
13. Explain the Firebase pricing model and what factors affect costs.
14. What are the limitations of Firebase that developers should
consider?
15. How can Firebase Remote Config be used to implement A/B
testing?
Scenario-Based Questions:
16. You're building a real-time chat application. Which Firebase
services would you use and why?
17. Your app needs to work offline and sync data when the
connection returns. How would Firebase handle this?
18. You want to send targeted push notifications to specific user
segments. What Firebase services would you combine?
19. Your startup is growing rapidly and you're worried about
database performance. How does Firebase address scalability
concerns?
20. You need to implement user authentication with Google,
Facebook, and email/password options. How would you approach this
with Firebase?
Answer Key
Basic Level Answers:
1. What is Firebase and who owns it? Firebase is a Backend-as-a-
Service (BaaS) platform owned by Google that provides tools and
services for building mobile and web applications. It offers backend
services like databases, authentication, hosting, and analytics without
requiring developers to manage servers.
2. What does BaaS stand for and how does Firebase qualify as
one? BaaS stands for "Backend-as-a-Service." Firebase qualifies as a
BaaS because it provides ready-made backend services (database,
authentication, storage, etc.) that developers can integrate into their
applications without building or maintaining their own server
infrastructure.
3. Name five core services provided by Firebase:
o Authentication
o Cloud Firestore (or Realtime Database)
o Cloud Storage
o Cloud Functions
o Firebase Hosting (Other valid answers: Cloud Messaging,
Analytics, Performance Monitoring, Remote Config)
4. What is the main difference between Firebase Realtime
Database and Cloud Firestore? The main differences are:
o Realtime Database: Single large JSON tree, simpler queries,
real-time listeners only
o Cloud Firestore: Document-based with collections, advanced
queries, better offline support, multi-regional, more scalable
5. What authentication methods does Firebase support? Firebase
supports email/password, phone number, Google, Facebook, Twitter,
GitHub, Apple, Microsoft, Yahoo, anonymous authentication, and
custom authentication systems.
Intermediate Level Answers:
6. Explain how Firebase's real-time synchronization works:
Firebase uses WebSocket connections to maintain persistent
connections between clients and servers. When data changes in the
database, Firebase immediately pushes updates to all connected
clients that are listening to that data, ensuring all users see changes in
real-time without needing to refresh or poll the server.
7. What are Cloud Functions and when would you use them? Cloud
Functions are serverless functions that run backend code in response
to events (database changes, authentication events, HTTP requests).
Use them for: sending emails, processing payments, data validation,
image processing, integrating with third-party APIs, or any server-side
logic that can't run on the client.
8. How does Firebase handle offline functionality? Firebase
automatically caches data locally on the device. When offline, apps can
still read cached data and write new data to a local queue. When
connectivity returns, Firebase automatically synchronizes pending
writes and updates the local cache with any server changes.
9. What is Firebase Cloud Messaging (FCM) used for? FCM is used
to send push notifications and messages to users across platforms
(iOS, Android, Web). It's used for user engagement, sending updates,
marketing campaigns, real-time alerts, and maintaining user retention.
10. Compare Firebase Hosting with traditional web hosting:
o Firebase Hosting: Optimized for static sites and SPAs, global
CDN, automatic SSL, version control, easy deployment,
integrates with other Firebase services
o Traditional Hosting: More flexibility, supports server-side
languages, database hosting, potentially lower costs for simple
sites, more configuration options
Advanced Level Answers:
11. When should you choose Firebase Realtime Database
over Cloud Firestore, and vice versa?
o Choose Realtime Database for: Simple applications, lower
latency requirements, simpler data structures, existing projects
already using it
o Choose Cloud Firestore for: Complex queries, better
scalability, multi-regional support, structured data with
collections, better offline support, new projects
12. How do Firebase Security Rules work and why are they
important? Security Rules are server-side validation rules that
determine who can read or write data. They're written in a domain-
specific language and are important because they: prevent
unauthorized access, validate data integrity, protect against malicious
users, and provide granular access control without requiring server-
side code.
13. Explain the Firebase pricing model and what factors
affect costs: Firebase uses a pay-as-you-go model with generous free
tiers. Costs are affected by: number of database reads/writes/deletes,
data storage amount, bandwidth usage, Cloud Function executions,
authentication users, and hosting bandwidth. Most small to medium
apps stay within free tier limits.
14. What are the limitations of Firebase that developers
should consider?
o Vendor lock-in with Google
o Limited querying capabilities compared to SQL databases
o Can become expensive at scale
o Less control over backend infrastructure
o Limited customization options
o Potential for unexpected costs if usage spikes
15. How can Firebase Remote Config be used to implement
A/B testing? Remote Config allows you to create different parameter
values for different user segments. You can set up conditions based on
user properties, random percentiles, or app versions to show different
features or UI elements to different groups, then use Firebase Analytics
to measure which version performs better.
Scenario-Based Answers:
16. You're building a real-time chat application. Which
Firebase services would you use and why?
o Cloud Firestore: Store chat messages with real-time listeners
o Authentication: User login and identification
o Cloud Storage: Store profile pictures and file attachments
o Cloud Functions: Send push notifications for new messages
o FCM: Push notifications when users are offline
o Security Rules: Ensure users can only access appropriate chat
rooms
17. Your app needs to work offline and sync data when the
connection returns. How would Firebase handle this? Firebase
automatically provides offline support by caching data locally. Users
can read cached data and queue writes while offline. When
connectivity returns, Firebase automatically synchronizes pending
operations and updates the local cache with server changes, handling
conflicts intelligently.
18. You want to send targeted push notifications to specific
user segments. What Firebase services would you combine?
o FCM: Send the actual notifications
o Analytics: Identify user segments and behavior patterns
o Remote Config: Customize notification content for different
segments
o Cloud Functions: Trigger notifications based on user actions or
database changes
o Authentication: Identify and target specific users
19. Your startup is growing rapidly and you're worried about
database performance. How does Firebase address scalability
concerns? Firebase automatically handles scaling through: automatic
sharding across multiple servers, global CDN for faster data access,
real-time synchronization optimization, horizontal scaling without
configuration, and Google's infrastructure backing. Cloud Firestore
specifically offers multi-regional replication and automatic scaling.
20. You need to implement user authentication with Google,
Facebook, and email/password options. How would you
approach this with Firebase? Use Firebase Authentication which
supports all these methods out-of-the-box. Configure each provider in
the Firebase console, add the respective SDKs to your app, implement
the sign-in flows using Firebase Auth methods, and handle user state
changes. Firebase handles all the OAuth flows, token management, and
user session management automatically.