tomoima525's blog

Androidとか技術とかその他気になったことを書いているブログ。世界の秘密はカレーの中にある!サンフランシスコから発信中。

米国9年目、2024年のふりかえり

早朝ランで見る朝日

ポッドキャスト Today I Learned でも軽く話したのだけど、個人的な2024年のふりかえりを書き残してみた。

  • 事業
  • 生活
  • 趣味
  • Podcast
  • 買って良かったもの

今週のお題「2024こんな年だった・2025こんな年にしたい」

続きを読む

California International Marathon の忘備録


11月のモントレーベイハーフマラソンに続いて、今度はCalifornia International Marathon (フルマラソン)を走ったので、大会の様子や前日当日の記録を残しておく。

続きを読む

AWS CDKを使用したモノレポサーバーレスプロジェクトの実装

現在、AIを使った採用支援ツール(https://noxx.net)を開発しています。このプロダクトでは、仕事情報の分析や応募してきた候補者の評価のために、Step Functionsを含めて100を超えるLambda function を実行しています。インフラを含めたプロダクト内のすべてのサービスはAWS Cloud Development Kit(CDK)により開発/運用されています。
この記事では、プロジェクトをモノレポとして整理するところから、多数のLambda functionのデプロイ管理まで、サーバーレスシステムを設計/実装した方法を共有します。

続きを読む

合宿inトーキョーのふりかえり

ちょうどコファウンダーのふたりが日本に滞在する期間が重なったので、会社のメンバーを東京に呼び寄せて7月中旬に会社合宿(オフサイト)をした。記憶が新しいうちに、どんなふうに合宿をしたか、決めたことや良かったことなど振り返ってみる。

  • どんな合宿だったの
    • ゴール
    • 期間と場所
    • 準備
    • 合宿中に訪れた場所
  • 振り返り
    • 良かったこと
    • 次回への検討事項
続きを読む

Situational Awareness(元OpenAIの研究者が占うAIの今後10年)のメモ書き

OpenAIのセキュリティチームに所属していた研究者が書いた Situational Awareness というエッセイが2024年6月に発表された。

situational-awareness.ai

表題の Situational Awareness は "気づき" や自動運転の文脈における "周辺情報を認識する" という意味だが、"サンフランシスコ、シリコンバレーを中心とするAI研究者たちが気づいていること" としてつけられている。
このエッセイは "2027年に汎用的人工知能が誕生する" など、今後10年間にAIについて起こりうることについて、データや著者自身の見解に基づいて大胆な予想を展開している。

著者は Leopold Aschenbrenner という元 Open AIの研究者。OpenAI Super Alignment team(AIのセキュリティを研究するチーム)*1 を去ったあと、AGIの投資ファームを立ち上げた。

本著は p165に及ぶ長文であるが、興味深い内容だったので、(AIのサマリーを使わず)読んだ内容と多少の感想をメモ書きとして公開する。

  • Chap1. From GPT-4 to AGI
    • 1. Compute
    • 2. Algorithmic efficiency
    • 3 . Unhobbling
    • まとめ
  • Chap2. From AGI to Superintelligence
  • Chap3. The challenges
    • IIIa. Racing to the Trillion-Dollar Cluster
    • IIIb. Lock Down the Labs: Security for AGI
    • IIIc. Super Alignment
    • IIId. The Free World Must Prevail
  • Chap 4. The project
  • 読んだ感想

*1:このチームはリーダーのサツキバー氏の退社後、事実上解散している

続きを読む

スタートアップでソフトウェアエンジニアとして10年たって大事にしていることリスト

今から10年前の2014年4月に、いわゆるIT系大企業のDBエンジニアを辞めてメルカリでソフトウェアエンジニアとして働き始め、そこから紆余曲折を経て10年たった。
当時の予定通り、まだ現役でコードを書いている。海外に拠点は移り、色んな国の人たちと仕事をするようになり、役割もテックリード、マネジャー、CTOと変わってきた。ソフトウェア開発について考え方もさまざまな変遷を経ているが、少しずつ培ってきた、大事にしていることをあげてみる。

ソフトウェア/アーキテクチャ/コード

  • ソフトウェアは他者の価値(i.e. 課題を解決する/コストをカットする)を生み出してなんぼ。コードが綺麗でも売上は立たない。
  • アーキテクチャプログラミング言語のトレンドは変化する。追いかけるよりも、その時々のチームやプロダクトに合った設計やプログラムを選択する。
  • 遊び心は大事。チームやプロダクトにそれほど合ってなくても新しいパラダイムプログラミング言語を試してみる方が楽しい。
  • 抽象化はよくよく設計しないと負債化しやすい。設計に十分な時間がとれるか? 3ヶ月後に読み直して不自由なく使えそうか? 依存するライブラリやフレームワークは大きく変わることはないか? ひとつでもNOならやめておけ。
  • 賢いコード/設計よりもみんながわかりやすいコード/設計。
  • 誰しもスキルセットは異なる。チームへのデザインや原理原則の啓蒙活動は大事。
  • 誰しもスキルセットは異なる(2回目)。自分自身も学び、考えをアップデートする。
  • LOGAF(https://blog.danlew.net/2020/04/15/the-logaf-scale/)ルールを周知する。自分はLintは気にしないが、パフォーマンスと理解しやすさは大切にすると伝える。
  • YAGNIとKISS、次にDRY

行動

  • とにかく手順書や作業メモを残せ。人とのやりとりは議事録を書け。これらはいつも自分や誰かを助ける。
  • ベストプラクティスや世の中の人の知見に頼れ。大体の問題は誰かが取り組んでいる。
  • 盲目的にベストプラクティスや世の中の人の知見に頼るな。頭を使ってどう自分の課題に活かせるか考えろ。
  • エラーは隅々まで読め。
  • 難解なバグは寝るか散歩か風呂に入ってから見直せ。
  • コミュニケーションにコストをかけろ。大体のことは一度で30%も伝わらない。何度でもメッセージを伝える。
  • 大きなことをするには人を巻き込む。人を巻き込むには、誰よりも説明ができる必要がある。何度でもメッセージを伝える。
  • 新しいことにチャレンジするときは素振りをしまくれ。頭と手を動かせ。ハマった数だけうまくいく。
  • 好奇心が原動力。読んだり話を聞いてわかったつもりにならない。手を動かせ。
  • 元気よく返事。

なんか、もっとある気がするけど、ぱっと思いつくくらいだから、これらは骨身に刻まれているんだと思う。さて、次の10年ではどんなアップデートがあるかな...?