因為 OpenAI 30 億美元的收購報價,Windsurf 成為近期最受關注的 AI 編程公司。
2021 年成立的 Windsurf(前身為 Codeium),最初是一家 ToB 的 GPU 虛擬化平臺,并且已經實現了百萬美元級別的收入。但在見識到大模型的能力后,創始人 Varun Mohan 意識到,大模型讓基礎設施端的優勢不再明顯,應用端才是未來。
切入 AI 編程賽道后,一開始是作為 VS Code 的插件,到后來自己做 IDE,Windsurf 走上了一條和 Cursor 不同的 AI Coding 之路。
今年 4 月,公司 ARR 收入約為 1 億美元,相比一月份的 4000 萬,收入翻倍。而在本輪籌集超過 2.43 億美元的資金后,Windsurf 的估值達到了 28.5 億美元。
為什么在有現金流之后還果斷轉向 AI 編程賽道,為什么要自己做 IDE,以及 Windsurf 和其他 AI 編程產品的差異在哪里?關于這些問題,創始人 Varun Mohan 最近在接受科技播客 Lenny's Podcast 采訪時,就這些問題進行了深聊。
TLDR
Varun Mohan 分享在創業過程中的經驗,如果創業者在為一個具有巨大潛力的目標努力,但同時又在一個不再相信有價值的方向上投入精力,那么肯定會失敗。
隨著 AI 技術的發展,AI 很可能會承擔 90%甚至更多部分的代碼編寫工作。開發者的角色將發生轉變,更多地側重于審查和調整 AI 生成的代碼,而不是從零開始編寫代碼。讓開發者能夠更高效地進行「審查」工作,是 Windsurf 產品開發的核心原因。
未來工程師的角色將更加側重于識別:我們需要解決的最重要的商業問題是什么?我們的產品或應用需要具備哪些核心功能?然后基于這些判斷,進行優先級排序,做出正確的技術決策,并最終將這些決策付諸實踐。
Windsurf 的核心優勢在于解決理解大型代碼庫的核心問題,基于此前在基礎設施領域的積累,Windsurf 構建了專有模型,能夠并行處理大量的代碼庫。
Windsurf 在基礎模型方面的策略是:在必要的地方構建和訓練自己的模型,在通用模型表現更好的地方直接集成使用。
企業銷售是非常重要的組成部分。公司早期未招聘過銷售人員,由 Varun Mohan 自己負責銷售產品。Varun Mohan 認為,「如果我自己都難以通過銷售來獲取增量收入,不知道如何將這個流程規模化,如何將公司的收入從數百萬推向數億,甚至數十億?」
Founder Park 正在搭建開發者社群,邀請積極嘗試、測試新模型、新技術的開發者、創業者們加入,請掃碼詳細填寫你的產品/項目信息,通過審核后工作人員會拉你入群~
進群之后,你有機會得到:
高濃度的主流模型(如 DeepSeek 等)開發交流;
資源對接,與 API、云廠商、模型廠商直接交流反饋的機會;
好用、有趣的產品/案例,Founder Park 會主動做宣傳。
01
收入數百萬的時候轉型做 AI 編程
主持人:簡單分享一下 Codeium 的歷史,以及 Windsurf 是如何從 Codeium 發展而來的?
Varun Mohan:公司的創立大約是在四年前,在四年前,AI 編程這個概念并不像現在這樣普及,ChatGPT 還沒有發布。那時我們實際上專注于 GPU 虛擬化(一種允許多個用戶共享 GPU 資源的技術)和編譯器軟件。我之前在自動駕駛領域工作,而我的聯合創始人 Douglas Chen 是我從中學時代就認識的朋友,他當時在 Meta 從事 AR/VR 相關工作。
當時我們認為,深度學習技術將影響眾多行業,不僅限于自動駕駛,還會波及金融、國防、醫療等各個領域。我們覺得構建這些深度學習應用是一項非常艱巨的任務,因此,我們提供了一套解決方案,讓用戶能夠在沒有配備 GPU 的普通電腦上運行這些復雜的應用,而我們則負責處理所有的底層復雜工作,確保這些工作負載能夠在 GPU 上高效、順利地運行,并能夠對其進行優化以提升效率。
到 2022 年年中,我們的收入已達數百萬美元,管理著上萬臺 GPU,團隊共八人,且已實現正向的現金流。但隨著大語言模型變得越來越強大,我們逐漸意識到,我們當時所做的很多工作可能價值不再那么顯著了。
那時我們團隊只有八個人,但我們腦中浮現出一個想法:「未來還會有人花費時間和精力去訓練那些高度定制化的情感分類模型嗎?還是說他們會直接向 GPT-N 模型提問,詢問這段文本表達的是正面情緒還是負面情緒?」答案很可能傾向于后者。
在每個人都能輕松運行 AI 模型的情況下,一個基礎設施公司如何才能建立差異化優勢呢?因為最終大家都會使用類似的基礎設施。因此,我們決定將生成式 AI 視為下一個重大的浪潮,就像當年的互聯網一樣,我們應該致力于構建下一個具有里程碑意義的應用,就像 Google 和 Amazon 那樣。
于是,我們對自身的基礎設施進行了垂直整合,并基于此開始構建當時的 Codeium。那時我們是 GitHub Copilot 的早期用戶,堅信編程領域在未來幾年內會發生翻天覆地的變化。所以,我們利用自己的基礎設施,大規模運行我們自己的模型,甚至還訓練了自己的模型。最開始,我們的功能非常基礎,僅僅是一個純粹的代碼自動補全模型,當用戶輸入代碼時,我們會自動補全接下來的幾行。
而且我們完全免費地向所有開發者提供這款產品,并支持了所有主流的集成開發環境(IDE),包括 VSCode、JetBrains、Eclipse、Visual Studio、Vim、Emacs 等。我們之所以能夠做到免費,得益于我們在基礎設施方面的深厚積累,這使我們能夠極大地優化這些工作負載(workload)。
接著,很多大型企業也表達了與我們合作的意愿,于是我們建立了企業端的合作模式,與像戴爾、摩根大通這樣的公司展開合作。對于這些大型企業而言,他們關注的不僅僅是「能否自動補全代碼,或者能否與代碼庫進行智能交互」,更核心的需求在于「你們能否提供一個安全可靠、并且能夠針對公司內部私有數據進行個性化定制的產品?」
因此,我們對基礎設施進行了調整,并投入了大量的資源,來確保我們能夠深入理解這些大公司的代碼庫。這項工作我們在大約六個月前一直在持續推進。不過,我們現在停止了這些工作,因為大約六個月前我們意識到,我們所使用的 IDE 已經成為了發展的瓶頸。
以 VSCode 為例,這是一款非常流行的 IDE,但它在展示和集成我們設想的AI能力方面已經達到了極限。
于是,我們決定對 VSCode 進行分支,從其基礎上構建一個新的 IDE,并加入一些全新的「主動性」功能。近幾年來,模型的能力呈現指數級增長,現在正是我們將這些能力充分發揮的時候。雖然省略了很多細節,但大致的演進過程就是這樣,我們現在正處于這個新階段。
主持人:對于AI的未來,尤其是 AI 工具的技術棧,你認為 AI 的價值會主要體現在哪些環節?
Varun Mohan:首先我想從創業的角度分享一個可能對大家有所啟發的事實——你最初認為最正確的創業方向,往往并非最終成功的方向。對于創業者來說,接受這個事實其實是非常困難的。作為創始人,你必須保持極度的樂觀,堅信你正在做的事情至關重要。如果不這樣想,又何必投入精力去做呢?如果某個方向如此顯而易見,那大型公司早就行動了。
但與此同時,你也必須保持清醒和現實的態度,因為很多非傳統的想法最終都被證明是不可行的。所以,你需要在一條微妙的界限上找到平衡:一方面,要堅定地為你認定的未來而努力;另一方面,也要隨時接納新的信息,并在必要時修正甚至放棄之前的信念。
以我們最初專注于基礎設施為例,我們起初假設不同的模型架構會呈現出高度多樣化的趨勢。因為我之前有自動駕駛領域的背景,接觸過各種不同類型的模型架構,例如卷積神經網絡 (CNN)、圖神經網絡 (GNN)、循環神經網絡 (RNN)、LSTM (Long Short-Term Memory)等。
我們當時處理的架構種類多達幾十種,當時我們覺得這些架構的復雜性太高了,如果有人能有效地管理和降低這些架構的復雜差異,必然會產生巨大的價值。然而,到了 2023 年年中,幾乎所有的研究和應用似乎都朝著 Transformer 模型方向發展。那時,我們的最初假設就被證明是錯誤的。
所以現在我們認為,純粹在基礎設施層能夠積累的價值可能不會太多,至少這是我們目前的判斷。真正能夠建立差異化優勢的地方應該在于其他層面。
那么,這個能夠實現差異化的地方在哪里呢?我們認為應用層具有非常深的潛力,可以在這里打造獨特性。例如,我們可以為開發者創造更卓越的用戶體驗和工作流程。我們堅信,在這方面幾乎沒有上限,我們能夠持續改善開發者的工作體驗。
主持人:你提到的第二點,我認為也非常引人入勝,就是你們如何從一個已經取得成效的業務模式進行轉型。當時你們已經實現了盈利,產品也受到了用戶的喜愛,年收入已經達到數百萬美元,然而你們卻決定徹底改變方向。
在這個過程中,你們在選擇正確發展路徑方面學到了哪些經驗?我聽到一個非常重要的啟示是,一旦你們對最初的假設產生了懷疑,或許就應該認真考慮放棄原有方向,轉而嘗試新的思路。
Varun Mohan:我覺得我們現在的思維方式是,我們接受自己會犯很多錯誤。這是必然的。
那確實是一個至關重要的時刻,因為我們當時的決定某種程度上是把公司的未來押上了賭注。我們向投資人表示,「我們現在正在盈利。」我們當時已經籌集了 2800 萬美元的資金,但我們依然決定徹底轉型,完全放棄了之前的業務方向。我們幾乎是「一夜之間」就做出了這個決定。
這不是那種我們會說「也許再等等一個季度、兩個季度」的情況。因為我們深知,對于初創公司而言,專注是決定成敗的關鍵。如果你在為一個你認為具有巨大潛力的目標努力,但同時又在一個你不再相信有價值的方向上投入精力,那么你肯定會失敗。這個道理是非常清晰的。
不過,我認為關鍵在于你必須認識到,你很有可能會犯錯。一旦你集中精力去驗證這些核心假設,就不會對自己的想法產生過度的執著。擁有好的想法固然重要,但你絕對不能過度沉迷于其中。
而且,你必須確保你的團隊是一個極度追求真理的團隊。公司里很多人都經歷過自己的想法被反復驗證甚至證偽的過程。就像我們現在做 Windsurf 一樣,這雖然并非一次完全的業務轉型,但這對于公司而言無疑是一個重大的戰略決策。你需要做出一些大膽的嘗試,有時候你會發現自己錯了,有時候你會發現自己對了。
但如果你擁有一個團隊,即使做出了錯誤的決定,大家的士氣也不會因此低落,這才是最理想的狀態。這樣一來,你就擁有了無限的可能性。
另外我想分享的一點是,今年我們團隊的工程產出將超過公司自成立以來的總和。這幾乎意味著每一年對我們來說都代表著一個全新的機會,一個徹底檢驗假設的可能性。也許最初的假設是錯誤的,但誰又能保證自己總是比別人在更多的事情上做得更正確呢?
02
核心是讓開發者更好「審」代碼,
而不是寫代碼
主持人:Windsurf 究竟是什么?如何讓大家更簡單易懂地理解它?
Varun Mohan:簡而言之,Windsurf 是一個集成開發環境(IDE),旨在幫助開發者構建軟件和應用。有意思的一點是,許多使用我們產品的用戶可能并不清楚什么是 IDE,我們稍后再深入探討。
那么,我們為什么要著手開發 Windsurf 呢?實際上,最開始我們計劃構建這個產品時,很多人可能會問,為什么不直接在現有的 IDE(例如 Visual Studio Code)上進行開發呢?
簡單來說,隨著 AI 能力的持續增強,我們認為技術構建的方式將會發生根本性的改變。傳統的純文本編輯器已經不足以滿足未來的需求了。過去,開發者在 IDE 中編寫代碼,IDE 提供一些基礎反饋,比如「你的代碼有 bug」或者「編譯錯誤」,僅此而已。然而,如今的 IDE 能夠做的事情遠不止這些。它可以自動化地修改大量的代碼,甚至直接生成代碼片段。
我們意識到,伴隨AI技術的發展,AI 很可能會承擔 90%甚至更多的代碼編寫工作。屆時,開發者的角色將發生轉變,更多地側重于審查和調整 AI 生成的代碼,而非從零開始編寫。我們認為,基于這個新的 AI 時代背景,開發者的工作流程勢必會發生變化。因此,我們在 Windsurf 中進行了一系列優化調整,旨在讓開發者能夠更高效地進行這些「審查」工作,這是我們開發這款產品的核心原因。
舉個簡單的例子,我們之前有一個代碼自動補全功能,可以補全一小段代碼。但是現在,我們在 Windsurf Tab 中引入了代碼重構的功能,幾乎可以實現內聯式的重構。為了實現這一功能,我們在 Windsurf 中定制了一套用戶界面。但在 VSCode 中,由于 API 限制,我們只能通過動態生成圖片并將其放置在光標附近來展示代碼修改。當我們將這一功能遷移到 Windsurf 平臺,我們的采納率就提升了三倍。
這極大地增強了我們的信心。我們深知,技術本身的先進性固然重要,但如果我們的用戶無法充分利用我們的技術獲取價值,那么我們就必須重新審視一個問題:「我們是否確實需要一套全新的界面和交互方式?」這就是 Windsurf 項目誕生的初衷。
主持人:所以,你們做出的重大戰略決策,是基于這樣的判斷:雖然可以從一開始就在大家熟悉的現有 IDE 上開展工作,但最終發現這條路徑存在局限性,「我們需要做一些突破性的事情,讓用戶愿意切換到一個全新的、能夠帶來更大效益的 IDE。」 我覺得這可能是很多人沒有充分認識到的,說服開發者去嘗試和采納一個全新的工具,其風險是非常巨大的,畢竟對于工程師而言,這是一個非常重要的職業決定。
Varun Mohan:確實如此。需要澄清的一點是,我們很多開發者用戶目前仍然在使用 VS Code。同時,也有不少使用 Java、C++ 等語言的開發者,他們可能更傾向于 JetBrains 系列的 IDE,比如 IntelliJ。對于我們來說,我們未來仍會繼續在這些主流平臺上進行開發和維護。
但是,我們確實認為,像 VS Code 這樣的一些主流 IDE,在用戶界面方面限制了我們能夠為客戶提供的能力。尤其是 VS Code,它的 API 相對有限,無法很好地支持我們希望實現和展示的高級功能。
主持人:Windsurf 目前的增長情況如何?大家經常聽到競爭對手公布各種令人驚嘆的數據,請你分享一些 Windsurf 的相關數據。
Varun Mohan:我們的產品發布至今大約四個月,在這段時間內,已經有超過一百萬名開發者嘗試了我們的產品。目前,我們的月活躍用戶數達到了數十萬。
03
未來工程師的核心能力是去找到重要的問題
主持人:你認為未來幾年內,軟件編碼的方式將發生怎樣的變化?與現在相比,會有哪些不同?
Varun Mohan:我認為我們可以將工程師的工作大致劃分為三個層面:首先是確定「我應該解決什么問題?」,其次是思考「我應該如何解決它?」,最后才是實際的「解決它」這個執行過程。
在這個領域,大家應該越來越清晰地認識到,在解決問題的過程中,特別是那些「我知道怎么做」并直接付諸實踐的任務,絕大部分甚至可能全部都將由 AI 來處理。事實上,隨著 AI 對代碼庫的深入理解,它甚至能夠協助解決「如何解決它」這個問題。
如果你能夠深入理解一個組織的環境,并對代碼庫有透徹地了解,那么找到最佳解決方案的路徑也會變得越來越明確。所以,我認為,未來工程師的角色將更加側重于識別我們需要解決的最重要的商業問題是什么?我們的產品或應用需要具備哪些核心功能?然后基于這些判斷,進行優先級排序,做出正確的技術決策,并最終將這些決策付諸實踐。我認為工程師的工作正在朝這個方向發展。
那么,這是否意味著計算機科學變得不再必要了呢?我認為這個觀點可能有些被夸大了。因為即使是如今開發全棧應用的工程師,在幾年前,他們可能也學習過操作系統課程。理論上講,他們并不會在日常工作中頻繁地操作操作系統內核調度程序。但這些底層原理有助于他們理解為什么自己的應用運行緩慢以及幫助他們判斷某些設計決策為何比其他的更具優勢,這些知識讓他們比其他工程師更具優勢。
我認為,理解底層原理能夠讓一位優秀的工程師變得更加卓越。但同樣重要的是,AI 的發展也使得那些之前沒有系統學習過這些底層知識的人,依然有機會構建出色的產品。這是當前發展帶來的另一個顯著變化。
此外,我們有很多更深遠的計劃,遠不止于在 Windsurf 中進行簡單的點擊修改組件。其中一部分令人興奮的功能就體現在 AI 的應用上。
我們有一套 AI 代碼審查流程,就像我之前提到的那樣。AI 當前的作用已經發生了顯著變化,它現在不再僅僅是協助用戶進行一些簡單的修改,而是能夠修改大量的代碼。在這種新的工作模式下,開發者的核心職責就變成了審查 AI 生成的大部分代碼。
如果我想修改其中的一部分,比如我不喜歡變量名叫做title
,我想把它改成Title String
,那么我可以直接進行修改。如果我希望進行這樣的修改,只需指示 AI 繼續執行即可。
有意思的地方在于,Windsurf 不僅了解 AI 完成了哪些操作,它也清楚用戶進行了哪些修改。我們的目標是讓整個過程像一個無縫的流式操作一樣,用戶執行的每一個步驟,AI 都能夠感知并預測用戶的意圖。比如,AI 現在提示說:「我注意到接口屬性title
已經被更改為Title String
。」 然后它會自動去修改代碼庫中所有使用了title
的地方,將其更新為Title String
。
因此,即使我作為一名開發者,想要進行一些細微的修改,AI 也能夠在我的操作路徑上快速地完成這些更改。試想一下,如果你需要進行一次代碼重構或遷移,而只需修改代碼的某一部分,你只需要告訴 AI 繼續執行,其余的工作它都會自動完成。而且由于 AI 對整個代碼庫有深入的理解,它能夠精準地找到所有需要修改的位置并完成相應的操作。
當然,現在當我重新加載應用時,應用程序沒有任何錯誤,依然能夠正常運行和加載。我甚至可以指示它執行一些更有趣的任務,比如讓這個應用變得「復古」。雖然我也不太確定「復古」具體意味著什么,但我可以嘗試一下。它就會根據我的要求做出相應的修改。
總之,AI 不僅能夠在應用程序的層面進行操作,還能深入到用戶的代碼空間中進行修改,從而彌合了應用層面和代碼層面之間的差距。這使得 Windsurf 不僅能夠幫助那些完全不了解編程的用戶構建應用程序,也能為開發者,特別是那些仍然習慣于親手編寫代碼的開發者提供極大的幫助。
04
差異化優勢:
能處理百萬行的代碼庫
主持人:Windsurf 與 Cursor 的主要區別在哪里?你如何看待 Windsurf 在這個領域的長期競爭策略?
Varun Mohan:我可以從幾個方面來回答這個問題。在產品層面,我們投入了大量的精力來確保我們能夠高質量地理解極其龐大的代碼庫,這是因為我們從公司成立初期就與像戴爾(Dell)、摩根大通(JPMorgan Chase)這樣的大型企業展開了合作。以戴爾為例,其代碼庫的單個代碼倉庫可能就超過一億行。因此,如何快速理解這些龐大代碼庫的內容并進行大規模的代碼修改,是我們花費了大量時間攻克的難題。
為了實現這一目標,我們實際上構建了自己專屬的模型,它能夠并行處理大量的代碼庫,通過成千上萬顆 GPU 對其進行分析,并對代碼片段進行智能排序,從而精準識別出最關鍵的部分,以便能夠對用戶提出的任何關于代碼庫的問題作出響應。因此,我們憑借在基礎設施領域的深厚積累,構建了大型分布式系統來支撐這項能力。這是 Windsurf 的一個核心差異化優勢。
主持人:我覺得大家可能低估了這項技術的重要性。舉個例子,我們之前曾邀請過 Bolt 和 Lovable 的創始人來訪談,他們的產品是從零開始構建的,這類工具可以為你編寫全新的代碼。
但是,如果是在像 Airbnb 或 Uber 這樣的大型公司,你面對的是一個擁有數百萬行代碼的龐大代碼庫,要真正理解代碼的結構、它的運行機制,以及在哪些地方進行修改而不會破壞現有系統,這無疑是一項極其艱巨的任務。所以,我理解你的意思是,Windsurf 的一個重要優勢在于你們從一開始就解決了理解大型代碼庫這個核心問題,而 Cursor 等其他競爭對手則在逐步追趕這一能力。
Varun Mohan:完全正確。這確實是我們投入了大量時間精力的一個關鍵領域,即深入理解代碼庫的實際運作方式。此外,我們特別關注的另一個重點是代碼庫中所有與用戶交互相關的部分。
Varun Mohan:第二個關鍵區別在于,我們并不僅僅局限于提供像 Windsurf 這樣的單一工具,實際上我們非常重視并大力支持像 JetBrains 系列這樣的集成開發環境(IDE)。JetBrains 和 IntelliJ 的用戶群體覆蓋了大約 70% 到 80% 的 Java 開發者,我們認為沒有必要去構建一個與 JetBrains 直接競爭的產品,因為 JetBrains 本身具有非常好的可擴展性。相比之下,VSCode 在這方面的表現則相對不足。
對我們而言,我們的目標不僅僅是滿足那些愿意切換到我們 Windsurf IDE 的用戶,而是希望能夠為每一位開發者提供一種靈活多樣的使用體驗。這意味著,即使 Java 開發者仍然習慣使用 JetBrains,我們也愿意提供全面的支持。
我們與許多大型企業建立了合作關系,在這些企業中,擁有超過 10,000 名開發者,其中超過 50% 的開發者使用 JetBrains。這是一個非常龐大的市場群體。而且,JetBrains 本身是一家年收入過億的私營公司,這說明其市場份額和影響力是巨大的。這是另一個關鍵點,我們希望開發者能夠在他們最熟悉、最習慣的平臺上進行工作,并且能夠無縫地融入他們的現有工作流程。
主持人:我理解你的意思,你們并非強制要求開發者適應新的平臺,而是提供一種更靈活的解決方案,讓他們可以在自己偏好的工具中也能充分利用 Windsurf 的能力。
Varun Mohan:是的。第三個關鍵點,尤其是對于企業客戶而言,我們支持許多對安全性要求極高的環境。我們已經獲得了 FedRAMP 認證,這意味著我們可以為大型政府機構提供服務。此外,我們還提供混合模式的產品部署,這意味著所有的代碼索引和存儲實際上都可以部署在客戶的本地租戶環境中。對于許多公司來說,代碼是其最重要的知識產權之一,因此數據安全和隱私保護至關重要。
從大型企業的角度來看,我們多年來積累的經驗和處理過的復雜問題,使我們能夠提供符合他們嚴苛要求的企業級產品和服務。這部分能力也是我們在早期進入市場時積累的歷史經驗所帶來的獨特優勢。
05
Claude 負責規劃,
多模型配合執行
主持人:Windsurf 使用的模型是 Sonnet 嗎?
Varun Mohan:是的。我們的系統使用一個「規劃模型」。目前來看,Anthropic 的 Claude-Sonnet 是一個非常優秀的規劃模型,同時 OpenAI 的 GPT-4 模型的能力也不錯。「規劃模型」負責高層次規劃,同時我們在內部運行其他必要的模型來執行高質量的檢索和具體操作。處理上億行代碼的代碼庫并發送給通用大模型是不現實的,因為技術上(token 限制)、成本和延遲都不允許。因此,我們在內部構建并訓練了定制模型,在開源基礎上優化,它們能快速高效地修改代碼庫,在更多代碼上下文中做決策,相比通用模型有明顯優勢。我們的策略是:在必要的地方構建和訓練自己的模型,在通用模型表現更好的地方則直接集成使用。
主持人:你們自己訓練的那些模型,是基于其他機構發布的開源模型嗎?
Varun Mohan:是的,部分基于開源模型。但負責檢索、代碼自動補全和代碼編輯等核心功能的部分模型完全是我們內部獨立訓練的,我們專注于最擅長的領域并做到極致。
主持人:這個問題可能有點偏技術,你們在訓練模型時,是否有任何特別之處或獨特的方法?
Varun Mohan:一個特別之處在于我們從用戶那里獲取了極其豐富的數據,包括用戶偏好和實時操作反饋(例如接受或拒絕自動補全、保存修改等)。特別是用戶在編寫代碼時的「進行中」代碼數據,這與互聯網上的已完成代碼不同,這使我們能訓練出在代碼不完整狀態下依然能準確補全和修改的模型,這是通用模型不常處理的情況。我們擅長處理復雜中間狀態的代碼庫,并且通過用戶行為數據理解代碼演變模式。
主持人:這也成為了在這個領域最終能夠勝出的公司的一個重要競爭優勢。如果你們處于領先地位,就能夠比其他競爭對手收集到更多、更獨特的數據。
Varun Mohan:是的,能夠深入理解代碼庫是關鍵,否則能力停留在表層,很難建立差異化競爭優勢。
主持人:你這里指的是作為一家公司而言嗎?
Varun Mohan:對,作為一家公司。
主持人:那作為一個用戶而言呢?
Varun Mohan:我感覺這個領域的競爭會非常激烈,最終不同產品的區分度可能體現在能否持續地保持領先優勢。
主持人:因為如果他們只是簡單地在 Sonnet 的基礎上進行一些包裝或二次開發,其能力與其他的 Sonnet 封裝器相差無幾,那就沒有明顯的差異化,也缺乏堅實的競爭壁壘。
Varun Mohan:這取決于具體應用,如果是處理非常基礎的網頁元素,可能直接使用前沿通用模型就足夠了。
主持人:另外,我認為對于大家理解 Windsurf 非常重要。你此前提到過在 Windsurf 中,你需要從一個已有的基礎代碼庫開始,而不是將其視為一個完全抽象的「從零到一」的應用構建工具。它實際上是一個集成開發環境,你在其中進行代碼編寫,需要安裝依賴庫。
Varun Mohan:對,這一點很重要。許多開發者偏好本地開發環境,尤其處理需要本地系統依賴(如 GPU 驅動)的復雜應用時。對此,我們提供這種靈活性,允許開發者在習慣的環境中工作。本地開發和基于 IDE 的模式已存在幾十年,未來幾年也不會消失。
06
關鍵的決策,
要為 6 個月后做準備
主持人:在打造 Windsurf 的過程中,或者在 AI 行業摸爬滾打的過程中,你學到的最反直覺的一件事是什么?
Varun Mohan:我覺得有一件很有意思的事情是,大家在網絡上對我們短期內取得的進展表現出極大的熱情,比如我們每周發布的新功能,或者每隔幾周進行的產品更新。
但實際上,我們公司內部的許多關鍵決策,都是在為未來三個月、六個月、甚至九個月后的發展做準備。我們公司的目標是,每隔 6 到 12 個月就對現有產品進行一次徹底的「自我革新」。每過 6 到 12 個月,我們現有的產品形態應該看起來有點落伍。
所以,這里就存在一個看似矛盾的現象:一方面,你希望在市場上有成熟的產品,能夠逐步迭代,聽取用戶的反饋,持續改進。但另一方面,我們作為首批推出完整 IDE 產品的公司,是從顛覆性的產品革新方向出發的。
然而,如果我們不持續地進行自我顛覆和演進,那么現有產品的價值很快就會貶值,我們必須不斷地重新證明自己的價值,可能需要我們在用戶尚未明確提出需求的領域進行創新。因此,在公司內部,始終存在著一種矛盾:進行增量式改進感覺更安全,例如添加一個新按鈕,或者用戶反饋說「我希望這個下拉菜單能實現 X 功能」。但這些改進并非我們最終取勝的關鍵原因,它們只是一些基礎功能,我們可以做也可以不做。
但最終決定我們能否取得成功的,是那些具有長遠影響、甚至會顛覆現有產品形態的方向,這種矛盾很微妙。增量改進是重要的,同時也不能完全忽視用戶的聲音,因為用戶是我們的基礎。
主持人:這讓我想起了最近一位播客嘉賓 Captions.AI 聯合創始人 Gaurav Misra 的分享,說他們公司有兩個路線圖:一個是「真實路線圖」,完全基于功能需求、用戶反饋和數據來制定;另一個是「秘密路線圖」,完全不考慮用戶的直接反饋或數據,而是基于他們團隊自身對技術趨勢的判斷和預測,大膽押注未來的發展方向。
Varun Mohan:是的,沒錯。
主持人:Anthropic 的 Dario 曾預測,未來 90% 的代碼將由AI編寫。然而,你們公司現在卻在大規模地招聘工程師。你認為是否會有一個臨界點,屆時你們對工程師的需求會顯著減少?
Varun Mohan:我認為核心的問題在于,通過增加更多的工程師,我們能否獲得更大的邊際價值提升?
首先,我需要澄清一點:即使AI能夠編寫 90%的代碼,這并不意味著工程師的生產力將提高十倍。因為工程師的工作不僅僅局限于編寫代碼。他們還需要進行代碼審查、測試、調試、系統設計、部署,甚至在代碼庫中進行導航和理解。工程師所做的工作內容非常廣泛,不僅僅是簡單的代碼編寫。
在并行計算領域有一個著名的法則,叫做 Amdahl 定律(Amdahl's Law)。它的基本含義是,如果你的任務可以分解成不同的部分,其中一部分是串行的「關鍵路徑」,那么即使你將可并行化的部分無限加速,整個任務的完成時間也存在一個上限,由那個串行的關鍵路徑決定。簡單來說,比如你完成一項任務總共需要 100 個時間單位,其中 30 個單位是用來寫代碼的。即使我能將這 30 個單位的時間縮短到 3 個單位,你最多也只能將總時間從 100 個單位減少到 73 個單位,整體效率提升最多是 27%。
所以,我們確實看到了生產力提高了 30%,甚至接近 40%。但從我們希望解決的目標來看,即便公司擁有 200 名工程師,可能仍然不足以實現。因此,問題的關鍵在于,每個工程師通過 AI 工具能夠帶來多少額外的生產力提升?
再舉一個例子,如果你去看像摩根大通這樣的大型金融機構,他們的首席信息官(CIO)每年在軟件方面的預算高達 170 億美元,擁有超過 5 萬名工程師。如果你告訴她:「這些工程師現在能夠構建更多技術了。」這才是 Windsurf 真正帶來的價值。摩根大通或其他公司會進行這樣的計算,即構建技術的投資回報率提高了。AI 技術提高了技術投資的回報率,意味著他們應該投入更多的資源,并且在短期內可能需要更多的工程師。這種情況并非適用于所有公司,確實有一些公司對技術的需求有限,或停留在某個發展瓶頸。但哪些對技術需求極為龐大的公司而言,「AI 賦能的工程師」意味著他們會繼續招聘更多的工程師。
07
「如果創始人都沒法把產品賣出去,
又怎么指望銷售去賣」
主持人:目前,你們的工程團隊有多少人?
Varun Mohan:目前我們公司大約有 160 名員工,工程團隊有 50 多人。
主持人:除了工程團隊,公司還有哪些規模較大的部門或職能?
Varun Mohan:我們有市場團隊。
主持人:你們起初像大多數初創公司一樣,沒有專門的銷售團隊。但后來你們意識到這是一個巨大的市場機會,并為此做出了顯著的調整。現在,你們擁有一個規模相當大的銷售和市場團隊,這在你們公司的發展歷程中是一個非常突出的特點。
Varun Mohan:對,實際上這個決定我們在公司早期就做出了。大約在一年前我們就聘請了銷售副總裁,而現在我們的市場團隊已經超過 80 人了,這在公司內部是一個規模相當可觀的職能部門。
在公司剛成立時,我們有一些天使投資人是具有豐富運營經驗的市場銷售專家。比如 Carlos Delatorre,他曾是 MongoDB 的首席營收官(CRO)。對我們而言,我們從未對企業銷售或銷售本身持負面看法。我認為這可能是技術型創始人常常存在的誤解,他們可能覺得銷售是流程中一個不必要的「壞」環節,一切都應該通過產品驅動實現增長。
我認為事情并非非黑即白,企業銷售是非常重要的組成部分。但可能是因為當時我們是一家專注于 GPU 虛擬化的基礎設施公司,所以我們早期從未招聘過銷售人員,因為我自己就是負責銷售產品的那個人。
回想起來,如果我自己都難以通過銷售來獲取增量收入,我不知道如何將這個流程規模化,如何將公司的收入從數百萬推向數億,甚至數十億。所以,如果我自己都不清楚如何完成這項任務,又怎能招聘一名銷售人員,期望他來做到呢?另一方面,到了 Codeium 這個發展階段,許多大型企業很快就主動聯系到我們。
在 2023 年年中,我們開始正式對外銷售產品,并與多家企業同時開展了并行試點項目。很快我們就意識到,在這個領域需要建立一套針對大型企業客戶的銷售機制。因此,在 2023 年年底,我們就聘請了銷售副總裁。隨后,我們迅速擴大了銷售團隊的規模。對我們來說,如果你希望將產品銷售給財富 500 強企業,僅僅依靠用戶在線刷卡購買幾乎是不可能實現的。
主持人:在團隊結構、工程管理、產品設計等方面,你們是否有別于其他公司之處,或者嘗試過哪些特別成功的方法,亦或是經歷過哪些完全失敗的嘗試?
Varun Mohan:我們公司內部有一個非常有意思的決策,那就是核心工程團隊中沒有設置純粹的「產品經理」職位。這主要是因為我們的產品是專門為開發者群體打造的,而我們團隊成員自己就是開發者。我們深信,我們作為開發者的直覺和經驗對于產品的決策具有重要價值。如果我們的直覺不起作用,那么可能我們招聘的員工就不夠匹配。所以從某種意義上講,我們的開發者也在承擔著一部分傳統產品經理的角色。
但另一方面,對于企業級業務來說,我們確實與許多大型企業有合作,很多時候客戶提出的需求是我們工程師自身難以直接體會的。「類似于需要 FedRAMP 認證」這類需求絕大多數都是由客戶主動提出的。
因此,我們也有一部分員工正在向產品戰略類角色進行轉型,他們負責深入理解客戶的需求,同時結合我們的技術能力,幫助我們構建出能夠規模化應用的產品。所以,整體而言,我認為我們在組織結構方面是比較獨特的,這主要歸因于我們的產品面向開發者群體,并且許多產品決策是基于開發者的直覺進行的。此外,正如你所說,我們的工程團隊結構也比較扁平化。我們奉行「兩塊披薩團隊(Two-Pizza Team)」的原則,將團隊規模控制在較小的范圍內。因為我覺得如果團隊規模過大,團隊負責人就無法深入地了解技術細節。
而且,在這樣一個技術發展日新月異的行業中,領導者如果不能深刻理解技術,并且不親自參與實際的開發工作,這實際上是非常危險的。這也是我們做出的另一個重要決策,團隊的靈活性非常高,如果我們決定某個項目的優先級發生了變化,我們會非常迅速地調整團隊結構。這一點在我們公司是高度集中規劃和執行的。
主持人:你剛才提到公司大約有 150 名員工,請問目前有多少位產品經理呢?
Varun Mohan:在產品戰略這個領域,我們目前有三個人擔任這個角色。
主持人:我明白了。所以他們的正式頭銜是「產品戰略經理」,而非傳統的「產品經理」?
Varun Mohan:沒錯。
主持人:有意思。那么大概是 50 名工程師,80 多名銷售人員,再加上其他部門?
Varun Mohan:對的。我們還有一些其他職能部門,例如招聘、財務以及市場營銷等。
08
親自去用,
了解模型的能力邊界很重要
主持人:有沒有一些試用Windsurf 的小貼士,幫助用戶更高效地利用這款工具?
Varun Mohan:第一個建議是,用戶需要保持一定的耐心,同時在發出指令時要盡量明確。當你讓應用程序進行修改時,它可能會生成很多你不需要的或不相關的更改。防止這種情況發生的最好方法就是盡可能地具體和明確地描述你的需求。我建議用戶在剛開始使用時,先從小的代碼修改任務入手。如果你的項目包含一個非常大的目錄,不要一開始就嘗試讓 Windsurf 重構整個目錄,因為一旦出現偏差,可能會影響到二十多個文件。
從這個角度來看,用戶會隨著使用逐漸掌握產品的「能力邊界」和「表現模式」。我喜歡用代碼自動補全功能來做類比,當你使用代碼自動補全功能時,有時它建議的內容可能只有 30%是你真正想要的,這聽起來或許會讓人覺得有些沮喪或不便。但實際上,并不會覺得特別煩人,因為你已經學會了如何篩選,知道在 70%的情況下你可以忽略它的建議。而當你采納它的建議時,你清楚它能帶來價值。而且,你還會提前預判,如果你輸入的指令非常復雜,你會預期到「這次自動補全可能不會完全符合我的要求」。
所以,我認為這就像是需要理解和掌握產品的「高峰」和「低谷」一樣。每隔三個月,產品的各項功能都會持續得到改進和重新評估,與之前相比會變得更加智能和好用。因此,我認為保持耐心和明確指令是用戶在使用 Windsurf 初期需要掌握的兩個關鍵技巧。
主持人:我覺得你剛才強調的一點非常重要,那就是用戶需要花時間去了解模型的能力范圍,例如需要提供多具體的指令,或者它能處理多抽象的任務。隨著使用經驗的積累,用戶會逐漸建立起對模型能力的直覺判斷。
結束之前,有沒有什么最后想和聽眾分享的,或者有什么智慧之言?
Varun Mohan:說實話,我可以給出一些關于這個行業的預測,可能大部分都會錯。我覺得最好的辦法就是親自去嘗試這些工具,動手用這些產品。我覺得未來一年,會有大量的「alpha」機會,任何能最大限度利用這些工具的人都會領先一步。
想象一下,你的同事中有多少人甚至都不知道這些工具的存在,也不知道它們能做什么,這會讓他們的工作效率大打折扣。盡可能快地動手去試,去用它們。
主持人:你說的「動手去試」,意思是下載 Windsurf,開始編程,要求它幫你構建東西嗎?
Varun Mohan:對,構建應用。你甚至可以用它來制作原型、修改現有的代碼庫。你可能會成為團隊里的倍增器,做出別人從沒想到的貢獻。想象一下,如果你是一個產品經理,能夠快速地修改代碼庫并自己推動變更,那你可能會獲得工程師們的極大尊重,也能做更多的事情。我覺得到那時,可以說,你幾乎就沒有上限了。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.