文字っぽいの。

文字を書いています。写真も混ざります。

エンジニア立ち居振舞い:なんでもかんでも技術で解決しない

お題「エンジニア立ち居振舞い」

面白そうなので便乗する。

だいたい表題通りで、エンジニアはエンジニアリングができてしまうので、エンジニアリング(技術)で解決できる or できないの視点で見がち。 自動化とかスケールするかとかの話も好きなので、自動化できてかつスケールするような仕組みを、新機能を作り始める初期から考えることが多い。

例えば、「今日のおすすめ10選」という毎日更新される機能を実装しようとなった時に、「じゃあLIKEが付いた順と更新日時でいい感じに計算して、バッチ処理でもしましょう。」となる。 ただ、その機能を実装するためには工数がかかるし、そもそも「今日のおすすめ10選」によってKPIにどのくらいの影響があるか分からない。 わからないのにそこに工数を割いてしまうと「なんかすごい時間かかって疲れて作った機能だけどユーザには全然使われない。」という不幸を産んでしまう。

これは正解では無いと思うけど、

  • 簡素な管理画面を作り、当番制で登録
  • 管理画面にあれこれ便利機能を追加
  • 読まれる記事の傾向が分かってきてるはずなのでアルゴリズムを組んで自動化

という手順を踏んでいった方が、無駄に疲れることは減りそう。

エンジニアリングでガッと解決するのはかっこいいし気持ち良いけども、ユーザが得られる幸福量が変わらないのであれば、初期は泥臭く人間の力によって解決していけば良いと思っている。コード量が増えれば増えるほどバグも増えますからね。

なので、なるべく小さな実装で施策や新機能を試せるように、設計や提案の段階で発言できるように考えて立ち居振る舞っている。

※自動化をしなくても良いとか、技術で解決してはいけないという話ではない