DX@Scale practitioners are seasoned developers who understand what DevOps on Salesforce is about, Application Architecture. They follow software engineering principles and are deeply familiar with Salesforce DX and Packaging.
A DX@Scale practitioner helps the whole team adopt a DevOps culture, where the team is responsible for the path to production. A project should have at least one DX@Scale practitioner full time.
- Lead a cross-functional team to examine and translate business requirements into a solution using Salesforce capabilities
- Implement highly maintainable Salesforce solutions and perform peer code reviews to ensure the same.
- Participate in development work streams, from design through testing and deployment.
- Maintain effective client relationships, delivering timely and relevant information with the ability to quickly identify and report project risks.
- Work with other developers, designers, and architects to ensure the build meets business requirements and performance goals.
- Understanding of Salesforce DX, modular development using packaging and version control
- Strong knowledge of DX@Scale practices
- Knowledge of the differences between CI and CD
- Experience with modular application architecture
- Participate in ‘Go-Live’ support and testing activities
- Ability to Draft, Refine and Execute deployment runbooks for deployments and sandbox refreshes
- Passionate for continuous improvement, automation, and never accepting the status quo for DevOps
- Stays up to date with DevOps/Developer Experience Trends in the Industry and evolution of the Salesforce CLI and SFDX
Salesforce Developers are team members either from a functional or technical background who along with DX@Scale practitioners are responsible for developing features in Salesforce by utilizing software engineering principles and writing testable and deployable code/config. Salesforce Developers in a DX@Scale project is responsible for collaborating with Application Support teams and deploying packages to production
- Equivalent Salesforce Development Experience
- Understanding of Salesforce DX and Version Control
- Participate in ‘Go-Live’ support and testing activities
Application support team are responsible for maintaining Salesforce production (includes all the operational activities in a Salesforce Org) rolling out hot fixes and maintaining the health of the org.
- Equivalent Salesforce Development Experience typically an Advanced Salesforce Administrator
- Environment Management (Includes Creation, Refresh and Salesforce Release Planning)
- Support Development Teams in orchestrating releases if required.
- Understanding of Salesforce DX and version control
- Participate in ‘Go-Live’ support and testing activities
A DX@Scale engineer will be able to define and implement a DX@Scale pipeline that fits the project’s needs (branching model, environment strategy, deployment pipeline, release definitions)
DX@Scale engineer will maintain and monitor the pipeline but will not be responsible for release orchestration. Every project doesn't need a full time DX@Scale Engineer. Either one of the team members who has the below skills can play the role of a DX@Scale Engineer
- Strong know how on Salesforce Development Lifecycle
- Salesforce Plugin Development using Typescript/Node.js
- Authoring CI/CD pipelines
- Scripting and Bash Skills
- Understands DevOps tools such as Artifact Registry, Docker Image and comfortable with YAML
DX@Scale works with various team structures. One of the most successful team structure is depicted below