Imported from personamanagmentlayer/pcl (
stdlib/domains/salesforce-expert/SKILL.md). Install upstream withnpx skills add personamanagmentlayer/pcl --skill salesforce-expert. Copyright stays with the author.
Salesforce Expert
Core Concepts
Salesforce Platform
- Sales Cloud - Sales automation and CRM
- Service Cloud - Customer service and support
- Experience Cloud - Customer portals and communities
- Marketing Cloud - Marketing automation platform
- Commerce Cloud - E-commerce solutions
- Platform - Custom app development (Force.com)
Development Components
- Apex - Object-oriented programming language
- Lightning Web Components (LWC) - Modern UI framework
- Visualforce - Server-side rendered UI (legacy)
- Aura Components - Client-side framework (older)
- SOQL/SOSL - Query languages for Salesforce data
- Triggers - Event-driven automation
Integration & APIs
- REST API - RESTful web services
- SOAP API - Enterprise WSDL-based integration
- Bulk API - Large data volume operations
- Streaming API - Real-time event notifications
- Metadata API - Deploy and retrieve metadata
- Tooling API - Development tools integration
Best Practices
Development Standards
- Follow Apex coding conventions and style guide
- Use bulkified code patterns (no SOQL/DML in loops)
- Implement proper exception handling
- Write comprehensive test classes (75%+ coverage)
- Use descriptive variable and method names
- Document complex business logic
Governor Limits
- Maximum 100 SOQL queries per transaction
- Maximum 150 DML statements per transaction
- Maximum 10,000 records per SOQL query
- Maximum 50,000 records total retrieved
- Use @future for async processing
- Implement batch Apex for large data volumes
Security Best Practices
- Use "with sharing" keyword for classes
- Implement field-level security checks
- Validate user input and sanitize data
- Use parameterized queries to prevent SOQL injection
- Follow principle of least privilege
- Regular security reviews and audits
Lightning Best Practices
- Use cacheable Apex methods with @wire
- Implement proper error handling
- Minimize server round trips
- Use base Lightning components
- Follow Salesforce Lightning Design System (SLDS)
- Optimize component performance
Anti-Patterns
Code Smells
- SOQL/DML statements inside loops
- Hard-coded IDs and values
- Missing null checks
- Recursive trigger calls
- God classes with too many responsibilities
- Missing test coverage
Design Issues
- Tight coupling between components
- No separation of concerns
- Monolithic trigger code
- Missing bulk processing support
- Direct DML operations in triggers
- No error handling strategy
Performance Issues
- Unnecessary SOQL queries
- Processing too many records synchronously
- Missing indexes on frequently queried fields
- Not using selective queries
- Inefficient data structures
- Missing view state optimization
Reference Documentation
Detailed material lives alongside this skill and is read on demand:
- Implementation Examples — Apex Trigger with Handler Pattern, Lightning Web Component, Batch Apex for Data Processing, REST API Integration
Resources
Official Documentation
- Salesforce Developer Documentation - Complete reference
- Apex Developer Guide - Language guide
- Lightning Component Library - UI components
- API Reference - All Salesforce APIs
Learning Platforms
- Trailhead - Free interactive learning
- Salesforce Developer Centers - Resources and tools
- Salesforce Help - Product documentation
- Salesforce University - Official training
Tools & Extensions
- Salesforce CLI - Command-line interface
- VS Code Salesforce Extensions - IDE support
- Developer Console - Browser-based IDE
- Workbench - Web-based admin tool
Community Resources
- Salesforce Stack Exchange - Q&A community
- Salesforce Developer Forums - Discussion boards
- GitHub Salesforce Samples - Example applications
- Salesforce Blog - Technical articles