日本电影一区二区_日本va欧美va精品发布_日本黄h兄妹h动漫一区二区三区_日本欧美黄色

不只看數(shù)字:軟件開發(fā)企業(yè)如何評估客戶端工程師績效(軟件開發(fā)人員績效考核辦法)

作者:Ashwin Raghav Mohan Ganesh, Harsha Vardhan Mudumba Venkata

譯者 | 明知山

策劃 | 丁曉昀

人力資源經(jīng)理在評估軟件工程師的績效時,他們常常依賴一套已有的指標(biāo),相信這些指標(biāo)能夠有意義地評估工程師的績效。然而,這些指標(biāo)有時候并未能全面地展現(xiàn)工程師日常職責(zé)以及他們對項目的實際貢獻。

考慮這樣的一種情景:一位工程師對數(shù)百萬用戶使用的產(chǎn)品的關(guān)鍵組件進行了修改。從字面上看,這似乎影響了大量用戶群體,但實際情況可能完全不同。

事實上,盡管大多數(shù)績效評估指南試圖使用可直接與個人相關(guān)聯(lián)的指標(biāo),但在工程師角色和技能的背景下,這些指標(biāo)真正所代表的含義常常缺乏清晰性和可解釋性。

在評估客戶端工程師的績效時,這種不足尤為突出。用于評估他們績效的指標(biāo)并不像用于評估服務(wù)端工程師的指標(biāo)那樣具有充分的可解釋性,因此可能存在評估差異。

本文將深入探討用于評估客戶端工程師績效的指標(biāo)、這些指標(biāo)的含義以及它們無法代表的東西。

我們的目標(biāo)是為開發(fā)全棧軟件的企業(yè)在制定績效評估指南時提供更全面的視角,確保對工程師的貢獻和影響進行更平衡和公正的評估。

這份文檔涉及什么以及不涉及什么

現(xiàn)如今,大多數(shù)可用的績效評估指南都圍繞著幾個基本要素展開。這些要素雖然在不同組織中表達(dá)方式各異,但其核心本質(zhì)基本一致。

  • 首先,企業(yè)通常是基于工程師的影響或其他與影響相關(guān)的要素來評估工程師的。評估從衡量他們的工作和貢獻的漣漪效應(yīng)開始。
  • 其次,作為計算機科學(xué)的實踐者,企業(yè)期望工程師解決復(fù)雜的計算機科學(xué)問題,為企業(yè)提供持久的優(yōu)勢。人們默許地認(rèn)為解決問題的能力是他們的核心。
  • 第三,工程師的職責(zé)隨不同級別資歷的變化而變化。隨著他們在企業(yè)階梯上升,他們的影響力和領(lǐng)導(dǎo)力會無縫地融入評估框架中,成為評估高層級成長的重要標(biāo)志。

雖然大多數(shù)評估標(biāo)準(zhǔn)也包含基于團隊合作和其他類似屬性的指標(biāo),但這些通常爭議較少,并且更容易在不同技術(shù)領(lǐng)域的工程師之間進行校準(zhǔn)。因此,本文不會深入探討這些方面,而是著重關(guān)注上述要素。

下面的部分將重點介紹一些我們認(rèn)為可以用來評估客戶端工程師績效的指標(biāo)。對于每一個指標(biāo),我們將強調(diào)相關(guān)的工程影響,討論固有的技術(shù)復(fù)雜性,并提供示例來演示如何有效地使用這些參數(shù)來將貢獻置于相關(guān)的上下文中。

采用率/規(guī)模

首先讓我們直面問題。用于衡量客戶端工程師工作成果的指標(biāo)通常圍繞他們所開發(fā)功能的采用率、參與度或留存率。

現(xiàn)在,我們停下來思考一下。一些產(chǎn)品指標(biāo),如安裝量或日活躍用戶,可能并不總能反映出工程師的才華(或者有時候也能反映?)。關(guān)鍵在于要跨不同的團隊對評估指標(biāo)進行精細(xì)的校準(zhǔn)。必須將其與用于后端工程師評估的其他指標(biāo)結(jié)合起來,這些指標(biāo)可能并不總能反映他們的專業(yè)知識,它們只是體現(xiàn)了產(chǎn)品的增長。

但不要被誤導(dǎo)了。這些指標(biāo)所展示的規(guī)模當(dāng)中存在著巨大的與之相關(guān)的工程挑戰(zhàn)??朔@些挑戰(zhàn)應(yīng)該成為他們績效評估的標(biāo)準(zhǔn),而不僅僅是增長或華麗的數(shù)字本身。

產(chǎn)品指標(biāo)

它代表什么

它不代表什么

示例

  • 安裝量
  • [每日|每月] 活躍用戶
  • 第[7|30]天留存率

龐大的應(yīng)用程序安裝量或使用量通常意味著一些事情:

  • 它表明了產(chǎn)品經(jīng)過精心設(shè)計的實現(xiàn),特別是在 Web 和 Android 平臺上。在這些平臺上兼容各種底層 API 和瀏覽器版本的復(fù)雜迷宮本身就是一個值得贊揚的成就。
  • 它標(biāo)志著產(chǎn)品能夠在各種地理位置之間有效運行,每個地區(qū)都有其獨特的互聯(lián)網(wǎng)連接、隱私/法律規(guī)定和手機制造商。
  • 它表明產(chǎn)品更好地適配了 Android 硬件的碎片化,以及存在于 Apple 平臺上的多種形態(tài)因素(如 MacOS、tvOSwatchOS 等)。
  • 它體現(xiàn)了工程師解決不常見設(shè)備和瀏覽器上的微妙 bug 的能力。
  • 它強調(diào)了工程師在保護生態(tài)系統(tǒng)健康方面所起到的關(guān)鍵作用,特別是對于那些真正無處不在的應(yīng)用程序(十億安裝量)以及可能造成系統(tǒng)范圍災(zāi)難的應(yīng)用程序來說。
  • 與普遍看法相反,十億次安裝并不能有效地衡量客戶端工程師在構(gòu)建新興產(chǎn)品方面的能力。
  • 用更輕松的語氣來說,這就像構(gòu)建一個每秒提供 50 萬個查詢的后端 API。雖然令人印象深刻,但并不是工程師能力的唯一標(biāo)志,也不是產(chǎn)品整體活力和增長軌跡的明確衡量指標(biāo)。
  • 如果缺乏可靠的質(zhì)量指標(biāo)的支持(下文有詳述),那么安裝量指標(biāo)就有點像一個沒有披風(fēng)的超級英雄。當(dāng)然,它看起來很華麗,可能會給你帶來一些街頭信譽,但這還不足以真正拯救世界。單獨來看,它主要只是炫耀產(chǎn)品增長,缺乏真正展示影響力的深度。所以,我們不要讓它在沒有全副武裝的情況下投入戰(zhàn)斗,好嗎?

  • Mitra改進了我們的文本編輯器,使其能夠在小眾 Android 廠商設(shè)備上運行,為我們1億DAU的產(chǎn)品擴大了1%的用戶群。
  • Akira在 Web 標(biāo)準(zhǔn)上的貢獻促進了我們從 2K 用戶的私人預(yù)覽向跨瀏覽器 1 百萬用戶公共預(yù)覽的轉(zhuǎn)變。
  • Mireya使用 C 實現(xiàn)了核心的移動功能,使我們能夠在推出 Android 后僅兩個月就推出 iOS 應(yīng)用,增加了 1 百萬日活躍用戶。
  • Ila對 Apple 平臺 API 的深入了解使我們能夠在 WWDC 發(fā)布后兩周內(nèi)向 10 萬用戶推出 Apple Silicon 版本的應(yīng)用。
  • 由于 Laya 解決了影響數(shù)千名沒有模擬功能的 Android 用戶的 bug,我們在印度的客戶滿意度評分提高了 3% 。
  • Amal對本地存儲的優(yōu)化是讓高級用戶在連續(xù)30天內(nèi)高度參與產(chǎn)品而不會耗盡磁盤空間的關(guān)鍵。

應(yīng)用程序健康狀態(tài)和穩(wěn)定性

產(chǎn)品指標(biāo)

它代表什么

它不代表什么

示例

程序崩潰

程序崩潰的減少(或超過 99% 無崩潰)意味著:

  • 展示了工程師有遠(yuǎn)見和嚴(yán)謹(jǐn)?shù)墓こ棠芰?,他們提供了出色的客戶端軟件,相比后端,客戶端軟件更加難以回滾。
  • 遵循了 Web、Apple 和 Android 平臺不斷變化的最佳實踐。
  • 能夠構(gòu)建在不同計算環(huán)境中無縫運行的軟件,這對于 Android 來說尤為重要。這突顯了團隊的技術(shù)多樣性和對各種計算環(huán)境的深入理解,確保了所有平臺上的最佳功能和用戶體驗。

應(yīng)用程序不發(fā)生崩潰也可能是因為它本身就很簡單。這些指標(biāo)需要與產(chǎn)品支持的流程和功能數(shù)量一起進行校準(zhǔn)。

Maya將支持 4 種不同身份驗證登錄流程的崩潰率從每天 1 萬次降低到了不到 1 千次。

  • 啟動延遲
  • 應(yīng)用程序大小
  • 內(nèi)存占用
  • 構(gòu)建時間
  • 大多數(shù)生產(chǎn)級應(yīng)用程序都具有復(fù)雜的啟動路徑,不僅涉及業(yè)務(wù)邏輯的初始化,還有一系列復(fù)雜的依賴項??焖賳訉τ诹糇∮脩魜碚f至關(guān)重要。對P95冷啟動的任何實質(zhì)性改進都需要細(xì)致的分析、建立假設(shè)和嚴(yán)格的實驗。
  • 具有合理內(nèi)存占用的應(yīng)用程序表明采用了工程最佳實踐,例如高效加載實體和重用對象。這在擁有大量低端設(shè)備的Android平臺上尤為重要。
  • 與 Web 工程相比,原生移動開發(fā)的一個痛點是相對較長的編譯時間。能夠顯著縮短編譯時間的努力將在開發(fā)者生產(chǎn)力方面產(chǎn)生多重效應(yīng)。這可以通過緩存構(gòu)建工件、優(yōu)化依賴關(guān)系(消除無關(guān)依賴項)和使用庫動態(tài)鏈接等方法來實現(xiàn)。

  • Alice在過去的6個月里將iOS冷啟動的P95降低了25%。Alice通過仔細(xì)分析啟動路徑和延遲加載初始屏幕不需要的庫實現(xiàn)了這一點。
  • Yu重寫了視圖模型緩存。這提高了內(nèi)存利用率,并在過去6個月內(nèi)減少了15%的OOM崩潰。

熱修復(fù)

適度數(shù)量的熱修復(fù)通常意味著:

  • 穩(wěn)定、高水準(zhǔn)的發(fā)布,能夠經(jīng)受住用戶需求和技術(shù)挑戰(zhàn)的考驗,展示出對交付卓越、可靠軟件解決方案的承諾。
  • 深思熟慮的實驗標(biāo)志,突顯了對功能測試和實現(xiàn)的戰(zhàn)略性方法,進一步增強了軟件的韌性和以用戶為中心的設(shè)計。

Kriti設(shè)計了一個在客戶端允許我們在后端遠(yuǎn)程配置客戶端參數(shù)而無需重新發(fā)布應(yīng)用程序的實驗框架,并且不違反應(yīng)用商店的政策。我們平均每個季度的熱修復(fù)數(shù)量已從 6 個降至少于 2 個。

后端錯誤 (4XX) (以及其他后端指標(biāo))

后端錯誤率的降低可能意味著:

  • 客戶端實現(xiàn)的更正,減少了錯誤的 RPC。這表明系統(tǒng)通信和協(xié)調(diào)得到了改善。
  • 提高了客戶端的可配置性,允許在啟動后進行參數(shù)調(diào)整,確保更好的性能和對項目需求和問題的響應(yīng)。

Indra經(jīng)歷了一個辛苦的過程來理解是什么情況導(dǎo)致客戶端發(fā)送錯誤參數(shù)并在后端觸發(fā)了 400 錯誤。這使我們值班時的誤報率降低了30%以上。

產(chǎn)品卓越

客戶端應(yīng)用程序是大多數(shù)在線應(yīng)用的主要接觸點。雖然這部分涵蓋了產(chǎn)品的卓越性,但其目的是強調(diào)快速發(fā)布、可訪問性、及時的錯誤解決和整體客戶滿意度之間的直接聯(lián)系。

指標(biāo)

它代表什么

它不代表什么

外部問題修復(fù)

盡管這可能被視為一種虛榮指標(biāo),但對于面臨用戶報告問題的開源客戶端應(yīng)用程序來說,它通常具有重大意義。這個指標(biāo)強調(diào)了處理和解決這些問題的重要性,有助于維護和提升項目在開源社區(qū)中的可靠性和聲譽。

  • 對于習(xí)慣宣告大規(guī)模 Bug 被消除的團隊,這個指標(biāo)失去了效力。如果大量 Bug 經(jīng)常被一筆勾銷而不加以解決,那么它就不能作為可靠的績效和改進衡量指標(biāo)。
  • 此外,這個指標(biāo)基于某種誠信假設(shè)。

發(fā)布次數(shù)

頻繁的發(fā)布意味著:

  • 持續(xù)的 Bug 修復(fù)和改進,體現(xiàn)了改善產(chǎn)品并確保其可靠性和有效性的承諾。
  • 提高了發(fā)布能力,克服了歷史上的挑戰(zhàn),并展示了改進的更有效率的發(fā)布流程。
  • 努力與生態(tài)系統(tǒng)的其他部分保持同步,包括依賴項和平臺更新,確保產(chǎn)品保持最新、安全,并與生態(tài)系統(tǒng)的其他元素兼容。
  • 大量的發(fā)布也可能源于不穩(wěn)定性,說明需要進行頻繁更新來解決持續(xù)出現(xiàn)的問題,并確保產(chǎn)品安預(yù)期運行。
  • 這一觀點強調(diào)了在產(chǎn)品穩(wěn)定性與發(fā)布頻率之間取得平衡的重要性,避免對團隊和最終用戶造成過重的負(fù)擔(dān)。

NPS/CSAT

盡管客戶滿意度調(diào)查具有通用性,但通常會受到客戶端應(yīng)用程序的影響。應(yīng)用程序是用戶與服務(wù)之間的第一個、最具體且頻繁的互動。

  • 糟糕的體驗可能會留下深刻的負(fù)面印象,難以抹去。
  • 相反,出色的應(yīng)用體驗可以彌補服務(wù)特性、性能和價格方面的不足,給客戶留下積極而持久的印象,有助于培養(yǎng)忠誠度和滿意度。

可訪問性/可用性指標(biāo)

  • 努力打造一款無障礙、包容的產(chǎn)品,供聽力、視力、行動能力或語言障礙人士使用。
  • 可用性通常表現(xiàn)為產(chǎn)品支持成本的降低。

結(jié)論

有那么一段時間,與一些后端工程師相比,客戶端工程師被認(rèn)為不是那么專業(yè)。后端工程師經(jīng)?;乇芸蛻舳斯こ坦ぷ鳎驗榭蛻舳斯こ瘫灰暈橐环N次要、更容易的軟件工程形式,其重點是表面的東西,而非正確性和軟件質(zhì)量。盡管隨著無服務(wù)器應(yīng)用程序和 SaaS 后端的興起,這種觀點在過去五年里發(fā)生了顯著變化,但殘余仍然存在。

即使這些觀點正在得到糾正,作為管理者,我們需要確保我們的個人偏見不會影響我們的決策,尤其是當(dāng)我們的決策深刻影響客戶端工程師的職業(yè)生涯和福祉時。本文討論的指標(biāo)旨在為確保企業(yè)更加公平對待客戶端工程師提供一個基本的出發(fā)點。

本文轉(zhuǎn)載來源:

不只看數(shù)字:軟件開發(fā)企業(yè)如何評估客戶端工程師績效_研發(fā)效能_InfoQ精選文章

相關(guān)新聞

聯(lián)系我們
聯(lián)系我們
公眾號
公眾號
在線咨詢
分享本頁
返回頂部
明水县| 铅山县| 北川| 内丘县| 贡觉县| 益阳市| 肥乡县| 古交市| 右玉县| 浮梁县| 宜良县| 三门峡市| 晴隆县| 西乌| 五原县| 彰武县| 长春市| 秦安县| 泾阳县| 青海省| 蓬安县| 营山县| 兴国县| 宝清县| 石家庄市| 任丘市| 徐水县| 栾城县| 务川| 隆安县| 华安县| 常山县| 万全县| 吉首市| 江阴市| 南投县| 瑞丽市| 临澧县| 大洼县| 阳新县| 称多县|