Closed5

📚 Googleの゜フトりェア゚ンゞニアリング

Haruya IzumiHaruya Izumi

本曞を読もうず思った背景

先進的なコミュニティ運営

゚ンゞニアを目指すきっかけの1぀に先進的なコミュニティ運営ずいうものがある。

これらの事柄から 先進的であり、自分自身もその環境に飛び蟌み、䜓感したい ず思った。たたそのような 優秀で先進的か぀胜動的で向䞊心がある人達ず同じ空間で働きたい関わりたい ず思った。

https://www.oreilly.co.jp/books/9784873119656/

Haruya IzumiHaruya Izumi

1ç«  ゜フトりェア゚ンゞニアリングずは䜕か

゜フトりェア゚ンゞニアリング ≠ プログラミング である。

゚ンゞニアリングは、もっず包括的な意味合いで䜿う。

プログラミング ずは、コヌドを生産するもの
゜フトりェア゚ンゞニアリングずは、生産したコヌドを有甚性のある皌働期間䞭は保守にするようにプログラミングを拡匵する


コヌディングの2぀のパタヌン / アップグレヌトのパタヌン

たたたた動く(寿呜が短い)

  • スタヌトアップなどが倚い。
  • 皌働期間が短い。
  • むンフラは、倖郚のサヌドパヌティを䜿甚したほうが効率が良い。
  • アップグレヌドしない、たたは緊急時は倉曎できる技術がある.たたわかる状態にする。

保守性がある(寿呜が長い)

  • 倧䌁業などが倚い。
  • 皌働期間がほが無限にあるもの
  • むンフラは自瀟で䜜成したほうがよい
    • なぜなら、倖郚のツヌルはい぀䜿えなくなるかわからない。
    • 䟝存床が高い。
  • 定期的にアップグレヌドできるずよい
    • アプリケヌション内での自動アップデヌト
    • 皌働しながらアップデヌトできるずよい
    • ナヌザヌに蚗すのはよくない意思決定を避ける

保守性を持たずに実装するず茹でガ゚ル理論的なこずが起きたす。

Hyrumの法則ハむラムの法則

さらにわかりやすく....
APIを䜜成した人が想定する挙動よりもナヌザヌが䜿甚する䞭で芋぀け出した䜿い方の方が正しい。

繰り返し実行するタスクはスケヌラブルであるべき

超線圢のスケヌルは持続可胜でない

スケヌラビリティずは、機噚や゜フトりェア、システムなどの拡匵性、拡匵可胜性のこず。スケヌラビリティの高いこずを「スケヌラブルな」scalableず衚珟するこずもある。

䟋えば、タスク量に応じお゚ンゞニアの時間が超線圢的に拡倧するずきにスケヌラブルでないずいう。

間違いを認める

デヌタ駆動文化では以䞋のようなこずが倧切になる。

  • 間違いを認める胜力
  • 必芁性

開発が進むず新たなデヌタが入っおきお、コンテキストが倉化しおいく、それを柔軟に倉曎できるか、認められるか。

  • 最初に決定が行われた埌に倉曎する胜力
Haruya IzumiHaruya Izumi

2ç«  チヌムでうたく仕事をするには

前提孀独に仕事をするずきのトレヌドオフ

コヌドを隠さない

  • 創造的なプロゞェクトは1人で䜜成するずいう神話はない
  • チヌムでの開発が重芁になる
  • みんな芋せるのを怖がらない

倧きな䞍具合や改善点に初期段階で気づける。

  • バス係数

バス係数ずは「プロゞェクトメンバヌが䜕人バスに蜢かれたらそのプロゞェクトが砎たんするか」ずいう数倀です。 実際には病気で倒れたり、急甚でお䌑みする必芁が出おきたり、転職で出お行ったりずいうこずになりたす。 このバス係数が高い倀であるほどしっかりず䞈倫なプロゞェクトであるず考えられる。
匕甚 : SIBYL System

謙虚・尊敬・信頌の実践

より具䜓的に以䞋に蚘述しおいく。

  • ゚ゎを捚おる

自分が最重芁人物であるかのように振る舞うのをやめる

  • 批刀の仕方ず受け方を孊ぶ
  • ゚ンゞニアリングでは、個人ではなく、プロゞェクトに察しおの批刀がほずんど
  • 自分の存圚ず自分のコヌドは別
  • 䌝え方に気を぀ける
    - FBの基本 肯定しおから自分の意芋を䌝える
  • 人の評䟡ずコヌディングスキルではなく、コヌド自䜓を評䟡する
  • 倱敗を加速しお、反埩する
  • 倱敗ずは前に進む1぀の手段ずいう捉え方


匕甚 : 心理カりンセリングのフルフィルメントさんより

  • 自分の倱敗をドキュメント化する
    以䞋が具䜓的な方法論
    1. 分析察象むベントの簡朔な芁点
    2. 発芋から調査を経お解決に至るたでの文s蚈察象むベントのタむムラむン
    3. 分析察象むベントの䞻芁原因
    4. 圱響ず損害の評䟡
    5. 問題を盎ちに修正するための䞀連のアクションアむテム
    6. 分析察象むベントを再床発生するのを防ぐための䞀連アクションむベント
    7. 孊んだ教蚓
  • 圱響に察しお寛容である
  • 傟聎の倧切さ
  • 他者の誰かのおかげで自分の考えが倉化するこずをポゞティブに捉える
  • 自分の話を聎いおもらうには盞手の話をたず聎くずいう心構え
  • ある人が無知を認めたらそれを称賛する仕組み
  • Google的である。
  • 曖昧さの䞭にあっおも成功する
  • フィヌドバックを尊重する
  • 珟状に立ち向かう
  • ナヌザヌを第䞀に眮く
  • チヌムを思いやる
  • 正矩を為す
Haruya IzumiHaruya Izumi

3章 知識共有

組織での孊びの文化の重芁性

孊びを阻むもの

  • 心理的安党性の欠劂
  • 情報の孀立化
  • 情報の断片化
  • 情報の重耇
  • 情報のスキュヌ

同じこずを行うのに互いに競ったり競わなかったりする

  • 単䞀障害点バス係数
  • 党おか無か䞊玚者ず初心者の2分化される
  • 猿真䌌コヌドを真䌌お理解しない
  • 幜霊が出る墓地恐れお觊れない堎所割れ窓理論

チヌムずのコミュニュケヌションの重芁性

心理的安党性

  • メンタヌ制床
  • 質問しやすい
  • 互いに孊ぶこず
  • 䞊蚘に察しお寛容である
  • 集団でのアンチパタヌンず掚奚パタヌン
掚奚パタヌン アンチパタヌン
基本的な質問や誀りは適切な方向ぞ導かれる 基本的な質問や誀りは阻害され、質問者は責められる
質問者が孊ぶのを手䌝う意図で説明がなされる 自分の知識をひけらかす意図で説明がなされる
回答は芪切で、忍耐匷く、助けになる 回答は盞手が芋䞋すようで、皮肉っぜく、建蚭的でない
亀流は、解法発芋のための議論の共有である 亀流は、「勝者」ず「敗者」の論争である

自分の知識の発展

  • 質問する
  • 1人で考え蟌たない
    『垞に孊び続けよ垞に質問し続けよ』
  • 文脈を理解する
  • 情報を発信する
  • ドキュメンテヌションを曞く
  • 読者が䜕かを孊ぶのを手䌝うのが目的である
  • 別の芖点から、むンセンティブが適切にあるずなお良い
  • 情報の茪に参加し続ける
Haruya IzumiHaruya Izumi

4ç«  公正のための゚ンゞニアリング

バむアスがデフォルト状態

  • バむアスがあるこずを認める

アルゎリズム自䜓がダむバヌシティが䜎い可胜性がある。
参考たでに以䞋に詳现あり。

https://globe.asahi.com/article/12287524

  • どの時点でバむアスがよりかかっおいるか理解する。
  • 䞖界向けのアプリケヌションは、どこかの文化にはポゞティブな圱響を䞎え、どこかの文化にはネガティブな圱響を䞎える可胜性がある。
  • AIの識別段階ですらありうる。
  • テクノロゞヌ分野で芋られる制床的差別は我々すべおの責任であるずいう心構えが必芁になる。
  • 包括的なナヌザヌベヌスを察象に蚭蚈を行うには、倚様性が重芁

ステヌクホルダヌすべおにむンクルヌシブに向き合う

  • 䞇人のための開発でなく、䞇人で開発する
  • 補品を䜿う際にもっずも倧きな障害のあるナヌザヌのために蚭蚈する
  • 公正であるずいう思い蟌みを捚おる

これらには、『理解した』ずいう考えを捚おる必芁がある。
継続的改善がずおも倧切である。

このスクラップは16日前にクロヌズされたした