在2000年代后期,我是一名精明的开发人员,使用Microsoft技术为我的客户编写业务应用程序。在那之前的十年里,我使用过早期的HTML、JavaScript、Java、ColdFusion和LotusNotes。在1990年代,我使用FoxPro和VisualBasic构建桌面数据库应用程序。大约十年前,当我在Force.com(现在称为Lightning平台)上偶然发现当时称为Salesforce的东西时,我开始筋疲力尽。就像找到新的爱情一样。当时,云计算刚刚开始流行,几乎没有提供类似功能的平台服务。没有一个能与Salesforce的规模、灵活性、深度和广度匹敌。与当时的其他技术不同,借助Salesforce,我可以在一天内构建一个应用程序,并几乎立即将其部署给数千名用户。我可以在生产环境中修改数据模式、逻辑和用户界面,而不会打扰任何用户。我可以使用预先存在的强大安全机制和行业标准SOAP和RESTAPI与其他系统集成。作为一名开发人员,我什至不能指望那些烦人的IT任务。好有趣!在平台上工作是一种乐趣,并且可以轻松获得开发人员的成功。简而言之,我疯狂地爱上了这项技术,再也没有回头。快进到今天的2020年。我仍然痴迷于Salesforce技术,自十年前发现该平台以来,我一直在构建业务应用程序和解决方案。然后,我将我的职业生涯定位于帮助其他人学习和掌握Salesforce技术,作为一名讲师和导师,专注于帮助其他开发人员在该平台上取得成功。在我作为SalesforceMVP的八年和作为Salesforce培训合作伙伴的十年中,客户、学生和社区成员都问我究竟是什么促使我迁移到Salesforce。毕竟,我是以数据为中心的业务应用程序开发人员,而Salesforce是CRM部门。我什至不知道CRM是什么意思(当时的客户关系管理!)。在本系列文章中,我将回答这个问题。我将讨论为什么您应该将Salesforce开发视为一种职业,并为经验丰富的和初级开发人员提供独特的职业机会(技术和个人)。我将讨论由于不断扩大的客户群、不断扩展的技术以及缺乏经验丰富的开发人才而带来的平台经济效益。最重要的是,我将解释该平台如何演变成需要认真的开发人员的高技能开发人员平台。但是Salesforce只是用于CRM吗?首先,让我们摆脱它一直是一个巨大的困惑点,也是许多使用该平台的开发人员的主要障碍。不,Salesforce不仅仅是一个CRM。是的,客户关系管理(或CRM)确实是Salesforce的核心。但构建和发展其CRM平台的副作用是企业级、元数据驱动的多租户云架构,允许开发人员构建几乎任何类型的业务应用程序。客户数据是Salesforce的核心,也是大多数业务应用程序的核心。已经使用CRM的Salesforce客户现在可以使用一个完整的应用程序开发平台,该平台可用于快速构建他们可以梦想的任何创新业务应用程序:财务、任务管理、合同管理、文档工作流、电子商务、移动等等。它使您能够快速构建应用程序并获得由您在现代系统中期望的严肃开发框架支持的云优先堆栈:开源Web组件UI层(LightningWeb组件),与DevOps工具(如CI/CD)集成管道和容器、AI引擎(Einstein)、平台消息总线(PlatformEvents),以及使用Node.js、Redis、Kubernetes等不断发展的无服务器微服务技术(Evergreen)。您应该成为Salesforce开发人员吗?那么,让我们来看看市场。Salesforce开发人员的市场需求正在增长。Salesforce开发人员确实被真实公司评为2019年十大职位,同比增长129%,平均薪资超过117,000美元。为什么?超过90%《财富》Salesforce被财富500强公司使用。越来越多的这些公司正在将他们的非Salesforce应用程序迁移到他们的Salesforce生态系统中。为了取得成功,这些公司需要熟悉Salesforce和传统开发堆栈的开发人员,在这里我可以找到很多机会。与传统开发一样,Salesforce平台需要范围广泛、兴趣广泛的开发人员。让我们看看它如何与您的技能组合保持一致。前端/JavaScript开发人员您是使用HTML5、CSS3和模块化JavaScript的前端Web开发人员吗?您是否对Web组件和构建始终显示在桌面和移动设备上的美观且响应迅速的业务应用程序感兴趣?这些技能在Salesforce生态系统中需求量很大。在过去的几年中,该平台为其LightningWeb组件框架和LightningUX背后的基于模块化组件的架构采用了Web组件和现代JavaScript行业标准。另外,他们还通过创建各种开源项目来拥抱开源标准,例如LightningWebComponents项目、oclif(用于在Node.js中构建CLI的框架)和ApachePredictionIO(机器)学习服务器等等许多。全栈开发人员也许您迷上了Node.js和JavaScript库和框架。如果是这样,那么位于Salesforce云下的应用程序堆栈就有很大的需求。这些电子商务、营销和报价产品中的专有应用程序利用此类Web技术进行定制,而Salesforce就是定制。也许您对关系数据库、存储过程和面向对象的服务层更感兴趣。Heroku平台允许托管数据存储(例如Postgres、ApacheKafka和Redis)支持各种Web应用程序并轻松与Salesforce数据库集成。虽然Salesforce元数据驱动的云架构允许非程序员配置核心Salesforce数据对象模式并配置无代码逻辑流,但更复杂的业务需求通常需要用Apex面向对象编程语言编写的编程触发器和服务逻辑。微服务或无服务器架构师虽然入站和出站Web集成已内置到Salesforce中十多年,但Evergeen工具包将允许Salesforce开发人员不仅可以在Apex中编写,还可以在Java和Node.js中编写小型函数和微服务逻辑。这允许使用声明式和基于代码的工具从Salesforce内部调用它们。Heroku云平台已经支持多语言Web应用程序和服务,可以轻松与本地Salesforce云集成,Evergreen将进一步扩展这些功能,为开发人员开辟全新的机会。移动开发人员也许您是iOS或Android移动开发人员。诚然,本机Salesforce可以配置为在移动设备上显示时不显示任何代码,但可用的SDK允许为跨各种业务领域的自定义业务案例开发真正的本机移动和设备应用程序。人工智能/数据科学家或者,您可能倾向于商业分析、分析或人工智能。SalesforceEinstein为对数据科学、分析、人工智能和跨外部交易业务系统集成感兴趣的开发人员提供机会。Salesforce最近还收购了TableauSoftware,并与IBM和Microsoft建立了长期合作伙伴关系。解决方案架构师即使使用Mulesoft等高度可配置的IntegrationCloud工具,仍然非常需要具有集成和身份识别技能和经验的解决方案架构师。该平台遵循API优先的方法,内置基于标准的身份管理机制允许高度安全的应用程序和服务集成。再次重申,即使使用无代码可配置工具可以完成很多工作,但仍然需要扎实的开发人员技能来构建和维护跨任何企业环境的有效集成。IoTDeveloper也许你喜欢玩联网的东西。API优先的公司将成为物联网(IoT)应用程序的优秀平台。Salesforce一直在发展其IoT产品,为需要机器对机器通信的客户提供机会,这些客户需要跨越广泛的行业,包括制造、制造、农业、医药和能源,这对于具有“创客”倾向的开发人员来说非常有用。这是一个成熟的机会。我的结论是,尽管Salesforce享有无代码平台的美誉,但实际情况是,该行业需要传统开发人员在生态系统中有效地使用他们的技能。将编程逻辑与声明机制相结合对开发人员来说可能是一个挑战,但这对掌握这些技能的人提出了很高的要求。下一步是什么?在本系列接下来的几篇文章中,我将深入探讨其中的一些技术领域。在整个过程中,我将提供指向您可以找到更多信息、在线教育内容和文档的链接。我会坦率地承认,我的目标是吸引您了解更多信息,甚至可能说服您加入。在我的下一篇文章中,我将重点介绍平台的核心方面以及成为Salesforce业务应用程序开发人员的意义。我们将了解该平台的一些AppDev功能、元数据驱动架构的功能和优势,以及在声明式和编程式等架构中工作对复杂开发技能的要求。我希望您能加入我的Salesforce开发之旅,我希望(我什至可以打赌)它会像改变我的生活一样改变您的生活。
