簡評三十一

技术绩效考量:你们可能都做错了

  • 評估software engineering team performance嘅心法
    • Focus on output,而唔係input
      • line of code 同加左幾多班唔係一個好嘅指標
    • Focus on team, not individual
  • 不良嘅指標
    • Line of codes
    • 速度
      • 每條team,每個task都唔同,唔係客觀嘅標準
      • 會減低同其他團隊合作嘅動機,因為會減慢自己嘅速度
    • 利用率
      • 唔係話每個人D task都排滿就係好
      • 排滿task會少左彈性
  • 正面例子
    • Product delivery
      • 節奏
        • 交付周期
        • Deploy頻率
      • 穩定性
        • 恢複服務時間
        • 變更失敗率
    • 質量
      • 簡單黎講就係deliver 出黎嘅價值
      • 好難有一個廣泛嘅定義,每個地方嘅情況都唔同
  • Other learning
    • What is high performer?
      • Spent less time on rework and unplanned work

Chaos Engineering的历史、原则以及实践

History

Chaos engineering 源自Netflix,由於cloud architecture太過複雜,好難debug,因此用「故障注入」去揾出系統嘅弱點。

Steps

  1. 預測系統係出現故障時嘅行為
  2. 針對故障去設計測試
  3. 制定rollback plan
  4. 評估故障嘅影響,留意有冇出現非預期嘅副作用
  5. 修複找到嘅潛在問題

常見對分布式系統做出嘅錯誤假設

  • 網絡是可靠
  • 延遲係零
  • Bandwidth係無限
  • 網絡係安全
  • Topology係不變
  • 有管理員handle問題
  • 傳輸成本係零
  • 網絡係homogeneous

測試嘅執行順序

第一個known係注意到,第二個known係了解

  1. Known known
  2. Known unknown
  3. Unknown known
  4. Unknown unknown

閱讀筆記 – 如何執行可用性測試-從頭到尾 6 個步驟

  • IBM報告表示每一元對可用性的投資都會帶出10~100元的回收
  • 6 steps
    1. 建一個原型或產品來測試
    2. 起草測試計畫–兩個重要問題: 要測試什麼, 如何度量結果
    3. 召集測試參與者
      • 目標客戶或理想的客戶 Persona
    4. 執行測試
      • 到企業安排現場有人主持與指引的測試,遠端在家平時樣子的測試
    5. 將測試結果做紀錄與文件化
    6. 修正問題並改善性能

16 Jan 2019

Can read the origin article

以下無需重讀

Airbnb 資深工程師分享:怎樣才是正確、有效的 code review

  • Minimum require for a PR to be merged
    • At least one ppl review
    • At least one code owner review
  • Don’t help other fix bug
    • Cannot help other grow
    • Discourage others
  • What to check
    • Code style
    • Readability
    • Corner case (need senior ppl diswho familiar the business logic)
    • Error handling
    • Test case (need to review test case too!)
    • Mini architecture (repeat code, consistent const, private vs public variable)
    • Big architecture, folder structure, inheritance, design pattern
    • Don’t be too emotional

How to get paid what you’re worth

  • People only pay what they think you’re worth
    • But you control their thinking
    • We need to clearly define and communicating your value
  • Key question to ask when evaluating your value
    • What are my clients’ needs and how do I meet them?
    • What is my unique skill set that makes me better qualified to serve my clients?
    • What do I do that no one else does?
    • What problems do I solve for clients?
    • What value do I add?

為何休息後更焦慮更沒動力?可能我只是在打發時間

  • 「休息」和「打發時間」是不同的
  • 休息時有一件「需要專注投入的事情」
  • 休息時進行一個「相對沒壓力的挑戰與練習」
  • 「休息」是另一種有目標的行動

叫人意想不到的激勵科學 (TED 中英文字幕)

外在獎勵可以令人集中,可以有效令人完成簡單嘅工作。
創意工作冇清晰嘅界定,冇單一嘅solution,外在獎勵令人視野更窄。唔可以改善創意工作嘅performance,有時候仲令情況惡化。
新世代嘅人力管理重點

  • Autonomy
  • Mastery
  • Purpose

Why do mirrors flip horizontally (but not vertically)?

Because we filp it horizontally when we present the item to mirror.

What is imposter syndrome and how can you combat it?

How to combat imposter syndrome

  • Receiving positive feedback, cannot ease feelings of fraudulence
  • Hearing that an advisor or mentor has experienced feelings of imposterism can help relieve those feelings
  • We can combat your own imposter syndrome by collecting and revisiting positive feedback

3 Lessons on decision making from a poker champion

  • Think about how much go to ourselves when success. Avoid ignoring the luck factor and over-estimate our skills.
  • Quantifying our thinking.
    • Train ourself think in number.
    • Try to use more precise words, or speak in numbers
  • Gut feeling good at handling everyday-things we have lots of experiences
    • Slow and careful analysis is better for big things
  • 3 Interesting memes by the speaker
    • Success is sweetest when you achieve it across a large sample size.
    • Your gut is your friend and so is a cost-benefit analysis
    • The future is unknown, but you can damn well try and estimate it.