Back to the Apex Developer Course

Curriculum

Salesforce Apex Developer Course curriculum

Sixteen weeks, week by week: every topic we cover, every project you build, and everything worth doing before day one.

  • 16 weeks + prep week
  • A project every week
  • AI tooling throughout

Course Overview: This course is one of the first of its kind. It is a Salesforce developer course with a heavy focus on the use of AI to complete your day-to-day work. You will learn the ins and outs of the Apex language and become proficient in the language, but more important these days, you will learn how to appropriately think about and structure your code so that you can instruct AI tools to build high-quality code consistently for you. This is the future of development: a developer with an understanding of the platform languages, and a very strong understanding of application architecture, guiding AI tools to high-quality output.

This course also provides free access to two Udemy classes, The Complete Guide to AI Powered Salesforce Development and the soon-to-be-released (at the initial launch of the course) The Beginner's Guide to Apex Development on the Salesforce Platform. We would suggest watching sections 1-6 of the AI Udemy course prior to class starting, but we will cover most of that Udemy course's content throughout the class.

DISCLAIMER: This course is still being built and tested with focus groups. While this is the current course outline, it may change based on feedback and time constraints discovered while testing this course. The final version of this course's outline will be posted 1-2 days prior to the course registrations going live (or, more plainly, 1-2 days prior to the payment link being available to pay for and claim your seat in the course).


Week 0

Course Prep Work

6 topics

Prior to the course starting we've got a list of things we'd suggest you take a look at! If you don't have time for it, it's not the end of the world, but it will likely make class easier to follow, especially if you have limited to no experience on the Salesforce platform at all.

  1. First, get yourself a free Salesforce developer edition org and start playing around in it! If you want a tutorial on how to set this up we even have one available here.
  2. Second, if you're not familiar with Salesforce at all, we'd suggest you take a look through the Prepare for your Salesforce Platform Administrator Certification trailhead. This will familiarize you with the platform in general. You'll find out how to create objects, fields, set up users, set up user security, and a whole lot more. Not to mention if you read through and learn all this content you'll be prepared for your Salesforce Platform Administrator Certification too!
  3. Check out what it means to be a Salesforce Developer and what you'd be expected to do every day to make sure that becoming a Salesforce dev is indeed what you want to do. If it's not, and you decide that before class starts we'll give you a full refund, but it's a pretty amazing job if you give it a chance!
  4. Take a look at the Salesforce Platform Developer Certification and its corresponding trailmix/study guide. This will give you a good foundation for the class and a general understanding of development on the platform. We will cover everything you need to know for this exam in the class though, so if you don't make it this far, no worries!
  5. Get familiarized with AI tools. I would suggest either Cline or Claude Code, but it could be any AI agent! In the course we will focus on the use of Claude Code via the use of its VSCode Plugin. This course will introduce you to, and train you on, Claude Code. Additionally, your homework will require the use of AI every week.
  6. Check out Git and GitHub just to get familiarized with what the tools are, and how to use them. We'll learn tons about them throughout the course, but at least knowing what they are and the differences between them is a good start!

A note on tool choice: every idea in this course transfers to any capable coding agent - project memory, reusable instructions, automated checks, agents that review other agents. But we teach one tool concretely rather than all of them vaguely, because the specifics are where the skill actually lives. If you already use Cline or something else, follow along in it - you'll be translating names, not concepts.

Claude Code Setup

  1. Install Claude Code and sign in - both the CLI and the VS Code extension. Run claude once in an empty folder and type /help, so the interface isn't brand new to you on day one.
  2. Create a Salesforce DX project locally and start Claude Code inside it. Ask it to explain the folder structure to you. This is far and away the best way to find out whether your setup actually works before class rather than during it.
  3. Learn three things and you'll avoid most of what goes wrong in the first couple of weeks: /clear starts a fresh conversation, Shift+Tab enters plan mode where Claude explores and proposes but changes nothing, and Esc interrupts it when it heads somewhere you didn't intend.

Week 1

14 topics

In the first week of this course we will learn about the following:

Salesforce Developer Skills

  1. How to set up a free Salesforce developer org
  2. The concept of multi-tenancy and how it works in your Salesforce org
  3. How to set up the Visual Studio Code IDE, and learn about other available options
  4. How to set up and leverage AI tools in your IDE
  5. How to set up and leverage Git and GitHub for your projects
  6. What the Salesforce CLI is and how to use it (at a high level)
  7. What npm is and how to use it (at a high level)
  8. When to use Apex over declarative tools
  9. How to create classes, methods, and variables in Apex and what they all are
  10. How to run anonymous Apex code
  11. The different data types in Apex and when to use them
  12. What is casting in Apex and when to use it
  13. The different operators in Apex and when to use them
  14. The different keywords in Apex and when to use them

Claude Code Skills

  1. How to set up CLAUDE.md, the file Claude reads automatically every time it starts up in your project. We'll write your first one together and set up your org alias, API version, the deploy command you use, as well as the naming conventions for your code it should follow.
  2. Why CLAUDE.md is not the same thing as a skills file, and why mixing the two up is the most common mistake people make early on. CLAUDE.md is read on every single request, so it has to stay short. A skill is read only when it's relevant, so it can afford to be long and detailed.
  3. The # shortcut, which appends a rule to memory mid-conversation. A good way to prevent Claude from asking you the same thing twice.

Weekly Projects

  1. Your project for this week will be creating a basic calculator app that you can call from anonymous Apex to do addition, subtraction, multiplication, and division.
  2. After building the calculator app yourself, try recreating it by prompting an AI tool to create it using the AI skills we learned this week, and then review the code it wrote and learn from it. Ask it questions about the code it produced, why it created it the way it did, etc.

Week 2

9 topics

In the second week of the class we will cover the following:

Salesforce Developer Skills

  1. What a constructor is and why you would use it.
  2. What instantiation is and how to do it.
  3. What conditional statements are and how to use them
  4. What ternary operators are and how to use them
  5. What switch statements are and how to use them
  6. What the static keyword is and when to use it
  7. What collections are and when to use them (Maps, Sets, Lists)
  8. Collection Iteration (for loops)
  9. Best Practices for Collection Iteration

Claude Code Skills

  1. How to set up your first real skill. We'll figure out how to write them in a way that Claude will easily understand, and with a description good enough that Claude will find it without being told to.
  2. Why the description matters more than the body. Claude reads descriptions to work out what's relevant to the task in front of it, so a skill you described vaguely is a skill that never loads.
  3. We'll also cover when to use the slash commands /clear between unrelated tasks, and /compact when you need to extend past the context limit of your conversation.

Weekly Projects

  1. Your project for this week will be to create an Apex class that constructs data within a map in its constructor, and then create a method that you can call within that same Apex class that iterates over that collection and prints it out appropriately.
  2. After building this Apex class yourself, try prompting an AI tool to create it for you. Then ask it to review your code for inefficiencies or issues within it so that you can learn from its review.

Week 3

12 topics

In the third week of the course we will cover the following:

Salesforce Developer Skills

  1. What is SOQL and how to use it
  2. How to query for Salesforce data using SOQL
  3. SOQL Clauses and when to use each
  4. How to query related objects (relationship queries)
  5. Query Indexing and why it's important
  6. Important SOQL Limits
  7. What is SOSL and when to use it
  8. When to use SOQL vs SOSL
  9. Important SOSL Limits
  10. What DML is, and the different ways to use it
  11. How to use Database options
  12. DML best practices

Claude Code Skills

  1. This week we'll discuss the different modes in Claude. We'll find out the difference between "Plan" mode, "Auto" mode, "Manual" mode, and "Edit automatically" mode, and when to use each.
  2. We'll also create our first subagent: a code review agent, which will evaluate your code and make sure that what you write, or your agent writes, follows the SOQL, SOSL, and DML best practices we went over this week

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 4

11 topics

In the fourth week of the course we will cover the following:

Salesforce Developer Skills

  1. What debugging is and how to do it effectively
  2. How to set up debug logs
  3. How to use and understand the debug log analyzer
  4. How to debug fast with AI
  5. What is Exception Handling
  6. How and why to create custom exceptions
  7. What is programmatic security?
  8. How to enforce object level security in Apex
  9. How to enforce field level security in Apex
  10. Protecting against SOQL injection
  11. Apex Sharing and when to use it

Claude Code Skills

  1. This week we'll figure out how to use Claude to help debug from real logs. We'll reference the debug log in Claude and have it help us find out what went wrong.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 5

8 topics

In the fifth week of the course we will cover the following:

Salesforce Developer Skills

  1. What is the difference between Synchronous and Asynchronous code
  2. How to do asynchronous transactions in Apex
  3. How to create a batch class
  4. How to create a queueable class
  5. How to set up a scheduled job
  6. How and when to use future methods
  7. What are platform events and when should you use them
  8. Async Apex best practices

Claude Code Skills

  1. This week we'll learn how to set up custom slash commands. Async Apex carries a lot of boilerplate code, so we'll use a slash command to have Claude quickly generate different async classes for us.
  2. We'll also learn about hooks in Claude. A way to ensure a command runs automatically every time Claude edits an Apex file.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 6

8 topics

In the sixth week of the course we will cover the following:

Salesforce Developer Skills

  1. What are triggers and when to use one
  2. How to create a trigger
  3. What is a trigger handler
  4. Popular trigger handler frameworks and how to use them
  5. The importance of trigger bulkification and how to bulkify your triggers
  6. How and when to use asynchronous transactions in triggers
  7. Trigger best practices
  8. The order of operations in Salesforce

Claude Code Skills

  1. This week we'll learn how to set up MCP Servers. We'll connect Claude Code to things that aren't on your local file system, but do exist within your Salesforce org, so it can read your org's real metadata instead of guessing at what exists.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 7

9 topics

In the seventh week of the course we will cover the following:

Salesforce Developer Skills

  1. What are integrations and how to do them in Salesforce
  2. When to use Apex for an integration as opposed to external services or other Salesforce config tools
  3. What are the differences between the REST vs SOAP APIs
  4. How to set up a named credential
  5. How to set up an External Client App (previously Connected Apps)
  6. How to test integrations with Postman
  7. What are wrapper classes and how to utilize them
  8. How to do a simple integration in Apex
  9. Integration best practices

Claude Code Skills

  1. This week we will find out how to leverage Claude to help us safely test our integrations with external systems.
  2. We'll also set up an integration reviewer subagent whose entire job is to identify if the integration built is missing key functionality that could cause it to fail.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 8

8 topics

In the eighth week of the course we will cover the following:

Salesforce Developer Skills

  1. What are Apex test classes and why they are important
  2. How to test a typical Apex class
  3. How to test a Trigger
  4. How to test asynchronous Apex
  5. How to test integrations in Apex
  6. Why you should always use a data factory for test classes and how to set them up
  7. Why you should always use asserts in your tests and how to set them up
  8. The difference between integration and unit tests

Claude Code Skills

  1. This week we'll figure out how to have Claude assist us in fixing failing tests to identify faults in our testing logic, and identify potential gaps in our tests.
  2. We'll also build a test-reviewer subagent whose job is to hunt for assertions that don't actually assert anything and address them appropriately.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 9

5 topics

In the ninth week of the course we will cover the following:

Salesforce Developer Skills

  1. What is custom metadata and when would we use it?
  2. What are custom settings and when would we use them?
  3. What are custom labels and when would we use them?
  4. Building dynamic code together using custom metadata, custom settings, and custom labels
  5. How to create skills files to make sure our AI tools build with custom metadata, custom settings, and custom labels in mind.

Claude Code Skills

  1. This week we'll learn how to assemble everything we've created into one .claude directory you can take with you wherever you go. That way you'll be prepared when you finally land that first job as a Salesforce dev.
  2. We'll also figure out how to appropriately review the code our agents write by using the skills/knowledge we've developed so far throughout this course.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 10

7 topics

In the tenth week of the course we will cover the following:

Salesforce Developer Skills

  1. What are flows and when to use them
  2. How to use Apex within flows (InvocableApex)
  3. Building a flow and invoking Apex
  4. What is Agentforce and when to use it
  5. How to use Apex within Agentforce
  6. Building an agent and invoking Apex
  7. An overview of Agentforce products and when to use them

Claude Code Skills

  1. This week we'll take a look at the struggles involved with utilizing Claude (or any AI tool) when building out complex configuration, and how we can guide it to be successful with the right context and examples.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 11

8 topics

In the eleventh week of the course we will cover the following:

Salesforce Developer Skills

  1. What is Visualforce and when to use it
  2. How to call Apex from Visualforce
  3. What are Aura Components and when to use them
  4. How to call Apex from Aura components
  5. What are LWCs and when to use them
  6. How to call Apex from LWCs
  7. Understanding the differences between VF, Aura, and LWC
  8. Identifying common front-end vulnerabilities and how to prevent them

Claude Code Skills

  1. This week we'll discuss when to use different Claude models and why you might vary the model based on the task you are doing.
  2. We'll also create a subagent for reviewing front end code and identifying issues with it.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 12

8 topics

In the twelfth week of the course we will cover the following:

Salesforce Developer Skills

  1. A deeper dive into Git
  2. What is a branch in Git and how to check it out
  3. How to add, commit, and merge in Git
  4. How to use diff, reset, rebase, and stash
  5. How to use Git to inspect and display history
  6. How to use Git to roll back code changes
  7. How to push local Git changes to a remote repo on GitHub
  8. How to pull remote Git changes in GitHub to your local repo

Claude Code Skills

  1. This week we'll figure out how to utilize AI to help with git. We'll have it read the diff before you commit, evaluate the code and find potential problems merging it, and more.
  2. We'll also discuss putting your .claude directory in version control so Claude conventions are shared rather than differing for each person on your team.

Weekly Projects

Weekly project is still being developed, more information will be posted soon.

Week 13

6 topics

In the thirteenth week of the course we will cover the following:

Salesforce Developer Skills

  1. A deeper dive into the Salesforce CLI
  2. How to use the different authorization commands
  3. How to create and set up scratch orgs via the CLI
  4. How to use the different project commands to create a new project or deploy to your org
  5. How to query for data in your Salesforce org using the CLI
  6. How to generate unlocked packages via the CLI

Claude Code Skills

  1. How to leverage the Salesforce MCP server as well as skills to have Claude be able to utilize the most current CLI commands on your behalf.

Weekly Projects

You will begin your multi-week capstone project this week. This is still being developed, more info will be available soon.

Week 14

8 topics

In the fourteenth week of the course we will cover the following:

Salesforce Developer Skills

  1. Deployments in Salesforce, how to do them and what your options are
  2. The typical structure of a real deployment pipeline
  3. What are changesets and when you should use them
  4. What is CI/CD and why it's important
  5. What is DevOps Center and when you should use it
  6. Other popular pre-built deployment and CI/CD tools (Copado, Gearset, Flosum)
  7. Pros and Cons of building your own CI/CD tooling
  8. How to deploy between disconnected orgs using unlocked packaging

Claude Code Skills

  1. How to safely introduce AI tools into your deployment pipeline.

Weekly Projects

You will continue working on your multi-week capstone project this week. This is still being developed, more info will be available soon.

Week 15

8 topics

In the fifteenth week of the course we will cover the following:

Salesforce Developer Skills

  1. How to prep for a Salesforce developer interview
  2. What is actually important to most employers
  3. Which employers are most likely to hire junior developers
  4. How to design a resume that stands out
  5. How to set up your LinkedIn to attract recruiters
  6. What additional certs are worth pursuing to land your first job
  7. How to set up your GitHub repo and highlight work you've done
  8. Time for me to answer any of your questions or concerns about interview questions, Salesforce developer careers, etc

Claude Code Skills

  1. This week we'll learn how to leverage Claude to help you practice for a Salesforce developer interview, and how it can help make sure you're not thrown off by any question an employer might ask you.

Weekly Projects

You will continue working on your multi-week capstone project this week. This is still being developed, more info will be available soon.

Week 16

5 topics

In the sixteenth week of the course we will cover the following:

Salesforce Developer Skills

  1. Prep for the Salesforce Platform Developer Cert
  2. Go over how to study for the cert and any useful additional content outside of this course
  3. We'll discuss how to remain calm even on questions you're stuck on
  4. We'll go over the capstone project and talk through any questions you might have
  5. Wrap up class and I'll field any questions you might have about anything!

Claude Code Skills

  1. We'll figure out how to utilize Claude to generate practice exams for you so that you can get as prepared as possible for your PD1 exam.

Weekly Projects

You will finish your multi-week capstone project this week. This is still being developed, more info will be available soon.

Next cohort

Like the look of it? Get in line.

Join the waitlist and you will hear from us the moment enrolment opens - nothing to pay until then.