SP System Architecture and Design 3 — Questions and Answers
Question 1: An architect is designing a solution where multiple business units share one Salesforce org but must have completely isolated data visibility. Which feature is the foundation of this design?
- Field-Level Security with permission sets
- Role Hierarchy with OWD set to Private (Correct answer)
- Sharing Rules based on record ownership
- Territory Management with assignment rules
Correct answer: Role Hierarchy with OWD set to Private
Setting Organization-Wide Defaults (OWD) to Private on critical objects ensures no cross-unit data leakage, with the role hierarchy as the baseline access model.
Question 2: A client requires that certain Salesforce fields are encrypted at rest and that only specific users can view the plaintext values. Which feature meets this requirement?
- Classic Encryption (masked fields)
- Shield Platform Encryption (Correct answer)
- Field-Level Security with no read permission
- Custom Apex getter with permission check
Correct answer: Shield Platform Encryption
Shield Platform Encryption encrypts data at rest in the database and enforces decryption access via the 'View Encrypted Data' permission.
Question 3: When designing a high-volume case management system, which approach best avoids record locking contention on a shared counter field (e.g., daily case count)?
- Update the counter in a before-insert trigger
- Use a Skinny Table to speed up the update
- Replace the counter with an aggregate SOQL query at read time (Correct answer)
- Schedule a nightly Batch Apex to recalculate counters
Correct answer: Replace the counter with an aggregate SOQL query at read time
Computing aggregates at read time with SOQL COUNT() eliminates write-time locking contention entirely.
Question 4: A Salesforce implementation uses a large number of custom metadata types. What is a key architectural advantage of Custom Metadata over Custom Settings?
- Custom Metadata can store binary attachments
- Custom Metadata records are deployable as metadata and included in packages (Correct answer)
- Custom Metadata supports per-user record visibility
- Custom Metadata bypasses governor limits on SOQL queries
Correct answer: Custom Metadata records are deployable as metadata and included in packages
Custom Metadata records are true metadata and can be deployed via change sets, Salesforce DX, and packages — unlike Custom Settings data.
Question 5: An architect needs to design a solution where an external system must initiate a long-running Salesforce process and receive a callback when complete. Which pattern is most appropriate?
- Synchronous REST callout from the external system
- External system calls REST to enqueue, Salesforce sends Outbound Message on completion (Correct answer)
- SOAP API with a 120-second timeout
- Polling the Salesforce Bulk API job status endpoint
Correct answer: External system calls REST to enqueue, Salesforce sends Outbound Message on completion
An async enqueue-and-callback pattern (REST to start, Outbound Message or Platform Event to notify) avoids timeout constraints on long-running processes.
Question 6: Which Salesforce architectural concept describes the practice of breaking a complex automation into small, single-purpose flows or classes rather than one monolithic process?
- Apex Sharing Architecture
- Separation of Concerns (Correct answer)
- Role-Based Access Control
- Event-Driven Architecture
Correct answer: Separation of Concerns
Separation of Concerns keeps individual components focused on one responsibility, making the system easier to test, debug, and maintain.
Question 7: A customer wants to use Salesforce as the system of record for products while allowing regional teams to add custom attributes. Which data modeling approach best supports this without schema explosion?
- Add hundreds of optional custom fields to the Product object
- Use a key-value Custom Object (Product_Attribute__c) related to Product2 (Correct answer)
- Store attributes as JSON in a Long Text Area field
- Create region-specific child Product objects via Master-Detail
Correct answer: Use a key-value Custom Object (Product_Attribute__c) related to Product2
A related attribute object (Entity-Attribute-Value pattern) keeps the core schema clean while supporting unlimited regional customization.
An architect is designing a solution where multiple business units share one Salesforce org but must have completely isolated data visibility.
Which feature is the foundation of this design?