設計の原点は、
コードが書けなかった日々
ほとんどコードが書けないままチーム開発に飛び込みました。戦力として切り捨てられないために選んだ武器が「設計」です。「何が変わって、何が変わらないか」を先に分ける——責務分離や疎結合という言葉を知る前から、生き残るためにそれを自然とやっていました。設計は、私にとって後付けの知識ではなく原体験です。
RESPONSIBILITY ÷ DEPENDENCY01 PHILOSOPHY
いいゲームには、いいチームが必要。
だから私は、コードもチームも
同じ思想で設計します。
ほとんどコードが書けないままチーム開発に飛び込みました。戦力として切り捨てられないために選んだ武器が「設計」です。「何が変わって、何が変わらないか」を先に分ける——責務分離や疎結合という言葉を知る前から、生き残るためにそれを自然とやっていました。設計は、私にとって後付けの知識ではなく原体験です。
RESPONSIBILITY ÷ DEPENDENCY自分より速くコードを書ける人はたくさんいる。でも、構造を考えられる人は多くない。だから私は、設計でメンバーの強みを最大化します。インターフェースやデータ構造は、隣で開発する仲間と、数週間後に読む未来の自分への「契約」。保守性・拡張性・実装速度のどこに張るかを、企画とメンバーの状況から逆算して決めます。
タスクの責務を分け、メンバー間の依存を減らし、各自が最大速度で走れる状態を作る。チーム運営でやっていることは、コードの設計とまったく同じです。事前に引いた設計がハッカソン終盤の危機を救う——その瞬間が、私にとって何よりの手応えです。だから私は、人にもコードにも同じ思想で向き合います。
OUTPUT × MEMBERS02 QUEST LOG
押しながらスクロールで回る
03 LOADOUT
武器の中心は Unity / C# ──ですが、本当の主武装は「設計」です。 パターンは覚えるものではなく、課題から逆算して選ぶもの。クライアントの外側(サーバー・DB・インフラ)まで自分で組んだ経験が、その判断を裏打ちしています。
MAIN WEAPON
パターンは目的から逆算して選びます。Facade は「お互いの実装を知らずに並行開発できる境界」を引くため(Streamerio)、Strategy は実装が未決の処理を後で差し替えるため(研究アプリ)、MV(R)P+R3 は描画とロジックを分離するため。 設計というマクロの強みに加え、ゆびサッカーでフレームタイム 60ms→16ms のミクロなチューニングにも踏み込みました。
SUB WEAPON
研究プロジェクトで、フロント〜バックエンド〜推薦エンジン〜インフラを一人で設計・構築。クライアントの「外側」を自分の手で組んだ経験が、通信・データ設計の判断を支えています。
04 TROPHIES
05 EXPERIENCE
ライブゲーム「スラポンコロシアム」の機能実装を担当。1年以上運用されている大規模なコードベースを読み解きながら、テスト機能の追加やイベント向けの仕様変更、新キャラクター追加に伴う特別仕様の実装を行いました。
コードレビューを通じて「長く運用されることを前提にした設計」をプロの現場で体感しました。
創設者 / 代表
「プログラマーだけではいいゲームは作れない」と感じ、デザイナーやサウンドクリエイターを学内で集めてゲーム制作団体を設立。
オープンキャンパス出展、他大学IT団体との交流、LT会・勉強会・部内ハッカソンの主催を通じて、人と技術が交わる場を広げ続けています。
フルスタック設計・開発
毎週の進捗報告で企画・仕様・概念設計を深く議論しながら、構造的なソフトウェア設計を学んでいます。
イベント周遊促進アプリを要件定義からアーキテクチャ・推薦エンジン・GCPインフラまで単独設計し、先輩から引き継いだ旧コードの大規模リファクタリング(DB正規化・責務分割・抽象化層の導入)も主導しています。
メンター / 企画
部内ハッカソンのメンター、定期的なLT会やゲーム制作の勉強会の主催、小学生向けプログラミング教室でのサポートとアイデアソン企画、複数大学コラボイベントの運営などを実施。
知らない人・領域と交わる場をつくること自体が、自分にとっての刺激になっています。
── NEXT STAGE
設計でチームを加速させるエンジニアを探しているなら、ぜひ。一緒にいいゲームを作りましょう。