Salesforce開發(fā)人員背后的認真堆棧旅程
在2000年代后期,我是一位精明的開發(fā)人員,使用Microsoft技術為我的客戶編寫業(yè)務應用程序。在此之前的十年,我使用了早期的HTML,JavaScript,Java,ColdFusion和Lotus Notes。在1990年代,我一直在使用FoxPro和Visual Basic構建桌面數(shù)據(jù)庫應用程序。
大約十年前,當我偶然發(fā)現(xiàn)當時稱為Salesforce的Force.com(現(xiàn)在稱為Lightning Platform)時,我開始精疲力盡。這就像發(fā)現(xiàn)新的愛情。那時,云計算才剛剛開始流行,并且?guī)缀鯖]有提供類似功能的平臺服務。沒有一個與Salesforce的規(guī)模,靈活性,深度和廣度相符。
與當時的其他技術不同,使用Salesforce,我可以在一天內構建一個應用程序,幾乎立即將其部署到成千上萬的用戶。我可以在生產環(huán)境中修改數(shù)據(jù)架構,邏輯和用戶界面,而不會干擾任何用戶。我可以使用預先存在的,強大的安全性機制以及行業(yè)標準的SOAP和REST API與其他系統(tǒng)集成。作為開發(fā)人員,我甚至無法指望那些煩惱的IT任務。這很有趣!在平臺上工作很愉快,并且很容易獲得開發(fā)人員的成功。
簡而言之,我瘋狂地愛上了這項技術,再也沒有回頭。
今天
快進到2020年。我仍然沉迷于Salesforce技術,自從十年前找到該平臺以來,我一直在構建業(yè)務應用程序和解決方案。隨后,我將自己的職業(yè)生涯引導為幫助其他人以講師和導師的身份學習和掌握Salesforce技術,專注于幫助其他開發(fā)人員利用該平臺獲得成功。
在我擔任Salesforce MVP的八年和擔任Salesforce培訓合作伙伴的十年中,客戶,學生和社區(qū)成員一直問我到底是什么促使我遷移到Salesforce。畢竟,我是一個以數(shù)據(jù)為中心的業(yè)務應用程序開發(fā)人員,而Salesforce是CRM部門。我甚至都不知道CRM的意思(當時是客戶關系管理!)
在本系列文章中,我將回答這個問題。我將討論為什么您應該將Salesforce開發(fā)視為職業(yè),并為經(jīng)驗豐富的和初級開發(fā)人員提供獨特的職業(yè)機會(技術和個人)。我將討論由于客戶群的不斷擴大,技術的不斷擴展以及缺乏經(jīng)驗豐富的開發(fā)人才而使該平臺在財務上帶來的收益。最重要的是,我將解釋該平臺如何發(fā)展成為需要認真的開發(fā)人員的技術水平很高的開發(fā)人員平臺。
但是,Salesforce是否僅用于CRM?
首先,讓我們解決這個問題,它一直是一個巨大的困惑點,并且是許多利用該平臺的開發(fā)人員的主要障礙。不,Salesforce不只是CRM。是的,客戶關系管理(或CRM)確實是Salesforce的核心。但是,在構建和發(fā)展其CRM平臺的過程中,產生的副作用是企業(yè)級,元數(shù)據(jù)驅動的多租戶云體系結構,該體系結構使開發(fā)人員可以構建幾乎任何類型的業(yè)務應用程序。
客戶數(shù)據(jù)是Salesforce的心臟,也是大多數(shù)業(yè)務應用程序的心臟。已經(jīng)使用CRM的Salesforce客戶現(xiàn)在可以使用完整的應用程序開發(fā)平臺,該平臺可用于快速構建他們可以構思的任何創(chuàng)新業(yè)務應用程序:財務,任務管理,合同管理,文檔工作流,電子商務,移動等。
它使您能夠快速構建應用程序,并獲得您希望在現(xiàn)代系統(tǒng)中使用的嚴肅開發(fā)框架所支持的云優(yōu)先堆棧:開源Web組件UI層(Lightning Web Components),與DevOps工具(如CI / CD管道和容器,AI引擎(Einstein),平臺消息總線(Platform Events),以及使用Node.js,Redis,Kubernetes等的無服務器微服務的不斷發(fā)展的技術(Evergreen)。
您應該成為Salesforce開發(fā)人員嗎?
因此,讓我們看一下市場。Salesforce開發(fā)人員的市場需求不斷增長。Salesforce開發(fā)人員的確被確實的公司評為2019年度十大工作,同比增長129%,平均薪水超過117,000美元。為什么?90%以上的《財富》 500強公司都使用Salesforce。越來越多的這些公司正在將其非Salesforce應用程序遷移到其Salesforce生態(tài)系統(tǒng)中。為了獲得成功,這些公司需要熟悉Salesforce和傳統(tǒng)開發(fā)堆棧的開發(fā)人員,在這里我找到了很多機會。
與傳統(tǒng)開發(fā)一樣,Salesforce平臺需要具有廣泛興趣的廣泛開發(fā)人員。讓我們看看它如何與您的技能保持一致。
前端/ JavaScript開發(fā)人員
您是使用HTML5,CSS3和模塊化JavaScript的前端Web開發(fā)人員嗎?您是否對Web組件感興趣,并構建在臺式機和移動設備上始終顯示的精美且響應迅速的業(yè)務應用程序感興趣?在Salesforce生態(tài)系統(tǒng)中,對這些技能的需求很高。在過去的幾年中,該平臺為其Lightning Web Component框架和其Lightning用戶體驗背后的基于模塊化組件的體系結構采用了Web組件和現(xiàn)代JavaScript行業(yè)標準。
附帶說明一下,他們還通過創(chuàng)建各種開源項目來擁抱開源標準, 例如Lightning Web Components項目,oclif(用于在Node.js中構建CLI的框架)和Apache PredictionIO(一臺機器)學習服務器-以及更多。
全棧開發(fā)人員
也許您迷上了Node.js以及JavaScript庫和框架。如果是這樣,那么位于Salesforce云下面的應用程序堆棧中就有很大的需求。這些在其eCommerce,Marketing和Price Quote產品中的專有應用程序利用此類Web技術進行自定義,而Salesforce就是關于自定義的。
也許您對關系數(shù)據(jù)庫,存儲過程和面向對象的服務層更感興趣。Heroku平臺允許托管數(shù)據(jù)存儲(如Postgres,Apache Kafka和Redis)支持各種Web應用程序,并易于與Salesforce數(shù)據(jù)庫集成。盡管Salesforce元數(shù)據(jù)驅動的云體系結構允許非程序員配置核心Salesforce數(shù)據(jù)對象架構并配置無代碼邏輯流程,但更復雜的業(yè)務需求通常需要使用Apex面向對象編程語言編寫的編程觸發(fā)器和服務邏輯。
微服務或無服務器架構師
盡管入站和出站W(wǎng)eb集成已內置到Salesforce中已有十多年了,但Evergeen工具包將使Salesforce開發(fā)人員不僅可以使用Apex,還可以使用Java和Node.js編寫小型函數(shù)和微服務邏輯。這使它們可以使用聲明性和基于代碼的工具從Salesforce內部進行調用。Heroku云平臺已經(jīng)支持可以與本地Salesforce云輕松集成的多語言Web應用程序和服務,Evergreen將進一步擴展這些功能,為開發(fā)人員提供全新的機會。
移動開發(fā)者
也許您是iOS或Android移動開發(fā)人員。確實可以使用無代碼配置本機Salesforce,以在移動設備上顯示,但可用的SDK允許真正的本機移動和設備應用程序開發(fā),用于跨各種業(yè)務域的自定義業(yè)務案例。
人工智能/數(shù)據(jù)科學家
或者,您可能傾向于業(yè)務分析,分析或人工智能。Salesforce愛因斯坦為那些對數(shù)據(jù)科學,分析,人工智能以及跨外部交易業(yè)務系統(tǒng)集成感興趣的開發(fā)人員提供了機會。Salesforce最近還收購了Tableau Software,并與IBM和Microsoft建立了長期的合作伙伴關系。
解決方案架構師
即使使用高度可配置的Integration Cloud工具(例如Mulesoft),仍非常需要具有集成和身份技能和經(jīng)驗的解決方案架構師。該平臺遵循API優(yōu)先的方法,并且內置的基于標準的身份管理機制允許高度安全的應用程序和服務集成。再一次,即使使用無代碼可配置工具可以完成很多工作,仍然需要扎實的開發(fā)人員技能來構建和維護跨任何企業(yè)環(huán)境的有效集成。
物聯(lián)網(wǎng)開發(fā)人員
也許您喜歡玩連接的東西。以API為先的公司將是物聯(lián)網(wǎng)(IoT)應用程序的優(yōu)秀平臺。Salesforce一直在發(fā)展其IoT 產品,以為需要跨制造業(yè),制造業(yè),農業(yè),醫(yī)藥和能源等眾多行業(yè)的機器對機器通信的客戶提供支持機會,這對于具有“制造商”傾向的開發(fā)人員來說都是成熟的機會。
我的要點是,即使Salesforce作為無代碼平臺而聞名,但現(xiàn)實情況是,行業(yè)對傳統(tǒng)開發(fā)人員存在需求,他們需要在生態(tài)系統(tǒng)中有效地運用自己的技能。對于開發(fā)人員來說,將編程邏輯與聲明性機制合并可能是一個挑戰(zhàn),但這是一個方面,對掌握這些技能的人提出了很高的要求。
下一步是什么?
在本系列的下幾篇文章中,我將深入探討其中的一些技術領域。在整個過程中,我將提供指向您可以找到更深層信息,在線教育內容和文檔的鏈接。我會自由地承認我的目標是吸引您學習更多,甚至說服您加入。
在我的下一篇文章中,我將重點介紹平臺的核心方面以及成為Salesforce Business App Developer的意義。我們將研究該平臺的一些App Dev功能,元數(shù)據(jù)驅動的體系結構的功能和優(yōu)勢,對復雜的開發(fā)技能的要求,以使其能夠在聲明式和程序化這樣的體系結構中工作。
我希望您能和我一起參加這個Salesforce開發(fā)者之旅,并且我希望(甚至可以打賭)它可以像改變我的生活一樣改變您的生活。