Defining Salesforce.com roles and responsibility [Recruiting & Employment]

Posted August 6th, 2011 in Uncategorized by John Coppedge

I regularly talk with all sorts about employment opportunities on the Salesforce platform.  It is clear to me now that it can be very challenging to define exactly what you’re looking for as a prospective employer.


Three common roles I encounter are as follows (but not always labeled as such):


1. Administrator

A good administrator in my mind is someone that keeps the existing Salesforce instance(s) running smoothly.  This includes functions such as:

  • Reports and dashboards
  • List views
  • User administration
  • Addition of picklist values
  • Modification of page layouts
  • Lead & case routing rules
  • Email templates

The key here is that an administrator is not responsible for configuration of new functionality and generally speaking does not need to have a strong knowledge of integrations and other downstream impacts.


2. Architect

An architect is someone who performs business and technical analysis, and develops a solution.  They are responsible for delivering new functionality and must have an intricate knowledge of integrations and other downstream impacts.  This would include:

  • Custom fields
  • Custom objects
  • Analytic snapshots
  • Record types
  • Appexchange packages
  • Workflow rules
  • Approval processes
  • Designation of apex/visualforce (determination of where code must be written, not actually writing the code)
  • Data flow and integration mechanics (not an ETL developer, but may configure an integration if it is GUI-based)

An architect has to understand the basics of administration at a minimum.  I often think of solutions architecture as a progression from an administration, but that could be because it was my own.  Smile


3. Developer

In my mind a developer is someone who writes code.  On the Salesforce platform this necessarily includes Apex and Visualforce with custom controllers.  This designation can get confusing for a few reasons:

a) The term “click-to-configure developer” – it really is great marketing, but does confuse titles.  This confusion is exacerbated by certifications: certified developer and certified advanced developer are starkly contrast in expertise required.   A certified developer is someone who understand the basics of code and can write a vf page with a standard controller, while a certified advanced developer can necessarily write apex/vf custom controllers.  A certified developer is more akin to a certified administrator than to a certified advanced developer.

b) Generalist developers.  There are a ton of folks out there that understand code and have written bits of code on the Salesforce platform.  There is huge distinction between someone who has actively learned the Salesforce platform (including administration, apex, vf, limits, bulk apex, best practices, etc.) versus a generalist developer who has learned just enough combined with their prior OOP experience to code a trigger.  For lack of better terms I’ll call the first a Platform Developer and the latter a General Developer.


Cheers @chrisodavies for the conversation last night that sparked this post.


Do you agree with my classifications?  Would you refer to these roles as anything different?





Note: there are other roles (QA, deployment experts, etc.) that I have not included in this conversation but are quite valuable as well.





8 Responses so far.

  1. Chris O DaviesNo Gravatar says:

    Thanks for the mention John! great article.

  2. Cindy MontgomeryNo Gravatar says:

    Very informative article. I would however add to the Architect role as not only understanding the basics of Administration at the minimum, but have mastered the basics before adding on the Architect skills.

  3. […] Defining Salesforce.com Rules and Responsibility @johncoppedge Coppedge outlines the different roles for salesforce.com (Administrator, Developer, and Architect) and the corresponding job requirements. […]

  4. suriNo Gravatar says:

    thank you .

  5. harishNo Gravatar says:

    thank you for ur valuable suggestion. plz send me if any issues that gives stuff to me to learn more more issues solving capability.

  6. Brian ClineNo Gravatar says:

    I would think that these descriptions are still pretty accurate. Being a “general developer” can be fairly rough on force.com without a good working knowledge of the bulk operations and getting around the limits.

  7. Abhishek PorwalNo Gravatar says:

    I am a Technical Recruiter and recruit people with SFDC expertise quite often, however I get little confused when my client demands for SFDC Business Analyst but job responsibilities consist SFDC configuration, customization along with Dev 401, 501 certifications.

    In my view, SFDC Developer & Analyst are pretty much same because SFDC developers also gather requirements, design, develop, test, document, communicate and deploy business solutions.

    Would appreciate if anyone can clarify little more?

    Abhishek Porwal

  8. Ashok PanigrahiNo Gravatar says:

    @ Abhishek – My understanding is the key difference between SFDC Developer and BA is the coding or development aspect. A SFDC Developer is responsible for coding but a BA is not. The BA, the key role is to meet with stake holders/ Executive sponsor, understand the business requirement and convert it to Technical Specification which helps the developer to write the code. It is quite important that the BA understands the technical environment and product architecture so as to convert Functional requirement to technicall requiement.

    Although a Developer can also be assigned additional responsibilit that of a BA, but that is upto the client to decide to either to have two resources to play two specific roles..
    Hope this helps..

Leave a Reply