Yuichi Murata's Engineering Blog

グローバル・エンジニアリング・チームをつくる

エンジニアが学ぶ弁証法

「哲学」というのはエンジニアリングの世界では多少皮肉的なニュアンスを含めて語られることが多いように思う。論理的に白黒つけることができないんだけど、「なんかこれが良いよね」という、曖昧な主張というラベル的な使われ方をしがちなのではないかと思…

罪と罰、半沢直樹とマズローで読み解く、誰のために仕事をするのかという話

ありがたいことに、ここ10日間ほとまとまった夏休みを頂いています。こんなに長い休みを取ったのはハネムーン以来です。最近は仕事ばかりで家族との時間を全然取れていませんでした。この休みに家族、何より娘と過ごす時間をしっかり取れたのが何より幸せに…

2020年前半振り返り

気がつけば 2020 年前半も終了。ひとつ大きな区切りがついたので、この半年を振り返ってみようと思う。 よく出来たこと 今年に入って 2 つの大仕事をやりきれたと思っている。 1 つ目がインフラチームのマネジャーとしてチームを作りをしたこと。 今年の頭か…

2020年前半振り返り

気がつけば 2020 年前半も終了。ひとつ大きな区切りがついたので、この半年を振り返ってみようと思う。 よく出来たこと 今年に入って 2 つの大仕事をやりきれたと思っている。 1 つ目がインフラチームのマネジャーとしてチームを作りをしたこと。 今年の頭か…

挫折は実は習慣を強化する

自分の好きな言葉に「能力とは習慣の積分である」というものがあります。「エンジニアリング組織論への招待」に書かれた広木さんの一節です。プロフェッショナルとして尊敬する先輩や友人達をよく見ると、会議室でも PR ででも、まるで呼吸するかのように核…

IT は全自動詐欺師になってしまうのか

最近は本を読んでばかりでいました。たまには違うことがしたいと多い、久しぶりにケータイでゲームをダウンロードしてみました。ゴルゴ 13 よろしく凄腕のスナイパーになりきり、麻薬の取引を阻止したり、自爆テロを阻止したり、マフィアに追われている同僚…

こうして「非常事態」という言葉は死んだ

「まさにギリギリ持ちこたえている状態だ。」 最近メディアで良く目にするフレーズといえばこれである。 非常事態宣言をするか否かを問われて首相が繰り返し発言しているフレーズである。 このフレーズを聞いてはや一週間以上経つ。その間にも感染拡大は止ま…

ソフトウェア開発とは戦争である

最近、週末に閉じ籠るようになって本を読む機会が増えた。特に興味を持っているトピックとして戦略論や戦史の話を読むのだが、つくづく「ソフトウェア開発は戦争である」と思う。とても類似点が多いのである。戦争について勉強すると、ソフトウェア開発で修…

機長に学ぶ仕事の任せ方

やってみせ、言って聞かせて、させてみせ、ほめてやらねば、人は動かじ 話し合い、耳を傾け、承認し、任せてやらねば、人は育たず。 やっている、姿を感謝で見守って、信頼せねば、人は実らず あまりに有名な連合艦隊司令長官、山本五十六の名言です。 今、…

ノンプレイングマネジャーだがらできること

エンジニア職からマネジャーに昇進するキャリアパスを通った場合、多くの場合「プレイングマネジャー」をすることになることが多いと思う。自分もそうだった。 まだまだ現場からは離れたくないという思いがあったり、圧倒的な業務量をこなすためには自らも動…

読書レビュー: 失敗の本質 戦場のリーダーシップ篇

かの有名な「失敗の本質」のスピンオフ。戦場のリーダーシップ篇。我々ソフトウェア業界では、時々「戦場」とも言えるような悲惨な状況に直面します。そのような状況においてリーダーシップはどうあるべきかという問いに答えてくれる面白い一冊だったので紹…

読書レビュー: プロパガンダ

年始読書レビュー第二弾。広告や政治に使われる宣伝や説得の手法について科学的に解説した本。 プロパガンダ:広告・政治宣伝のからくりを見抜く 作者:アンソニー プラトカニス,エリオット アロンソン 出版社/メーカー: 誠信書房 発売日: 1998/10/30 メディア…

読書レビュー: 学習する組織--システム思考で未来を想像する

年始の時間を使ってガッツリ「学習する組織--システム思考で未来を想像する」を読んだので、ここに感想を纏めておこうと思います。 学習する組織――システム思考で未来を創造する作者:ピーター M センゲ出版社/メーカー: 英治出版発売日: 2011/06/22メディア:…

グローバルメンバーと 1 on 1 どうしてる?

現職で初めてエンジニアリングマネジャーについたのだが、初めてにして部下が全員外国籍というチャレンジングな一年であった。厳密には三月からなのだが、去年の今頃にはマネジャーっぽい動きをしていたので、個人的には1つの節目である。 1 on 1 はやるべ…

グローバル開発チームを一年強率いた話

気がつけば現職に移って早2年が経つ。色々あったが、何と言ってもグローバルの開発チームを作り上げた経験はとても貴重なものだったと思う。なので、ここでアウトプットしておこうと思う。 グローバル開発チーム ちょうど一年半ほど前から、社内であるプロジ…

もう辛くない~エンジニアの目標設定を楽しくする数値化の技術~

みなさん、目標設定で苦戦したことありませんか?自分はかつては目標設定にその意味が見いだせず、かといってときに自分の「お給料」を決めてしまうこともあるため蔑ろにする事もできず、ただただ苦行として苦しんだ時期がありました。辛い目標設定をどうや…

仕事は楽しくなければならない科学的な理由

みなさん楽しく仕事をしていますか。最近のエンジニアリング組織を見ると従業員のモチベーションに気を配る職場が増えてきているように思います。それらは主に、より優秀な人材をキープするためだとか、楽しく仕事をしたほうが気分がいいなど、直感的な理由…

WebCam を表示するだけの OS X アプリを作った

はじめて OS X アプリ開発 & Swift をやってみました。 github.com きっかけは Google Meet の機能不足。スクリーンシェアをしているときこちらのカメラだけ表示が消えてしまうのである。なんとも不公平感があるし、こちらの表情を始めとするメッセージが伝…

成果最大化の科学

Engineering Meetup という面白そうな会があったので参加してきました。発表の中であった、「マネジメントは手段。チームの成果の最大化が目的」という treby さんのフレーズが自分の中で響いたのでその話をします。 engineering-manager-meetup.connpass.co…

なぜアジャイルを認めてくれないのか ~プロジェクトマネジメント型組織における変革の処方箋~

はじめに この記事では、従来型の組織にアジャイル開発を導入しようとして引っかかる、よくある「障害」とその解消のための方法について話します。 最近シニアエンジニアとして、新しい開発チームの立ち上げに関わる機会が増えてきました。 自分も含めて周囲…

Google Spanner のアーキテクチャを知る

最近 Cloud Spanner のベータ公開によって話題の Spanner。 気になっていたので論文を読んだり勉強会などで情報収集していました。日本語のリソースもそこまで多くないので、調べてわかったことを纏めておきます。 簡単にまとめると特徴は以下のとおりです。…

タスクキューのリクエストのログを分ける

StackDriver Logging でログを見るときや、ログメトリクスを定義する時にタスクキューのリクエストを別途扱いたい時がある。たとえば、通常のユーザーリクエストはレスポンスタイムの遅延を許容したくないが、タスクキューの場合は問題ないなどのケースであ…

App Engine は DoS 攻撃を勝手に防いでくれるのか

App Engine には DoS プロテクションサービスなるものがあります。なにやらいい感じに DoS 攻撃を防いでくれそうな気がします。App Engine は勝手に DoS 攻撃を防いでくれるのでしょうか。 Configuring DoS Protection Service for Go | App Engine standard…

App Engine で謎の Untraced Time が発生するときは

App Engine を利用していると、時たま何かに引っかかったように処理が詰まることがあります。こんな時にはもちろん StackDirver Trace を使ってボトルネックを探ったりするわけです。 しかしながら時に、何の RPC を呼び出しているわけでもないのに、何故か…

Auto Scaling と Basic Scaling は何が違うのか 【基本性能編】

App Engine の Scale Type には Manual Scaling / Basic Scaling / Auto Scaling の 3 種類があります。 https://cloud.google.com/appengine/docs/go/an-overview-of-app-engine#scaling_types_and_instance_classes このうち Basic Scaling と Auto Scalin…

Go + App Engine で作る API Gateway

こんにちは、むらたです。Advent Calender 初めてのチャレンジです。 自分は職務でよく、App Engine で Microservices 構成をとった開発をやります。例えばこんな感じの構成です。 DeNAでのGCP活用事例とGCP NEXTでの事例紹介 — Mobage Developers Blog この…

Go の 3 つのエラーハンドリングパターン

Pattern 1: エラーを値として定義する Pattern 2: 動的にエラー値を生成する Pattern 3: 独自エラー型を定義する Pattern 3 (番外編): 独自エラー型はかならず error interface で返す 結論 今回は go のエラーハンドリングのパターンについて書いていきたい…

Go で Web アプリを作る

思いつきでブログを初めて見る。 最近 Go 言語を使って Web アプリを作成していたので、それ周りで少し記事を書いてみようと思う。 Go 最近になって様々なプロダクトで使われるようになってきた Go。Web アプリを作るに当たっては以下のような利点があると思…