MongoDB - The Complete Developer's Guide

Master MongoDB Development for Web & Mobile Apps. CRUD Operations, Indexes, Aggregation Framework - All about MongoDB!

MongoDB - The Complete Developer's Guide

Course Overview

About This Course

You know you need to store and query data—but MongoDB can feel like a wall of new concepts: documents, collections, and a query syntax that doesn’t look like SQL. If you’ve ever wondered “where do I even start?” you’re in the right place.

This course walks you through MongoDB step by step with lots of practical command- and code-based examples. You’ll work locally and in the cloud, and you’ll see a consistent way of interacting with MongoDB that you can apply no matter which programming language you use.

By the end, you’ll be able to confidently choose how to structure data, retrieve exactly what you need, and keep your database work fast as your app grows. You’ll also know how to use MongoDB’s built-in tooling to handle real-world data tasks without turning your project into a performance bottleneck.

What You'll Learn

You’ll cover MongoDB’s full day-to-day workflow—local + Atlas setup, querying, performance tuning, and the core platform features teams rely on in production.

  • Model document data

    Explain what a document database is and organize data the MongoDB way. You’ll be able to decide how to structure documents and collections so your data stays flexible without becoming messy.

  • Run CRUD operations

    Create, read, update, and delete data in MongoDB databases with confidence. You’ll know how to change records safely and retrieve the right documents when your app needs them.

  • Write complex queries

    Build advanced queries that go beyond the basics, using practical examples as a guide. You’ll be able to filter efficiently and shape results so you get data back in the format you need.

  • Optimize with indexes

    Increase query performance by adding indexes and choosing the right ones for your access patterns. You’ll be able to spot when a query is slow and apply indexing to fix it.

  • Use Aggregation Framework

    Create powerful data pipelines with MongoDB’s Aggregation Framework to transform and compute results. You’ll be able to produce aggregated outputs that would otherwise require extra application-side processing.

  • Work across environments

    Install and use MongoDB locally and in the cloud with MongoDB Atlas, and interact via the Mongo Shell and drivers like the Node.js driver. You’ll also understand where replica sets, sharding, and Stitch fit in.

Ready to get started?

See enrollment options

Prerequisites

  • No prior database knowledge is required—this course starts from scratch.

  • General web or mobile development experience helps, but it’s not mandatory.

  • Any operating system works: Windows, macOS, or Linux.

Who Is This Course For?

  • New MongoDB users

    You’ve heard MongoDB is widely used, but you’re not sure how document databases actually work in practice. You want a clear path that turns “NoSQL concepts” into something you can use immediately.

  • App developers

    You build web, mobile, or desktop apps and need a database that fits modern product requirements. You want to feel confident choosing MongoDB and using it effectively in your next project.

  • SQL-first builders

    You’ve mainly worked with SQL databases and want to explore the most popular NoSQL alternative without getting lost. You’re looking for a practical, developer-focused guide—not a server administration manual.

Curriculum Overview

Start Now

Preview the structure and pacing of this course before you begin.

  • Getting Started15 lectures1h 4m
    • 01Introduction2:04 min
    • 02What is MongoDB?5:36 min
    • 03The Key MongoDB Characteristics (and how they differ from SQL Databases)2:55 min
    • 04Join our Online Learning Community0:00 min
    • 05Understanding the MongoDB Ecosystem4:19 min
    • 06General Setup Instructions & macOS Installation16:52 min
    • 07Windows Installation8:10 min
    • 08Installing The MongoDB Shell5:10 min
    • 09Installing "mongoimport"0:00 min
    • 10Time To Get Started!5:37 min
    • 11Shell vs Drivers3:29 min
    • 12MongoDB + Clients: The Big Picture2:58 min
    • 13Course Outline4:38 min
    • 14How To Get The Most Out Of The Course2:30 min
    • 15The Academind Pro Referral Program0:00 min
  • Understanding the Basics & CRUD Operations21 lectures1h 18m
    • 01Module Introduction1:30 min
    • 02Understanding Databases, Collections & Documents3:47 min
    • 03The Shell & MongoDB Drivers for Different Languages2:40 min
    • 04Creating Databases & Collections3:16 min
    • 05Understanding JSON Data4:05 min
    • 06Comparing JSON & BSON5:23 min
    • 07Create, Read, Update, Delete (CRUD) & MongoDB5:37 min
    • 08Finding, Inserting, Deleting & Updating Elements7:47 min
    • 09Understanding "insertMany()"1:48 min
    • 10Diving Deeper Into Finding Data3:55 min
    • 11"update" vs "updateMany()"4:41 min
    • 12Understanding "find()" & the Cursor Object7:30 min
    • 13Understanding Projection3:38 min
    • 14Embedded Documents & Arrays - The Theory1:56 min
    • 15Working with Embedded Documents2:28 min
    • 16Working with Arrays1:43 min
    • 17Accessing Structured Data4:39 min
    • 18Assignment - The Basics & CRUD Operations (Problem)2:37 min
    • 19Assignment - The Basics & CRUD Operations (Solution)6:57 min
    • 20Wrap Up2:47 min
    • 21Useful Resources & Links0:00 min
  • Schemas & Relations: How to Structure Documents22 lectures1h 51m
    • 01Module Introduction2:12 min
    • 02Why Do We Use Schemas?3:57 min
    • 03Structuring Documents7:43 min
    • 04Data Types - An Overview6:23 min
    • 05Data Types in Action12:15 min
    • 06How to Derive your Data Structure - Requirements5:07 min
    • 07Understanding Relations2:58 min
    • 08One To One Relations - Embedded6:20 min
    • 09One To One - Using References4:54 min
    • 10One To Many - Embedded5:07 min
    • 11One To Many - Using References4:04 min
    • 12Many To Many - Embedded7:16 min
    • 13Many To Many - Using References5:25 min
    • 14Summarizing Relations2:18 min
    • 15Using "lookUp()" for Merging Reference Relations4:35 min
    • 16Planning the Example Exercise6:56 min
    • 17Implementing the Example Exercise4:16 min
    • 18Understanding Schema Validation2:57 min
    • 19Adding Collection Document Validation9:07 min
    • 20Changing the Validation Action3:43 min
    • 21Wrap Up4:08 min
    • 22Useful Resources & Links0:00 min
  • Exploring The Shell & The Server8 lectures20m
    • 01Module Introduction1:01 min
    • 02Finding Available Options2:15 min
    • 03Setting "dbpath" & "logpath"4:41 min
    • 04Exploring the MongoDB Options2:00 min
    • 05MongoDB as a Background Service3:09 min
    • 06Using a Config File3:02 min
    • 07Shell Options & Help4:12 min
    • 08Useful Resources & Links0:00 min
  • Using the MongoDB Compass to Explore Data Visually3 lectures6m
    • 01Module Introduction0:50 min
    • 02Exploring the MongoDB Compass5:50 min
    • 03Useful Resources & Links0:00 min
  • Diving Into Create Operations12 lectures42m
    • 01Module Introduction1:12 min
    • 02Creating Documents - An Overview1:47 min
    • 03Understanding "insert()" Methods6:10 min
    • 04Working with Ordered Inserts7:47 min
    • 05Understanding the "writeConcern"5:44 min
    • 06The "writeConcern" in Practice4:09 min
    • 07What is Atomicity?2:39 min
    • 08Assignment - Create Operations (Problem)1:34 min
    • 09Assignment - Create Operations (Solution)5:23 min
    • 10Importing Data3:37 min
    • 11Wrap Up2:38 min
    • 12Useful Resources & Links0:00 min
  • Read Operations - A Closer Look31 lectures1h 54m
    • 01Module Introduction1:40 min
    • 02Methods, Filters & Operators2:54 min
    • 03Operators - An Overview3:02 min
    • 04Query Selectors & Projection Operators1:16 min
    • 05Understanding "findOne()" & "find()"4:32 min
    • 06Working with Comparison Operators5:20 min
    • 07Querying Embedded Fields & Arrays4:52 min
    • 08Understanding "$in" and "$nin"2:37 min
    • 09"$or" and "$nor"5:31 min
    • 10Understanding the "$and" Operator5:04 min
    • 11Using "$not"1:35 min
    • 12Diving Into Element Operators5:30 min
    • 13Working with "$type"2:52 min
    • 14Understanding Evaluation Operators - "$regex"3:23 min
    • 15Understanding Evaluation Operators - "$expr"9:37 min
    • 16Assignment - Read Operations (Problem)1:23 min
    • 17Assignment - Read Operations (Solution)6:34 min
    • 18Diving Deeper Into Querying Arrays4:09 min
    • 19Using Array Query Selectors - "$size"2:09 min
    • 20Using Array Query Selectors - "$all"2:12 min
    • 21Using Array Query Selectors - "$elemMatch"4:52 min
    • 22Assignment - Array Query Selectors (Problem)1:11 min
    • 23Assignment - Array Query Selectors (Solution)4:08 min
    • 24Understanding Cursors2:47 min
    • 25Applying Cursors6:02 min
    • 26Sorting Cursor Results3:09 min
    • 27Skipping & Limiting Cursor Results3:31 min
    • 28Using Projection to Shape our Results4:01 min
    • 29Using Projection in Arrays5:12 min
    • 30Understanding "$slice"3:05 min
    • 31Useful Resources & Links0:00 min
  • Update Operations18 lectures1h
    • 01Module Introduction1:01 min
    • 02Updating Fields with "updateOne()", "updateMany()" and "$set"7:52 min
    • 03Updating Multiple Fields with "$set"1:40 min
    • 04Incrementing & Decrementing Values3:33 min
    • 05Using "$min", "$max" and "$mul"3:15 min
    • 06Getting Rid of Fields2:04 min
    • 07Renaming Fields1:20 min
    • 08Understanding "upsert()"4:01 min
    • 09Assignment - Update Operations (Problem)1:28 min
    • 10Assignment - Update Operations (Solution)4:42 min
    • 11Updating Matched Array Elements6:56 min
    • 12Updating All Array Elements6:27 min
    • 13Finding & Updating Specific Fields5:35 min
    • 14Adding Elements to Arrays4:46 min
    • 15Removing Elements from Arrays2:34 min
    • 16Understanding "$addToSet"1:18 min
    • 17Wrap Up1:39 min
    • 18Useful Resources & Links0:00 min

And 11 more sections in the full course.

Ready to Get Started?

Choose the option that works best for you.

Single Course

MongoDB - The Complete Developer's Guide

One Payment. Lifetime Access.

$69one-time

  • One-time payment
  • All future updates for this course
  • Downloadable resources & code
  • Certificate of completion
  • Hands-on exercises & projects
  • Self-paced learning
  • English captions on all videos
  • Lifetime access