Salesforce

Hire the Top 3% of Salesforce自由开发者

Toptal是面向顶级Salesforce开发人员的市场, engineers, programmers, coders, architects, 和顾问. 顶级公司和初创公司可以雇佣专职(全职), hourly, 或者兼职的Salesforce自由职业者,为他们的关键任务软件项目工作.

Clients Rate total Salesforce开发人员4.5 / 5.0截至2023年12月22日,平均有264条评论

雇佣自由职业者Salesforce开发人员和工程师

David Tanura

自由Salesforce开发人员

AustraliaToptal Member Since 2021年4月26日

David是Salesforce高级解决方案和技术架构师,能够理解和表达业务及其在平台上设计和实现解决方案的需求. 他高度了解业务流程,擅长通过设计和构建解决方案来增加价值. 不断学习新的和互补的技术和方法,为业务提供积极的成果. 他的行业包括金融科技, 金融服务, pharma, FMCG, 房地产开发, 和技术.

Show More

Jenn Sanders

自由Salesforce开发人员

United StatesToptal Member Since 2019年6月17日

Jenn是Salesforce的狂热爱好者,她喜欢挑战,擅长自己的工作,因为她在乎. 作为一个在Salesforce领域工作了16年的老手, 她专门研究科技的交叉领域, people, and process. 在一起,她会建立你的梦想,克服你的问题,并加快你的业务. Jenn是一位为可伸缩性而构建的架构师, 为易读性进行配置的作者, 也是一个授权领养孩子的教育家.

Show More

格里高利Lovelidge

自由Salesforce开发人员

United StatesToptal Member Since 2020年2月26日

Gregory是一位干劲十足的高级Salesforce顾问和开发人员,拥有10多年的远程机会寻找经验. 他善于制定技术解决方案,并从概念到完成执行项目计划. 他专注于与客户密切合作以确定项目目标, 规范, 和解决方案.

Show More

George Elias

自由Salesforce开发人员

United StatesToptal Member Since 2022年2月21日

George是一名获得过七次Salesforce认证的开发人员,在编程和声明性Salesforce功能方面都有丰富的经验. 他的专业范围从数据模型设计到API集成, 在定制组件开发方面进行了大量投资. George在以前的项目中成功地完成了管理员和开发人员的任务,并渴望为新的项目做出贡献.

Show More

Roman Kudrin

自由Salesforce开发人员

GermanyToptal Member Since 2017年1月17日

Roman是一名拥有9年经验的高技能SFDC专业人员. 他丰富的专业知识和21项认证涵盖以下Salesforce产品:销售, Service, Community, 营销云, and Pardot. 在他的职业生涯中,Roman成功地在不同的行业交付了许多项目. 以独特的融合发展, architecting, integrations, 咨询技巧, Roman是推动项目成功的理想人选.

Show More

Randy Yu

自由Salesforce开发人员

United StatesToptal Member Since 2021年9月25日

Randy是一名12倍Salesforce认证的重型开发人员和精通声明性数据建模的动手架构师, flows, processes, 营销云, 体验云, and CPQ. 他是一位多才多艺的全栈Salesforce程序员,拥有LWC和Aura开发方面的专业知识, 以及服务器端Apex, SOQL / SOSL编程, and SFDX CLI. Randy擅长使用LDS进行Salesforce ETL、数据集成和UI/UX设计. 他是一个善于交际的人,有极好的沟通技巧.

Show More

Jason Sun

自由Salesforce开发人员

United StatesToptal Member Since May 8, 2020

Jason是一位美国的技术和商业专家,专门从事Salesforce. 他是Salesforce开发者世界锦标赛的决赛选手,拥有13项认证和加州大学洛杉矶分校的MBA学位. 他有13年的SFDC经验,并使用本地集成和自定义SOAP/REST api设计了SFDC和web应用程序之间的集成. 不像没有MBA学位的纯开发者, 除了技术实现之外,他还能为企业提供流程设计和业务策略方面的建议.

Show More

卢卡斯排队

自由Salesforce开发人员

PolandToptal Member Since 2017年2月22日

Lukasz是一位经验丰富的Salesforce开发人员和架构师. 他曾作为Salesforce专家在零售等行业从事全球实施工作, insurance, 以及为eBay这样的公司制造产品, Roche, Ricoh, and Sophos. 他为项目生命周期的所有部分开发了解决方案, 在多国环境中, 在不同时区, 并且拥有庞大的用户基础. Lukasz认为,良好的沟通和用户满意度在现代商业解决方案中起着关键作用.

Show More

尤金Rusalev

自由Salesforce开发人员

PolandToptal Member Since 2018年9月12日

经验丰富的销售人员.com认证高级开发人员, Eugene在Salesforce拥有超过8年的专业知识, 包括Salesforce CRM定制和Force.Com产品开发. 他的知识包括Apex, Lightning, 闪电Web组件, Salesforce 1, 客户和合作伙伴社区, 与外部系统的集成, and more. 尤金是一位出色的沟通者,他对细节表现出了出色的关注.

Show More

Sunny Gill

自由Salesforce开发人员

IndiaToptal Member Since 2016年8月2日

Sunny拥有超过11年的IT专业经验. 他致力于保持尖端的技术技能和最新的行业知识. 他是Salesforce认证的开发人员/管理员,在Salesforce的开箱即用功能(工作流)方面也有专业知识, 审批流程, 标准对象, 标准应用程序). 他有编写Apex类/触发器、LWC组件、集成等方面的实践经验.

Show More

Curt Griffin

自由Salesforce开发人员

United StatesToptal Member Since 2020年8月13日

Curt是Salesforce的顾问和解决方案架构师,拥有丰富的技术经验, healthcare, education, insurance, 金融服务, banking, retail, and travel. 他拥有多个Salesforce认证:系统管理员, 平台应用构建器, 销售云顾问, 服务云顾问. Curt还参与了广泛的业务流程, 包括销售, service, 客户和合作伙伴社区, knowledge, reports, dashboards, 数据迁移, 组织维护, etc.

Show More

现在注册以查看更多资料.

Start Hiring

招聘指南

雇用优秀的Salesforce开发人员指南

Salesforce是一家云计算公司, 最著名的是其旗舰客户关系管理(CRM)系统. 除了它的许多开箱即用的功能, Salesforce CRM解决方案提供了一个成熟的开发环境,允许公司利用云中的Salesforce技术定制和开发他们的解决方案. 本指南提供了一些有见地的问题样本,以帮助您确定最好的Salesforce开发人员,他们是各自领域的专家.

阅读招聘指南

Salesforce招聘资源

招聘Salesforce开发人员的更多资源

工作描述模板面试问题Jobs
Trustpilot
总体优势

在无风险试用后,98%的Toptal客户选择雇用我们的人才.

Toptal的筛选和匹配过程确保卓越的人才与您的精确需求相匹配.

Start Hiring
报纸上铺天盖地

... 允许公司快速组建具有特定项目所需技能的团队.

尽管对程序员的需求在不断增加,但Toptal对自己近乎常春藤联盟级别的审查感到自豪.

Our clients
为游戏制作应用程序
Conor Kenney
为游戏制作应用程序
构建一个跨平台的应用程序,在全球范围内使用
蒂埃里Jakicevic
构建一个跨平台的应用程序,在全球范围内使用
引领数字化转型
Elmar Platzer
引领数字化转型
挖掘实时数据将改变行业的游戏规则
挖掘实时数据将改变行业的游戏规则
Testimonials

没有Toptal就不会有Tripcents. Toptal Projects使我们能够与产品经理一起快速发展我们的基金会, 带领开发人员, 高级设计师. 在60多天的时间里,我们从概念到Alpha. 其速度、知识、专业知识和灵活性是首屈一指的. Toptal团队是tripcents的一部分,就像tripcents的任何内部团队成员一样. 他们像其他人一样贡献并拥有开发的所有权. 我们将继续使用Toptal. 作为一家初创公司,它们是我们的秘密武器.

布兰特利·佩斯,首席执行官 & Co-Founder

Tripcents

我对我们与Toptal的合作经验非常满意. 和我一起工作的专业人员在几个小时内就和我通了电话. 在和他讨论了我的项目后,我知道他就是我想要的候选人. 我立即雇用了他,他没有浪费时间就完成了我的项目, 甚至通过添加一些很棒的设计元素来增加我们的整体外观.

保罗·芬利,局长

K Dunn & Associates

与我合作的开发者都非常出色——聪明、有动力、反应灵敏. 过去很难找到高质量的工程师和顾问. Now it isn't.

瑞安·洛克菲勒首席执行官

Radeeus

Toptal立即理解了我们的项目需求. 我们遇到了一位来自阿根廷的杰出自由职业者, from Day 1, 沉浸在我们的行业中, 与我们的团队无缝融合, 理解我们的愿景, 并产生了一流的结果. Toptal使与高级开发人员和程序员的联系变得非常容易.

Jason Kulik,联合创始人

ProHatch

作为一家资源有限的小公司,我们不能犯代价高昂的错误. Toptal为我们提供了一位经验丰富的程序员,他能够立即投入工作并开始做出贡献. 这是一次很棒的经历,我们会马上再来一次.

斯图尔特·波克尼校长

现场专用软件解决方案

我们使用Toptal聘请了一位具有丰富的Amazon Web Services经验的开发人员. 我们面试了四位候选人,其中一位非常符合我们的要求. 这个过程迅速而有效.

Abner Guzmán Rivera,首席技术官和首席科学家

Photo Kharma

Sergio是一个很棒的开发者. 一流,反应迅速,工作效率高.

Dennis Baldwin,首席技术专家和联合创始人

PriceBlink

和Marcin一起工作是一种乐趣. 他很能干。, professional, flexible, 并且非常迅速地理解需要什么以及如何实现它.

安德鲁·费舍尔,首席技术官

POSTIFY

我们需要一位能立即开始我们项目的专业工程师. 西马纳斯的工作超出了我们的预期. 不需要采访和追踪专家开发人员是一种非常节省时间的方法,并且让每个人都对我们选择切换平台以使用更健壮的语言感到更舒服. Toptal使这一过程变得简单方便. Toptal现在是我们寻求专家级帮助的首选之地.

Derek Minor, Web开发高级副总裁

网络传媒集团

Toptal的开发人员和架构师都非常专业,也很容易共事. 他们提供的解决方案价格合理,质量上乘,缩短了我们的发行时间. 再次感谢,Toptal.

首席执行官杰里米·韦塞尔斯

Kognosi

我们与Toptal合作非常愉快. 他们为我们的应用程序找到了完美的开发人员,让整个过程变得非常简单. 它也很容易超出最初的时间框架, 我们可以在整个项目中保持同一个承包商. 我们强烈推荐Toptal,因为它可以快速无缝地找到高素质的人才.

Ryan Morrissey,首席技术官

应用商业技术有限责任公司

我对Toptal印象深刻. 我们的开发人员每天都和我交流,他是一个非常强大的程序员. 他是一个真正的专业人士,他的工作非常出色. Toptal 5星.

首席执行官彼得罗·卡索

浪人娱乐有限公司

与Toptal合作是一次很棒的经历. 在使用它们之前, 我花了相当多的时间面试其他自由职业者,但没有找到我需要的. 在与Toptal合作后,他们在几天内就为我找到了合适的开发者. 与我一起工作的开发人员不仅提供高质量的代码, 但他也提出了一些我没有想到的建议. 我很清楚,阿莫里知道自己在做什么. 强烈推荐!

行政总裁郑志刚

Bulavard, Inc.

作为一名Toptal合格的前端开发人员,我还经营着自己的咨询业务. 当客户来找我帮忙填补他们团队中的关键角色时, Toptal是我唯一愿意推荐的地方. Toptal的所有候选人都是精英中的精英. Toptal是我在近5年的专业在线工作中发现的性价比最高的网站.

伊桑·布鲁克斯,首席技术官

Langlotz专利 & 商标工程公司.

在希格尔的早期, 我们需要一流的开发者, 以可承受的价格, 及时地. Toptal交付!

Lara Aldag,首席执行官

Higgle

Toptal能让你轻松找到合适的人选,让你放心,因为他们有能力. 我肯定会向任何寻找高技能开发人员的人推荐他们的服务.

Michael Gluckman,数据经理

Mxit

Toptal将我们的项目与最优秀的开发人员快速匹配的能力非常出色. 开发人员已经成为我们团队的一部分, 我对他们每个人所表现出的敬业精神感到惊讶. 对于那些希望与最好的工程师远程工作的人来说,没有比Toptal更好的了.

劳伦特·阿里,创始人

Livepress

Toptal让寻找合格的工程师变得轻而易举. 我们需要一个有经验的ASP.. NET MVC架构来指导我们的启动应用程序的开发, Toptal在不到一周的时间里为我们找到了三位优秀的候选人. 在做出我们的选择后,工程师立即在线并开始工作. 这比我们自己发现和审查候选人要快得多,也容易得多.

Jeff Kelly,联合创始人

协同解决方案

我们需要一些Scala的短期工作,Toptal在24小时内为我们找到了一位优秀的开发人员. 这在其他平台上是不可能实现的.

Franco Arda,联合创始人

WhatAdsWork.com

Toptal为快速发展和规模化的企业提供不妥协的解决方案. 我们通过Toptal签约的每一位工程师都迅速融入了我们的团队,并在保持惊人的开发速度的同时,将他们的工作保持在最高的质量标准.

Greg Kimball,联合创始人

nifti.com

如何通过Toptal招聘Salesforce开发人员

1

与我们的行业专家交谈

Toptal的工程总监将与您一起了解您的目标, 技术需求, 团队动力.
2

与精心挑选的人才一起工作

几天之内,我们将为您的项目介绍合适的Salesforce开发人员. 平均匹配时间在24小时以下.
3

绝对合适

与您的新Salesforce开发人员一起试用一段时间(只在满意的情况下付费), 在订婚前确保他们是合适的人选.

寻找拥有相关技能的专家

在我们的人才网络中访问大量熟练的开发人员,并在48小时内雇用最优秀的3%.

FAQs

  • Toptal Salesforce开发人员有何不同?

    At Toptal, 我们对Salesforce开发人员进行了彻底的筛选,以确保我们只为您匹配最优秀的人才. 在200多个中,每年有5000人申请加入Toptal网络, 只有不到3%的人能达标. 你将与工程专家(而不是一般的招聘人员或人力资源代表)一起了解你的目标, 技术需求, 团队动力. 最终的结果是:经过专家审查的人才从我们的网络,定制匹配,以满足您的业务需求.

  • 我可以在48小时内通过Toptal雇佣Salesforce开发人员吗?

    取决于可用性和进度, 您可以在注册后48小时内开始与Salesforce开发人员合作.

  • Toptal Salesforce开发人员的无风险试用期是什么?

    我们确保您和您的Salesforce开发人员之间的每次约定都以长达两周的试用期开始. 这意味着你有时间确认订婚是否成功. 如果你对结果完全满意, 我们会给你开时间单的,你愿意多久我们就多久. 如果您不完全满意,我们不会向您收费. From there, 我们要么分道扬镳, 或者我们可以为您提供另一位可能更合适的专家,我们将与他开始第二轮谈判, 无风险试用.

Share
Salesforce

如何聘请优秀的销售人员

一般来说,编写代码是扩展任何软件、产品或平台的必要部分. 但是当涉及到Salesforce项目时,就不一定需要编码了.

这是可能的,因为Salesforce提供了一个全面的工具箱, 包括拖放工具来构建数据库, 使用点击工具编辑的标准用户界面, 以及具有高级自动化功能的工作流引擎.

只使用这些工具, 无需编写一行代码,就可以在Salesforce生态系统中创建高级定制业务解决方案.

这个开箱即用的工具包将适用于一些人, 对其他人来说, 可能需要Salesforce应用程序专家来帮助您完成任务.

这时候就需要编码,这时候你就需要雇佣一名开发人员来帮助你.

这个开箱即用的工具包将适用于一些人, 对其他人来说, 可能需要一个专家来帮你到达终点线.

与销售团队, 这个开箱即用的工具包将适用于一些人, 而对于其他人来说,可能需要一个专家来帮助你到达终点线.

如果你确实需要一个专家级的Salesforce开发人员, 你应该找一个不仅精通SQL和Salesforce拖放工具的人, 而是一个认证的开发人员,他也知道Apex和SOQL, Salesforce的自定义查询和编程语言. 你也可以找一个有Salesforce闪电经验的人.

大多数人都不知道该问什么问题,这就是为什么我们把这个指南放在一起. 在其中,您将找到我们的顶级Salesforce开发人员面试问题和答案.

问题与答案

问:在Apex中命名可用的集合类型. 讨论它们的局限性和特点.

在Salesforce中,Apex支持三种不同的集合类型:列表、映射和集合.

Lists 元素的有序集合是由它们的索引来区分的吗. 当您希望通过索引来标识一个元素时,应该使用列表. 同样重要的是要注意,列表可以包含重复项.

Maps 是键值对的集合,其中每个唯一的键映射到单个值. 键可以是任何基本数据类型, value可以是一个原语, sObject, 集合类型, 或Apex对象.

Sets 是不包含任何重复元素的无序集合(与列表相反), 如上所述).

您应该使用哪种类型? 这取决于您要完成的任务以及上面描述的每种集合类型的特征.

值得一提的是,从集合中删除项比从列表中删除项更直接. 当从列表中删除一个项时,索引将向左移动.

集合可以容纳的项数没有固有限制, 尽管存在基于堆大小的隐式限制.

由于环境的多租户特性,Salesforce维护了一个 table 所有的限制. Salesforce偶尔会修改这些限制并调整执行能力.

问:讨论Apex中的交易控制限制.

Salesforce是一个多租户环境, 这实际上意味着所有的资源都在用户之间共享. 为了维护系统性能和可用性,平台强制执行流程限制.

所有Salesforce开发人员都必须了解这些限制,因为它们会影响解决方案的设计和编码方式.

以下是与事务控制最相关的限制.

  • 在回滚期间不会回滚静态变量.
  • 设置保存点后插入的对象的ID在回滚后不会被清除.
  • 您设置的每个RollBack或SavePoint都将计入DML语句的调控器限制.
  • 对savepoint的引用不能交叉触发器调用,因为每个触发器调用都是一个新的触发器上下文.
  • 如果您设置了多个保存点, 然后回滚到不是您生成的最后一个SavePoint的保存点, 之后的SavePoint变量无效.

问:同步Apex请求的时间限制是什么? 讨论可以用来避免达到极限的策略.

运行超过5秒的同步Apex请求被认为是长时间运行的. 为了避免达到这个限制,建议使用以下任何一种策略.

  • 调优SOQL和DML操作,确保查询是可选择的.
  • 检查Batch Apex是否是将同步流程转换为异步流程的可能替代方案.
  • 尽量限制对同步web服务的调用.

这些都是Salesforce开发人员在达到极限时需要注意的标准解决方案.

限制是Salesforce开发的核心,每个开发人员都应该了解它们.

当你提到极限时出现错误, 您应该调整代码以进行优化, 或者将您的解决方案分解为多个块,这些块将保持在Salesforce强制限制内.

问:Apex中全局类和公共类的主要区别是什么? 举例说明.

全球类 是可见的 any 应用程序或名称空间,而 公共类 只在内部可见 a specific 应用程序或名称空间.

所有使用 public 访问修饰符只能在您自己的应用程序或名称空间中访问.

公共类MyClass {
	//只能在应用程序中访问的方法
}

类使用 global Apex在任何地方都可以访问访问修饰符. 一个示例是允许外部应用程序调用Apex Web服务以在Salesforce中执行操作的类.

全局类MyWebService {
    // Apex随处可访问的方法.g.: SOAP API
} 

问:解释如何编写一个Apex类,它将考虑当前用户的共享规则. 举例说明.

By default, Apex代码在系统上下文中运行, 具有访问所有对象和字段的对象权限.

如果您需要编写一个类,将考虑当前的用户共享规则, 你需要用 with sharing keywords.

这个类将在系统上下文中通过访问来执行 all 对象和字段.

MyNoSharingRuleClass {
    //这里的代码不会强制执行当前的用户共享规则
}

这个类将执行当前用户的共享规则.

共享类MySharingRuleClass {
    //这里的代码将强制执行当前用户共享规则
}

在声明类时 without 这些访问修饰符,是当前使用的共享规则. By default, 除非共享规则是从调用类获得的,否则类不会强制执行共享规则.

问:解释什么是顶级单元测试. 讨论Apex代码的部署需求. 提供一个示例.

Salesforce CRM平台使用Apex单元测试, 哪些类方法检查一段代码是否正常工作. 注意,单元测试方法不接受参数, 不向数据库提交数据, 不要发邮件.

测试方法必须在带有注释的测试类中定义 @IsTest.

要部署Apex代码,Salesforce需要满足以下所有条件.

  • 至少75%的Apex代码必须被单元测试覆盖,并且 all 这些测试必须成功完成.
  • 每个触发器都必须有一定的测试覆盖率.
  • 所有类和触发器必须成功编译.

下面是一个测试类基本结构的示例.

@isTest
私有类MyCustomObjectTestClass {
	静态测试方法无效runPositiveTestCases() {
   	  //在这里进行阳性测试
        System.正验证测试...');
	}
	runNegativeTestCases() {
   	  //在这里运行你的阴性测试
        System.负验证测试...');
	}
} 

问:说明如何使用SOQL语句访问归档和删除的记录?

在Salesforce中,被删除的记录实际上并没有被删除. 相反,它被移动到回收站.

每个Salesforce用户都可以访问回收站, 它在概念上类似于Windows或macOS中的回收站. 存档也是如此.

Therefore, 如果构建查询的开发人员希望在其结果集中包含已删除和存档的记录, [5]他可以使用 ALL ROWS SOQL语句中的关键字.

这里有一个例子.

SELECT COUNT() FROM Contact WHERE AccountId = a.Id ALL ROWS

问:解释如何确保流程能够更新记录, 没有其他进程或用户同时更新相同记录的风险.

SOQL支持 FOR UPDATE keywords.

当包含在SOQL语句中时, 它们保证没有其他进程或用户能够并发地更新记录. 在处理记录的事务完成后,锁被释放.

问:考虑下面的代码片段:

List opportunityList = [SELECT Id, Name, FROM Opportunity WHERE StageName = '资格'];

解释一下,如果有什么问题的话?

中的所有机会 资格 stage. 而代码片段是正确的, 我们直接使用字符串字面值, 没有常数或构型.

这种编码实践可能成为问题的根源,因为可能有其他类使用相同的方法.

例如,如果我们假设我们想要从 资格 to 等待审核, 这将需要一定的工作量来执行影响分析并将更改合并到代码中.

使用常量或配置方法可以避免这种情况, 我们的查询是这样的, 假设我们创建了一个常数.

public static final String STAGE_NAME = '资格';

最后的查询将是:

List opportunityList = [SELECT Id, Name, FROM Opportunity WHERE StageName = STAGE_NAME];

问:考虑下面的代码片段:

全局类FutureRecordProcessing
{
    @future
    public static void processRecords(List myObjectList)
    {
         //处理记录
    }
}

为什么这段代码会产生编译错误?

In Apex, @future 带注释的方法不能将对象作为参数, 因为在你调用方法和它实际执行的时间之间,sObject可能会改变. 在这个特殊的场景中, 应该使用对象id列表来执行查询最新记录的操作.

下面是一个future方法的例子,它正确地从id列表中查询对象:

全局类FutureRecordProcessing
{
    @future
    public static void processRecords(List recordIds)
    {  
         	//查询记录
List myObjects = [SELECT Name FROM MyObject__c WHERE Id IN :recordIds];
//处理记录
    }
}

花点时间去找一个顶尖的Salesforce开发人员吧.

The questions we covered in this article should be a piece of cake for any sufficiently experienced Salesforce developer; and therefore, 如何帮助你区分一个想成为Salesforce专家的人, 哪些人主要只使用拖放工具, 来自顶级开发人员, 谁精通SOQL和Apex.

花时间去寻找最好的全职或兼职候选人是非常值得的, 因为它们无疑会对团队的生产力和底线产生重大影响.

顶尖的Salesforce开发人员需求量很大.

Start Hiring