Salesforce Certified Data Architecture & Management Designer Exam Tips

Last week saw the revision pay off as I passed my first Salesforce Architect Designer exam. I’ll share some tips that I learnt along the way when preparing for the exam.

I'm a Certified Salesforce Data Management and Architecture Designer

My approach to exam revision

I tend to “brute force” all of the resource guide materials, writing copious notes as I go to then refer back to. I tend to print some of the “best practice” guides and cheat sheets referred to in the resource guide materials and study these when I’m on my commute to/from work.

The resource guide

The Salesforce-produced exam resource guide (found here) is the de-facto place from which to base revision, but there are some areas that aren’t covered in a lot of detail that make it on to the exam, such as MDM. Check out the Exam Guide for the full listing of what the exam covers.

Other useful guides and resources

Here are some other documents (some of which are referenced in the Resource Guide):

Key topics

Data Quality

Know what responsibilities fall under which area in the enterprise:

Know the difference between Clean and Prospector -

Query optimisation

Know how to improve query performance, including the measures you can take to avoid full table scans across large data sets. Knowing the indexing of fields will help here.


Know what skewing is and how it affects performance.

There are two types of skewing:

  1. Ownership skew: One person owns a large amount of records. Think one person owning lots of accounts
  2. Lookup skew: One record is the parent to many child records. Think one account having lots of contacts or lots of opportunities


Salesforce supports custom indexes to speed up queries and improve performance. Custom indexes need to be enabled by Salesforce Support.

There are indexes enabled and maintained by default for most objects:

Custom indexes can be created on custom fields, with the exception of:

External IDs cause an index to be created on that field. External IDs can be created on the following fields:

Indexing formula fields

Formula fields that are deterministic can be indexed. Essentially, formula fields that don’t pull data through from other objects or use dynamic functions like TODAY() can be indexed.

Skinny Tables

As summarised here:

“Salesforce can create skinny tables to contain frequently used fields and to avoid joins. Doing so keeps the skinny tables in sync with their source tables when the source tables are modified. If you want to use skinny tables, contact Salesforce Customer Support. When enabled, skinny tables are created and used automatically where appropriate. You can’t create, access, or modify skinny tables.

For each object table, Salesforce maintains other, separate tables at the database level for standard and custom fields. This separation ordinarily requires a join when a query contains both kinds of fields. A skinny table contains both kinds of fields and does not include soft-deleted records.”

Know what skinny tables are, when to employ them, and their limitations.

Loading Data

Bulk API

The Bulk API is used to run asynchronous, batched data loads or extractions. Knowing it’s limitations, when to run in Serial vs. Parallel mode and how bulk queries work (retry limits, timeout limits) will serve you well.

Lock Contention

Know what causes lock contention when performing data operations. For example, when loading or updating data, know how skewing will affect performance. Know how having workflows, validation rules, assignment rules and the like will affect the quality and speed of your operation.

PK Chunking

PK Chunking can be used as a method for optimising queries by querying a target table to identify a number of chunks of records with sequential ID’s which are then used to form the actual queries against the target table.

Useful blog posts I found when revising

When revising for the exam, I found the following two blog posts really help reinforce my learning:

Good luck!

Cue the satisfaction when seeing the “pass” screen at the end of the exam! I’m now the proud owner of my 5th Salesforce certification.

For anyone embarking on this exam, I wish you good luck!