中でも 「Anne of Green Gables(赤毛のアン)」は実は続編があって、シリーズ2と3まで読むほどには面白かったです。シリーズ3「Anne of the Island」はアンの大学時代(18~22)の話です。1915年出版にも関わらず、大学生活は今とそんなに変わらないのが読んでいて新鮮な驚きでした。
2023/12/21 4:00 に障害がありました。GKE クラスタの Pod が問題なく起動するにも関わらず LB(NEG)に入るタイミングで Error syncing to GCP: error running backend syncing routine: googleapi: Error 400: Invalid value for field 'zone': ''. Must be a match of regex '(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)', invalidという身に覚えのないエラーが発生しはじめて、リクエストが全く届かなくなりました。結局、その場で GKE クラスタをコピーして Ingress 含めた主要リソースを全部移行するという大工事で乗り切りました。GCP サポートとともに原因特定に取り組んでますが、GKE 自体に根本原因がある可能性も残ってます。
本を読むだけで解決とはいかないですが、「国(異文化)による常識には大きく違いがあること」、「そういう常識が大きく違う人同士でのコミュニケーションに最適化されたプロトコルがあること」、を豊富な具体例で説得力を持って知れたのは良かったです。異文化チームを率いるときのプロトコルは例えば、リーダーが自分の常識を事前にチームに伝えておくことでチーム共通のルール・基準を最初に設けること、などがありました。常識の違いについては、日本人が相当変わっているというのに気付かざるを得ないので読んでいてクスっとできます。下のマッピングは同じ著者の別記事からの引用ですが、リーダーシップと意思決定に関わる日本人の特徴が際立ってます。日本は Hierarchical x Consensual の象限の端で孤立してますよね。ボスの指示を待って部下は意見は控えることが社会的に期待される一方、いざやるとなったら部下全員の合意を得ないと反発が起きるという意味です。その象徴が稟議(Ringi)です。真反対に位置する Egalitarian x Top-down のアメリカは、コミュニケーションは対等にやるのが好まれる一方で、決めるのはボス一人に一任されているので部下の合意は必要ないという常識です。そういう視点でアメリカのドラマを見ると確かにと思うことがありますよ。また、日本のような文化でアイデアを出してもらうなら、あえて上司抜きでミーティングする機会を作るのが有効と書いてありました。
仕事
会社
入社から二年半経ちました。
Tech Group のオーナーを担当してました。この Group の中に、Native Unit / Unity Unit / Infra Unit があって、全エンジニア職がどこかに所属してます。Infra Unit のオーナーも兼務していて、この中にさらに Database Team / Android Infra Team / Voice Chat Team がありました。
Database Team は MySQL の負荷対策を中心に行っていて、スケールアウトを見据えた Vitess 導入はここで行ってます。Vitess はシャーディング用途だけが注目されますが、シャーディング前であっても ProxySQL のように間に挟めばコネクション集約によるパフォーマンスメリットが期待できます。これを Unsharded Vitess と呼びます。MySQL スケールアウトのソリューションは色々ありますが、アプリケーションコードの変更が最小限であること、段階的に導入できること、費用が抑えられること、InnoDB の過去の知見が活かせること、類似ユースケースにおける導入実績、を踏まえて Vitess 採用を決めました。
Android Infra Team は Android アプリのパフォーマンスと開発生産性を改善するために立ち上げました。前者は例えば起動時間(Cold Start)が 50 % 削減できましたね 🎉 後者は開発生産性がどういう開発のときに落ちるのかを整理した上で人のアサインや体制変更で手当したのが即効性があって有効だったと思います。道半ばではありますが、たくさんのアイデア出しと分析・検証作業を通して、どれくらい理想と今が乖離していて、そのために何をどれくらいのリソースでやる必要があるのか、即答できるくらいに自分たちのシステム理解が深まったのも一つの成果だと思います。
Voice Chat Team は通話品質を安定的に提供するための改善や不具合修正を行いました。このチームが立ち上がった一年半前は社内外から通話トラブルの報告を常に受けていた状況でしたが、2022 年後半にもなるとすっかり落ち着きました。通話はネットワーク回線、デバイス、周辺機器(イヤホン・マイク)からも影響を受けるので完全に問い合わせがなくなるということはないですが、そこから共通する要素をまとめて issue 化する段階になると数はぐっと少なくなりました。また、ノイズキャンセル機能の導入(Android)・安定化(iOS)もできましたね。
#Debezium 2.1 was recently released 🎉 Vitess connector finally supports initial snapshotting. Thank you for all the help from the #Vitess#Debezium community!