Course 2.1 · Curriculum 2026.1
Apex fundamentals, and the governor limits that shape every design
Write Apex that survives production. Governor limits taught as a design constraint, including the 120-second callout budget that decides your timeouts.
- Estimated effort
- 8 hr
- Lessons
- 63
- Modules
- 10
- Material
- 8 hr
Estimated effort is the sum of the lesson and lab times in this version of the course. It is not video runtime, which is lower.
Canadian dollars. One learner, lifetime access to this course version. Tax extra.
1 lesson free to preview
This course does not issue a certificate on its own. It counts toward the paths listed below, and those do.
01What you will learn
8 capabilities, stated as things you can do
Each one is what you should be able to do at the end, not what the course covers. If an outcome is not testable, it is not an outcome.
- Write, run and debug Apex in an org using Developer Console and the command line.
- Query with SOQL and SOSL, and say which one a given question needs.
- Design around the per-transaction limits instead of discovering them in production.
- Set integration timeouts against the 120-second cumulative callout budget rather than by guessing.
- Move work off the synchronous transaction using future, queueable and batch, and choose between them.
- Read a limits exception and name the line that caused it.
- Explain the difference between a synchronous and an asynchronous limit set.
- Write bulk-safe code by default, because the platform gives you no other option.
02Curriculum
10 modules, 63 lessons
Every lesson shows its length and its type. A SCORM lesson looks like any other lesson, which is the point of ingesting packages rather than linking out to them.
10 modules · 63 lessons · 8 hr of material
Apex is Java-shaped and database-flavoured. This module is the syntax, the tooling, and the parts that surprise people from other languages.
- VideoSetting up: CLI, an editor, and running your first anonymous blockPreview9 min
- VideoTypes, collections and the sObject8 min
- VideoControl flow, exceptions, and Apex-specific behaviour8 min
- VideoClasses, interfaces and the sharing keywords8 min
- ReadingReading the debug log without losing an afternoon6 min
- VideoThe generic sObject, and the trap of casting it wrong7 min
- LabLab: write and run your first class12 min
SOQL, SOSL and DML. Written for correctness under bulk from the first line, because retrofitting bulk safety is a rewrite.
- VideoSOQL: relationships, aggregates and the selective query9 min
- ReadingSOSL, and the searches SOQL cannot do6 min
- VideoDML, Database methods, and partial success8 min
- VideoBulk by default: sets, maps, and never querying in a loopOne hundred SOQL queries per transaction. A query inside a loop over 200 records is not slow, it is a hard failure.8 min
- VideoCollections: List, Set and Map, and choosing the right one7 min
- VideoRelationship queries: parent-to-child and child-to-parent in one line6 min
- LabLab: refactor a record-at-a-time class into a bulk one12 min
The limits that apply to every button click and page load. Most of them never bite until the org has real data volume.
- VideoThe per-transaction limit table, and the six that actually bite9 min
- VideoSOQL rows, query count, and the limit nobody hits until year two6 min
- VideoCPU time, and the operation that is free in a trigger and expensive in a loop6 min
- VideoDML rows, DML statements, and why one big update beats two hundred6 min
- VideoReading a LimitException back to the line that caused it7 min
- LabLab: instrument a transaction and read its limit consumption11 min
The limit set resets when code goes async, and that reset is a resource, not a loophole. Knowing what changes is the whole module.
- VideoTwo limit sets, not one: what changes when code goes async7 min
- VideoHeap size, and the collection that grows quietly6 min
- VideoCallout limits inside a trigger, and why there are none5 min
- VideoFuture methods get their own limits, and why that matters5 min
- ReadingReading: the official limit tables, side by side5 min
- ReadingReading: choosing sync or async before you write a line4 min
- QuizCheck: limits and where they apply11 min
The heart of the course. Every callout in one transaction shares 120 seconds. A limit you design around is an architecture; a limit you discover in production is an incident.
- VideoThe 120-second cumulative callout budgetEvery callout in one transaction shares 120 seconds. That single number sets your batch size, your timeouts and what has to move off-platform.9 min
- VideoA worked example: timeouts of 25, 45 and 60 secondsA real integration, sized so three sequential calls cannot exceed the budget even at their worst. The numbers were chosen, not inherited.9 min
- VideoThe 90-second wall-clock stop, and why it is never 1207 min
- VideoSizing a batch against a budget every record in it shares6 min
- VideoWhat has to move off-platform, and why6 min
- LabLab: budget three sequential callouts against 120 seconds12 min
Future, queueable, batch and scheduled. Four tools, four limit sets, and a decision table you can keep.
- VideoFuture methods, and why they are almost never the answer6 min
- VideoQueueable, chaining, and the finalizer8 min
- VideoBatch Apex, scope sizing, and stateful batches8 min
- VideoScheduled Apex, and the job that failed unnoticed for nineteen days7 min
- VideoChoosing between future, queueable, batch and scheduled6 min
- LabLab: convert a synchronous job into a batch and verify it12 min
A trigger that works on one record and fails on two hundred is the most common defect in a Salesforce codebase. This module is how it stops being yours.
- VideoWhy bulk safety is not optional on this platform6 min
- VideoThe two-hundred-record trigger context, and designing for it from line one6 min
- VideoMaps built once, not queried per record6 min
- VideoA bulk-safe SOQL pattern you can reuse5 min
- ReadingReading: the bulkification checklist5 min
- LabLab: break a class with two hundred records, then fix it12 min
Two query languages, and the difference is not stylistic. One is selective and fast, the other searches text across objects.
- VideoSelective queries, and the index that makes one selective7 min
- VideoAggregate queries: GROUP BY, HAVING, and a rollup without a trigger6 min
- VideoSOSL across multiple objects in one search6 min
- VideoDynamic SOQL, and the injection risk it opens6 min
- ReadingReading: how the query optimizer chooses a plan5 min
- LabLab: write a selective query against a million-row object15 min
Every limit taught so far eventually shows up as a stack trace. This module is how you read one without guessing.
- VideoReading a stack trace to the line that actually failed8 min
- VideoDebug logs: levels, categories, and turning off what you do not need6 min
- VideoGovernor limit exceptions, and the message that names the limit7 min
- VideoApex Replay Debugger, checkpoints and variable inspection6 min
- ReadingReading: common exception types and what each one means5 min
- LabLab: diagnose a failing transaction from its log alone15 min
A capstone class that has to be bulk-safe, budget-aware and readable, then the check that confirms it landed.
- VideoPutting it together: a bulk-safe, budget-aware Apex class7 min
- VideoCommon first-year Apex mistakes, named6 min
- VideoWhere Apex fits next: triggers, components and tests5 min
- ReadingReading: the governor limits quick-reference card5 min
- LabLab: build and instrument a small integration end to end15 min
- QuizCheck: Apex fundamentals and limits12 min
03Before you start
What you need first
Assumed knowledge and setup
- Courses 1.3 and 1.4. You need the data model and the automation model first.
- Any prior programming experience helps. No Java or Apex assumed.
- A Developer Edition org and Salesforce CLI installed. Setup is the first lesson.
Courses that come first
- 1.3 · Objects, fields, relationships and the lookup-versus-master-detail decision5 hr · Beginner
- 1.4 · Flow: the automation you will actually build8 hr · Intermediate
Part of these paths
- Salesforce DeveloperShareCo Certified Developer
- The Full StackShareCo Certified Platform Engineer
04Who teaches it
Elliot Saha
Co-founder, Chief Technology Officer
Platform architecture, custom Apex and Lightning Web Components, AI systems, and the Academy platform itself.
05Reviews
No learner reviews yet
This course has not been taken by enough people to publish an honest rating, and we will not print invented quotes on a page that sells verification discipline. Here is what we can evidence instead.
- Assessment
- Lesson checks onlyThis course carries lesson checks. The certificate is issued by the path assessment, not by this course.
- Curriculum version
- 2026.1You enrol into a version. Content changes do not move you mid-course, and your required-lesson count is snapshotted at enrollment.
- Refunds
- 14 daysFull refund within 14 days if you have completed under a quarter of the required lessons. Stated here rather than in a footer.
Start 2.1
Enrol as an individual, or buy seats and assign this course to your team. Progress is reported per lesson, per module and per path.
- 8 hr estimated effort, labs included
- Lifetime access to the version you enrol in
- A ShareCo certificate is not a Salesforce certification