Salesforce 20% 的代碼由 AI 編寫
在AI技術(shù)飛速發(fā)展的當(dāng)下,Salesforce已實(shí)現(xiàn)20%的APEX代碼由AI編寫,這不僅沒有導(dǎo)致開發(fā)者失業(yè),反而促使他們向更具戰(zhàn)略價(jià)值的技術(shù)決策者轉(zhuǎn)型。通過Agentforce平臺(tái),開發(fā)者得以從繁瑣的重復(fù)勞動(dòng)中解放,轉(zhuǎn)向更具創(chuàng)造性和戰(zhàn)略性的角色,推動(dòng)軟件開發(fā)行業(yè)的深刻變革。
當(dāng) Anthropic CEO Dario Amodei 宣稱 AI 將在 6 個(gè)月內(nèi)編寫 90% 的代碼時(shí),編程世界似乎即將面臨程序員崗位“大面積消失”的階段。然而,在 Salesforce 內(nèi)部,卻出現(xiàn)了不一樣的景象。
“過去的 30 天,大概有 20% 的 APEX 代碼來自 Agentforce?!盨alesforce AI 高級(jí)副總裁 Jayesh Govindarajan 在最近的采訪中表示。他的團(tuán)隊(duì)不僅追蹤 AI 生成的代碼,還追蹤那些真正被部署到生產(chǎn)環(huán)境中的代碼。這里有一組數(shù)字展示了一場(chǎng)不容忽視的開發(fā)加速進(jìn)程:每月活躍用戶 3.5 萬人,接受使用的代碼達(dá) 1000 萬行,內(nèi)部工具每月節(jié)省開發(fā)者 3 萬小時(shí)的工作時(shí)間。
Apex 是一種強(qiáng)類型、面向?qū)ο蟮木幊陶Z言,允許開發(fā)人員在 Salesforce 服務(wù)器上結(jié)合 API 調(diào)用執(zhí)行流程和事務(wù)控制語句。
Agentforce 是 Salesforce 旗下的數(shù)字勞動(dòng)力平臺(tái)。它是一個(gè)低代碼、人工智能驅(qū)動(dòng)的平臺(tái),允許企業(yè)創(chuàng)建和部署自主的數(shù)字 Agent,以實(shí)現(xiàn)任務(wù)自動(dòng)化、增強(qiáng)客戶服務(wù)和提高整體效率。但 Salesforce 的開發(fā)人員并沒有消失,反而在進(jìn)化。
“絕大多數(shù)開發(fā)工作,至少第一稿代碼都由 AI 完成。”Govindarajan 承認(rèn)?!暗_發(fā)者處理第一稿代碼的方式,已經(jīng)發(fā)生了根本變化?!?/p>
1.從代碼行到戰(zhàn)略掌控:開發(fā)者正在成為技術(shù)決策者
軟件工程一直是創(chuàng)造力與乏味的重復(fù)勞動(dòng)的結(jié)合體。如今,AI 負(fù)責(zé)乏味的重復(fù)勞動(dòng),推動(dòng)著開發(fā)者充分發(fā)揮創(chuàng)造力。
“軟件開發(fā)人員從一個(gè)純技術(shù)角色轉(zhuǎn)向更具戰(zhàn)略性的角色。他們不再是‘為了寫代碼而寫’,而是會(huì)思考‘我們?cè)撟鍪裁矗靠蛻粽嬲枰裁??’”Govindarajan 解釋說。
這種轉(zhuǎn)變與其他技術(shù)顛覆如出一轍。比如:計(jì)算器取代人工計(jì)算后,數(shù)學(xué)家并沒有消失,他們開始解決更復(fù)雜的問題。數(shù)碼相機(jī)淘汰暗房技術(shù)后,攝影反而得到了拓展,而不是萎縮。
Salesforce 認(rèn)為,代碼的命運(yùn)也將如此。隨著 AI 大幅削減軟件創(chuàng)作成本,開發(fā)者獲得了他們一直缺乏的資源:時(shí)間。
“以前要花幾周才能做出產(chǎn)品原型,現(xiàn)在只需要幾個(gè)小時(shí)就能完成,”Govindarajan 說?!霸僖膊挥弥皇峭ㄟ^文檔向客戶展示我們‘計(jì)劃要做什么’,而是直接交給客戶一個(gè)‘可以運(yùn)行的軟件’,然后根據(jù)客戶的反饋再快速迭代?!?/p>
2.“氛圍編程”已來:開發(fā)者不再逐行敲代碼,而是與 AI 協(xié)作
程序員們開始采用一種叫“氛圍編程(vibe coding)”的新方法,這是 OpenAI 聯(lián)合創(chuàng)始人 Andrej Karpathy 提出的術(shù)語。這種做法不是給 AI 發(fā)送一個(gè)精確的動(dòng)作命令,而是給 AI 提供一個(gè)高級(jí)戰(zhàn)略型的指令,然后再對(duì) AI 輸出的結(jié)果進(jìn)行打磨。
“只需要給 AI 一個(gè)大致的構(gòu)想方向,然后讓 AI 發(fā)揮創(chuàng)造力生成第一稿,”Govindarajan 說,“當(dāng)然,AI 生成不會(huì)一開始就非常符合程序員的預(yù)期,但它會(huì)提供一個(gè)可操作的初級(jí)版本。程序員再根據(jù)這個(gè)版本進(jìn)行修改,比如說‘這個(gè)部分不錯(cuò),多寫一點(diǎn)’,或者‘這些按鈕太丑了,刪掉’。”
這個(gè)過程就像是在進(jìn)行音樂創(chuàng)作的合作:“AI 設(shè)定節(jié)奏,程序員微調(diào)旋律。”
雖然 AI 在生成標(biāo)準(zhǔn)的業(yè)務(wù)應(yīng)用方面表現(xiàn)很出色,但它的能力是有邊界的,Govindarajan 坦言?!澳悴粫?huì)用氛圍編程去構(gòu)建下一代數(shù)據(jù)庫。但你可以打造一個(gè)界面酷炫、可以調(diào)用數(shù)據(jù)庫的業(yè)務(wù)應(yīng)用?!?/p>
3.新的質(zhì)量要求:AI 寫代碼也要重新定義測(cè)試方法
AI 寫代碼的方式不同,對(duì)質(zhì)量控制的需求也不同。他們發(fā)現(xiàn)機(jī)器生成的代碼需要全新的測(cè)試方式,于是,Salesforce 開發(fā)了 Agentforce Testing Center。
“這些是隨機(jī)性系統(tǒng)(stochastic systems),”Govindarajan 解釋說?!凹词勾a的準(zhǔn)確率很高,但在某些場(chǎng)景也會(huì)有失敗的情況。比如,可能會(huì)在第 3 步失敗,也可能在第 17 步失敗。如果沒有合適的測(cè)試工具,就根本發(fā)現(xiàn)不了問題?!?/p>
AI 輸出結(jié)果的“不確定性”意味著開發(fā)者必須精通邊界測(cè)試(Boundary testing)和護(hù)欄設(shè)置(guardrail setting)。也就是說,開發(fā)者要測(cè)試 AI 在輸入處于極端情況(如最大值、最小值、異常值等)時(shí)的輸出表現(xiàn),確保系統(tǒng)在各種情況下都能穩(wěn)定運(yùn)行,不會(huì)因?yàn)檩斎氲奈⑿∽兓a(chǎn)生不可預(yù)測(cè)的結(jié)果。他們也要為 AI 系統(tǒng)設(shè)置規(guī)則和限制,確保 AI 的輸出在可接受的范圍內(nèi)。
開發(fā)者不僅要懂得如何寫代碼,更要懂得如何“評(píng)估代碼”。
4.不僅是代碼生成:AI 正在壓縮軟件開發(fā)周期
這場(chǎng)變革不僅發(fā)生在編碼初期,它已經(jīng)蔓延到整個(gè)軟件生命周期。
“在 build 階段,工具可以理解現(xiàn)有代碼并智能擴(kuò)展,從而加快整個(gè)流程,”Govindarajan 說?!敖酉聛硎菧y(cè)試,生成回歸測(cè)試、為新代碼創(chuàng)建測(cè)試用例,這些也能由 AI 完成?!?/p>
這種全面自動(dòng)化創(chuàng)造了 Govindarajan 所說的“從想法到現(xiàn)實(shí)的更緊密循環(huán)(tighter loop)”。開發(fā)者測(cè)試和調(diào)整的速度越快,就越敢有更雄心勃勃的構(gòu)想。
5.算法思維依然重要:AI 時(shí)代更需要計(jì)算機(jī)科學(xué)基礎(chǔ)
Govindarajan 經(jīng)常會(huì)被問到軟件工程的未來。他說,經(jīng)常有人問他這樣一個(gè)問題:有了 AI,大家還需要學(xué)計(jì)算機(jī)科學(xué)嗎?
答案是必然需要。因?yàn)樗惴ㄋ季S依然非常重要。如何把大問題拆分成小問題,了解軟件能解決什么問題,建模用戶需求,這些技能變得‘更重要’,而不是不再重要。
變化的是這些技能的呈現(xiàn)方式。開發(fā)者不再是一個(gè)字符一個(gè)字符地敲出解決方案,而是引導(dǎo) AI 工具得出最佳結(jié)果。人類提供判斷,機(jī)器提供速度。
“開發(fā)者依然需要具備良好的直覺,給出適當(dāng)?shù)闹噶睿⑴袛嘟Y(jié)果的優(yōu)劣,”Govindarajan 強(qiáng)調(diào)。“要對(duì) AI 的產(chǎn)出進(jìn)行審美判斷,這才是真功夫?!?/p>
6.戰(zhàn)略的提升:開發(fā)者正從執(zhí)行者轉(zhuǎn)向商業(yè)伙伴
隨著編碼本身被商品化,開發(fā)者的角色開始與商業(yè)戰(zhàn)略直接掛鉤。
“開發(fā)者現(xiàn)在承擔(dān)的是監(jiān)督者的角色,指導(dǎo) Agent 為他們工作,”Govindarajan 解釋道,“但他們?nèi)匀灰獮樽罱K發(fā)布的東西負(fù)責(zé)。最終責(zé)任仍在他們身上?!?/p>
這種角色的提升讓開發(fā)者離決策者更近,離實(shí)施細(xì)節(jié)更遠(yuǎn)。這不是被替代,而是被“升職”。
Salesforce 為這一轉(zhuǎn)變提供了不同階段的工具支持:Agentforce for Developers 負(fù)責(zé)代碼生成,Agent Builder 用于自定義,Agentforce Testing Center 保障可靠性。三者組成一個(gè)完整平臺(tái),幫助開發(fā)者成長為全能選手。
Salesforce 的愿景,與“開發(fā)者將被淘汰”的敘事形成鮮明對(duì)比。軟件工程師如果愿意適應(yīng),這個(gè)職業(yè)不僅不會(huì)走向消亡,反而會(huì)變得比以往更加不可替代。
在這個(gè)不斷重塑自我的行業(yè)中,AI 是有史以來最強(qiáng)大的“編譯器”,它不僅改變了“如何寫代碼”,也改變了“誰來寫代碼”、“為什么寫代碼”。對(duì)于那些愿意更新自身思維模型的開發(fā)者來說,未來更像是“升華”,而不是終結(jié)。
本文由人人都是產(chǎn)品經(jīng)理作者【牛透社】,微信公眾號(hào):【牛透社】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
- 目前還沒評(píng)論,等你發(fā)揮!