Develop Advanced Salesforce Solutions
Salesforce platform patterns: LWC wire service, bulkified Apex triggers, Queueable jobs, Bulk API 2.0, and Salesforce DX scratch orgs.
Why it matters
Build robust and scalable applications on the Salesforce platform, leveraging expert patterns for Lightning Web Components, Apex triggers, and asynchronous processing.
Outcomes
What it gets done
Implement reactive LWC components with the Wire service.
Develop bulkified Apex triggers using the handler pattern.
Utilize Queueable Apex for asynchronous operations and callouts.
Integrate with Salesforce APIs and external systems.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/ag-salesforce-development | bash Overview
Salesforce Development
Provides Salesforce platform development patterns: LWC wire service, bulkified Apex triggers, Queueable async processing, Bulk API 2.0, and DX/2GP packaging. Use when building LWC components, Apex triggers, external Salesforce integrations, or scratch-org/CI-CD packaging workflows.
What it does
Provides expert patterns for Salesforce platform development spanning Lightning Web Components (LWC), Apex triggers and classes, REST and Bulk APIs, Connected Apps, and Salesforce DX with scratch orgs and 2nd-generation packages (2GP).
When to use - and when NOT to
Use this skill when building LWC components with reactive data binding, writing bulkified Apex triggers, offloading work to async Queueable Apex, integrating external systems via Connected Apps and REST/Bulk APIs, or setting up Salesforce DX scratch-org and 2GP packaging workflows. Not a fit for external API integration beyond Salesforce (routes to a backend skill), complex custom UI beyond LWC (routes to a frontend skill), or HubSpot/data-warehouse/payment/auth integrations, which have their own dedicated skills.
Inputs and outputs
Demonstrates the @wire decorator pattern for reactive LWC data binding against Lightning Data Service (getRecord) or Apex methods (@AuraEnabled(cacheable=true)), a bulkified Apex trigger using a handler-pattern base class with recursion prevention and single-DML bulk operations, Queueable Apex for async processing with retry-with-backoff and error-record logging (limited to 50 jobs per transaction), a Connected App JWT Bearer flow client for server-to-server REST API authentication and querying, and a Bulk API 2.0 client that creates a job, uploads CSV data, closes the job, and polls for completion - intended for 10K+ record operations.
Covers Salesforce DX scratch-org workflows (sf org create scratch, deploy, assign permset, import data, run tests) and 2nd-generation package development (sf package create/version create/version promote, requiring 75% code coverage to promote), plus a GitHub Actions CI/CD pipeline that authenticates the Dev Hub, spins up a scratch org, deploys, runs tests, and tears down the org.
Documents nine "sharp edges" by severity (governor limits apply per transaction not per record; @wire results are cached and can go stale; trigger recursion causes infinite loops; dynamic SOQL is vulnerable to injection; scratch orgs expire and lose data) and ten validation checks with exact error messages, covering SOQL/DML-in-loop governor limit violations, callouts from synchronous triggers, SOQL injection via string concatenation, missing WITH SECURITY_ENFORCED, hardcoded Salesforce IDs and credentials, and direct DOM manipulation in LWC's shadow DOM.
Integrations
Built on the Salesforce platform stack: Lightning Web Components and Lightning Data Service, Apex (triggers, Queueable, AuraEnabled methods), REST and Bulk API 2.0 with OAuth 2.0 JWT Bearer or Web Server flow via Connected Apps and Named Credentials, and Salesforce DX/CLI for scratch orgs, 2GP packaging, and GitHub Actions CI/CD.
Who it's for
Salesforce developers building LWC UIs, Apex automation, external integrations, or CI/CD pipelines who need bulkification, governor-limit-safe patterns, and DX-based packaging rather than ad hoc, non-bulkified Apex.
sf org create scratch --definition-file config/project-scratch-def.json --alias myapp-dev --duration-days 7 --set-default
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.