専門学校の講師をすることになったのでこれまでの経歴と開発経験をまとめました。
経歴
学生時代
- 京都の工業高校でC言語を知りプログラムを始める。
- 大阪の専門学校のゲームプログラム学科で3年間プログラムを勉強する
- 学校を卒業後に半年間のニート生活(その間に自作ライブラリ開発等をしていました)
社会人以降
- 大阪のA社に入社(約3年半の間、コンシューマーの開発に携わる)
- 再び半年強のニート生活に戻る
- 専門時代の先輩(Webシステム系)の作った会社に誘われて手伝う(半年間ほどWebシステム開発を行う)
※この時に確定申告の問題でフリーランスになりました。 - フリーランスとしてK社に出向(3年間ほどPCやコンシューマーの開発に携わる)
- 3度目のニート。ロードバイクで四国一周旅等に出る。
起業以降
- 一緒に活動してくれる人が見つかったので会社を設立をする(初期の現在で自分を含めて3名が所属します)
- 法人としてD社に出向(色々な開発に囲まれて作業中)
簡単に書くと経歴はこんな感じです。
やたらとニートが多いですが、その分は社会人時代に働いていると思います。
なので労働時間で言えば一般的な社会人と変わらないと思います(意味は分かりますよね?)
では次に開発経験について書ける範囲で書きます。
タイトルとかその辺りは色々問題になるので伏せます。
開発経験
A社時代
- アーケードのカードゲームの開発に携わる(配属後1ヵ月でプロジェクトがとん挫します)
・開発環境:C++ - 3DSのフライトゲームの開発に参加(約1年)
・開発環境:C++
・2D全般の担当になりますが、初めて使うOpenGLを使って描画周りの実装が必要となりました。
・UIではレーダーやロケーター(3D)等を対応しました。
・他には入力システムやデバッグ用のメモリ管理等を対応しました。 - PS3のアクションゲームの移植を初期から担当(約8ヵ月)
・開発環境:C++、HLSL(PS2からの移植)
・他作品のプログラムを参考にPS3のフレームワーク開発や描画システムの構築から始めました。
・シェーダ―、メモリ管理、ファイル管理、デバッグ機能等のあらゆる実装を行いました。
・構造体からエンディアン変換のコードを生成するツールの作成 - XBOX360でのアドベンチャーゲームの開発(約1年3ヵ月)
・開発環境:UnrealEngine3、ツールにC#
・キネクトでの体感操作の実装
・ゲーム内のギミック実装
・ScaleformでのUI実装とエンジン内部の実装を最適化
・途中でプラットフォームが変わったのでUnrealEngine3のXBOX One移植。 - PS3のアクションゲームのデバッグとDLC対応(約3ヵ月)
・開発環境:UnrealEngine3、ツール作成にC#
・C#のツールを最適化
・ローカライズ対応
・不具合修正
・UnrealEngine3のメモリ最適化(発売しているのにメモリ不足…)
Webシステム開発時代
- 老人法務のサービス全般管理システム
・開発環境:PHP+Laravel4、ツールにC#
・DB設計
・スタッフや顧客の管理システム作成
・リアルタイム顧客状況の表示機能を作成 - 工場の受発注システム
・開発環境:PHP+Laravel4
・DB設計
・在庫管理システム
K社時代
- Steamのアクションゲームの移植(約8ヵ月)
・開発環境:C++、HLSL、ツールにRuby
・Windows向けに描画の最適化
・ネットワーク周りのSteamAPI対応(P2P通信、マッチングシステム)
・ボイスチャットシステムの対応
・プロジェクト管理全般 - Steamのアクションゲームの移植(約6ヵ月)
・開発環境:C++、HLSL(XBOXからの移植)
・Windows未対応の描画処理を実装
・可変解像度等のクオリティ調整機能を実装 - Switchのパーティゲームの移植(約2年)
・開発環境:C++、GLSL、ツールにC#、MayaScript(Wiiからの移植)
・基本システム実装
・描画周り全般の実装と最適化(シェーダ―含む)
・メモリ管理システム実装
・デバッグシステムの実装
・MayaScriptによるモデルコンバートツールの作成
D社時代
- 色々なプロジェクトに挟まれて頑張ってます。
・開発環境:C++、Unity(C#)
開発経験としてはこんな感じです。
今は会社経営や講師等の新しいことに挑戦しながら楽しく過ごしています。
この業界は色々とありますが、やっぱり楽しいから他の職業には中々変われません!