旧LINEから数えてそろそろ働き始めて4年。少し早いが、私生活の変化で仕事に一区切りが付くので、敢えて在職エントリを書いてみることにした。退職エントリではありません。
LINE iOSアプリのビルドシステム刷新と開発者体験の改善をした
2022年7月、前職からモバイルの開発基盤を生業としていて、その流れでさらに大規模でおそらくiOSアプリとしては国内で最大規模のコードベースを持つLINEの開発チームにjoinした。
入社以来、LINEクライアントチームのデベロッパー・エクスペリエンスチーム*1というところで長くやっていくことになる。このチームはLINE iOS/Androidクライアント開発者の開発者体験を向上させることをミッションにしたチームだ。
2022年当時、LINE開発の最大の課題は、iOSアプリのビルドパイプラインの負債化と凶悪なビルド時間だ。継ぎ接ぎ的に導入されたBazelによってメンテナンスコストが増大しており、当時普及期だったApple Siliconへの移行もままならない状態だった。
ぶっちゃけ、今だから言えるがかなりひどい状態だった。追加された独自のBazel Ruleはテストもドキュメントもなくメンテが困難。統合方法も1度のビルドパイプラインで何度もBazel sandboxを起動する必要があるオーバーヘッドが多い設計になっていた。
メインメンテナだったメンバーの離職により、新しい体制のチームが発足したばかりで、これからどう改善していくかも決まっていない状況。そんな中、ちょうど足りないところにすっぽりと入り込めたので、今考えるととても良いタイミングだった。そんな中でBazelの脱却を進めつつ、新しいビルドシステムを構築することになる。誘ってくれた@freddiに感謝。
大きな発明だったのは、ビルドツール、Scipioの開発だ。これは外部依存をApple標準のSwiftPMベースの依存関係リゾルバを使いつつ、ビルド成果物をXCFramework化して再利用できるツールで、もちろん開発者間でのキャッシュの共有も可能。
この方針は当たり、そこそこ標準的なワークフローを導入しつつも、無駄なビルド時間を大幅に削減することができた。ビルドパイプライン全体の速度を数倍改善した上に、Apple Silicon上での開発体験も向上した。
その他、BazelやShell Scriptを中心として場当たり的に構築されたビルドパイプラインを整理して、ツール全体をSwift CLI化したり、標準的なiOSの開発ツールやプロセスを導入していくことができた。
ビルドシステムを中心としたiOS開発者の体験向上の施策はその後も続き、僕だけではなくイカれたメンバー優秀な仲間と一緒にいろいろな施策を試していけるようになった。
ツール群をSwiftで開発するようになったことで、CI上で高度な静的解析や処理の最適化が行えるようになったし、毎年WWDCで発表されるAppleの新機能を即座に試していけるようになった。最終的にはXcode Previewsの普及や、Mergeable Library、Compilation Cacheといった新しいXcode機能の導入なども進んだ。
最近辞めたチームメイトのid:ikesyoの記事も参照のこと。
モバイル領域の外部発信文化を作れた
入社後の思い出と言えば、Developer Relation的な活動に爪痕を残せたことだ。当時のLINEのクライアント組織は、社内の知見交流のコミュニティはいくつかあれど、対外発表には消極的で、あまりカンファレンスへの登壇者を出せていなかった。
入社直後から、何か声がデカい奴が入ってきたぞと認識されていたようで、高名だったShocoさんや941さんにいきなり全社放送に駆り出され、発信を広めてくれと言われたのは光栄だった。
クライアントチーム内でも発信の熱が上がり、iOSDC 2023では20名近くがCfPを出し、多くの採択に至った。以後、合併後もモバイル領域では発信する文化が根付いたと思う。 この辺りは体感として、自分が活動したことで組織全体として外部発信の機運を作れたと自負している。
そんなこともありつつ、わりと早い段階で当時のLINEにおけるスタッフエンジニア相当になった*2。
自分の仕事をアピールするためにメトリクスを設計した
2023年末、周知の通りLINEとYahooの2社が悪魔合体し、クソデカ組織が誕生する。とはいえ、僕が所属する部門はしばらくは合併の影響をあまり受けずに、組織図もネストが深くなっただけでほぼそのまま。
合併後から、裁量労働制の廃止や、賞与制度の変更、そして出社義務化の発表など、細かな福利厚生の廃止・ナーフが建て続けに行われた。現状維持バイアスもあり、当時は反発も必至だったが、3年近く経つとこんなこともあったなあという感想になってきた。これが慣れ。
この時期は、前述の開発基盤の改善は続けつつ、自分の仕事をどうやって評価してもらおうかということを考えていた。開発者体験の改善という業務は成果が見えづらい。ビルドのパフォーマンスチューニングは楽しく、やりがいがあるが、長年続けていくとボリュームゾーンの改善は終わってしまい、効果がサチり気味になる。 負債を掃除していますというだけでは支持を得られづらいし、「コード補完が早くなりました」、「デバッガが快適に使えるようになりました」といった種の改善は成果が説明しづらい。自分たちの仕事を客観的に評価する指標が必要だった。
そんな中、偶然にも、当時のチームメイトの@mntshさんにエンジニアチームの生産性評価について書籍を執筆しないか、というオファーをいただき、それがきっかけで開発者生産性について考えることになった。
結果として、書籍で触れたSPACEという生産性評価フレームワークを使って、LINEクライアント開発者全体の開発生産性を定義したり、自分たちのチームでもビルドメトリクス基盤を整備し、自分たちの仕事の成果をアピールしやすくした。
正直、この辺の話はふわっとしすぎていて、意味のある指標になっているのか未だによくわかっていない。仕事として発信する機も逸してしまった感があるのでここで供養しておく。
そして、AIをやっていく人に
2025年に入ってからは、AIの普及によって開発のパラダイムが破壊的に変わった。いきなりAI驚き屋になったわけではなく、開発者生産性を語る上でAIは無視することはできないものとなり、自然とやりたいことの比重もAI弄りが中心になっていた。
2025年中盤頃まで、会社全体のVibe Coding技術の導入が遅く、大企業あるあるの様々なコンプライアンスに阻まれて導入が進められない状況が進んだ*3。 ようやっと社内でまともに使えるようになったのは2025年の後半。会社の制度設計も進み、今では外部の環境と遜色ないレベルでコーディングエージェントが利用できている。
この頃は新しいツールに熱狂し、Vibe Codingを布教したり、LINEクライアント開発へのAI導入を次々と進めていた。例えば今でいうハーネスエンジニアリング的な概念を取り入れたり。
その他、記事としては出せていないが、前述の生産性分析をAIを使って行うようになったり、CIエラーやビルドログの解析などもAI化できた。
AIの破壊的イノベーションに脳を焼かれ、AI、AIと言い続けていたら、AI人材だと認識されたようで、今年の4月頃からLINEクライアント開発のAI基盤を担当するチームに異動になった。いわゆるハーネスエンジニアリングチームだ。
ビルド基盤の業務からは遠くなったが、開発者生産性を考えていくという軸は大きく変わらず、そこまでやることに変化はない。今はちょうど新しいことを試しているまっただ中だ。
リモートで動くコーディングエージェント基盤、要は簡易なDevin的なものを一から構築しようと試みたり、従来のコードレビューのあり方をAI前提に再考してみたり。直近の取り組みはいつかアウトプットできる機会があれば・・・・・・。
ビッグテックサバイバルガイド
最近は超巨大なエンジニア組織の中でどうやって成果を出してエンジニアグレードを上げていくか、ということを強く考えている。
現状、特段マネジメント職ではない平エンジニアの中ではかなり自由にやらせてもらっていて、恵まれた状況だと思っている。ありがたいことです*4。
その一方で、このままやり続けても評価が頭打ちになるなという危機感を感じ始めている。合併によりクソデカカンパニーが誕生したことで、まさにカオスな独特の力学が発生しており、うまく環境を見極めて動かないと、なかなかこれ以上を望むのは難しい。
こんな感じで大きい会社で強い動きを探して、エンジニアグレードのレベリングをしていくというメタゲームにだんだんとやりがいを見いだしてしまった。
というわけで、ここ最近は旧LINE組織からの越境を意識して動いている。これまでの外部発信は継続しつつ、社内でも全社の全エンジニア向けのワークショップの講師をしたり、All Handsに顔を出したり・・・・・・。
良く見るとIRのスクリーンショットに映り込んでいる 👋
出世競争をしているわけではないけど、ポイントを掴んで、組織内で目立っていくのはなかなかと面白い。例えば先日は経営陣肝いりの新しいAIサービスなどが発表されたし、このようなホットな領域に噛んでいけると成果が出しやすい予感はしている。
出社義務化に思うこと
LINEヤフーというと、何かと出社義務化の話題がセンシティブで槍玉に上がりやすい。せっかく渦中にいるので、その辺のことについても触れたい。
個人的には、意外と物理出社には肯定派。COVID前は何の疑問も持たずに週5出社を継続していたので、そこまで強くオフィス回帰への抵抗はないし、オフィスでわいわいできる日々を結構楽しんでいる。
この話題は、物理出社の意義や、突然の不利益変更など様々なトピックが挙がるが、当事者として一番大きな影響は、出社派とリモート派の分断が広がったことに思う。
極端な話、出社義務化など、あまり実効性がないと思っているので適当に運用しておけばいいじゃん、ぐらいに軽く考えているが、無視すればいいとそう単純な話でもない。 仮にリモートワークが許されたとしても、ほかの同僚のオフィス回帰が進む中、その中で自分だけリモートで働き続けるのは難しい。 そんな状況で、出社中心の働き方に合わない人が去っていってしまうのは残念だが仕方ないことだなと思う。
前職では、経営陣がいきなりクーデターで転覆したり、横浜への移転を強行したりというイベントを目の当たりにしているので、エグゼクティブが何かやりだすのは、まあどこもこんなもんだろうと思っていて、経営陣のムーブについても特にあまり強い感情がない。経営と合わなかったら、状況を変えるよりただ黙って去る方が楽だとは思う。
今のところは週3出社による影響はそんなに出ていないけど、今後のライフステージの変化でスタンスが変わる可能性もある。まあその時は転職を考えるときという事で・・・・・・。
やっていくぞ!
というわけでネガティブな話題が多い昨今ではありますが、楽しく元気にやっていますということを今のうちに書いておくことにした。そしてまだやりたいことやモチベーションもあるので、まだしばらくは在籍している気がしている。
さて、今回筆を執ることにしたのは、この度しばしの育休*5というものに入ることになったため。変化の激しい昨今、特にAI基盤の整備でやることが盛りだくさんの中、仕事ができなくなるのは正直手痛いと感じているけど、長い人生でちょっとぐらいは仕事から離れる機会も良いかなとも思って休むことにしてみた。AIにギュラれて復帰後に席がなくなってないと良いけど・・・・・・。











