こんにちは!
IT 24/7 Solutions GmbHでソフトウェアエンジニアをしている、ノアと申します。アイデアの閃きから完成に至るまで、ゲームやツール、カスタムエンジンの開発に深い情熱を注いでいます。2015年にプログラミングを始めて以来、常に新しい技術を探求し、スキルを磨き続けることを原動力としてきました。
ドイツと日本での就業経験を通じて、ソフトウェア開発におけるコミュニケーションの重要性を強く認識しています。プロジェクトを成功に導くため、チームワークを最優先に考え、明確で効率的な連携を心がけています。
技術面でも人間的な面でも成長できるよう、常に新しい挑戦を求めています。開発から離れた時間には、日本語の学習やゲーム、ローラーブレードを楽しんでいます。
スキル
💻 主要言語と基盤技術
- C# エキスパートレベル。.NETエコシステムとUnityのスクリプティングで使用。
- C++ 中上級レベル。エンジンアーキテクチャ、マルチスレッド処理、DirectX 11。
- Java バックエンドサービス、API連携。
- SQL 複雑なクエリ、MySQL、データウェアハウス(Microsoft Fabric)。
🎮 ゲーム開発とグラフィックス
- エンジンUnity(上級)、Unreal Engine(C++ & Blueprints)、Godot、MonoGame、LibGDX。
- グラフィックス・低レイヤー DirectX 11、HLSL、カスタムレンダーパイプライン、VR/XR統合(SteamVR)。
- ツール FMOD Studio(オーディオミドルウェア)、Tracy Profiler(パフォーマンス最適化)。
☁️ Web・エンタープライズアーキテクチャ
- フレームワーク ASP.NET Core, Blazor (Server & WASM).
- アーキテクチャ マイクロサービス、イベント駆動型アーキテクチャ(RabbitMQ)、REST API。
- クラウド・データAzure Dynamics 365、Microsoft Fabric、データウェアハウス。
- DevOps Docker、Linuxサーバー管理、CI/CDパイプライン。
🤝 コラボレーションとリーダーシップ
- 開発手法 アジャイル、スクラム、部門間(クロスファンクショナル)のコミュニケーション。
- ツール Jira、Trello、Git、UMLモデリング。
- ソフトスキル ジュニアエンジニアのメンタリング、クリエイティブチームと技術チームの橋渡し、技術ドキュメント作成。
- 語学ドイツ語(ネイティブ)、英語(ネイティブレベル)、日本語(N2/ビジネスレベル)。
職歴
IT 24/7 Solutions GmbH/ ES·FOR·IN SE
- ソフトウェアエンジニア
- 2024年1月 - 現在
- ドイツ
ESFORIN(Energy Services for Industry)は、電力やガスの柔軟な短期自動取引を専門とするデジタルエネルギーサービスプロバイダーです。産業企業や再生可能エネルギー生産者のコスト最適化、収益創出、CO2排出量削減を支援しています。
- アーキテクチャ構築: 時系列データの管理とアーカイブ化のため、RabbitMQベースのイベント駆動型システムを設計。
- 開発: Blazorとマイクロサービスバックエンドを用いたフルスタックWebアプリケーションを開発。
- データ基盤: 高度なビジネス分析を促進するため、Microsoft Fabricのデータウェアハウスを導入。
- Dynamics 365: 要件定義から最終的なデプロイまで、Azure Dynamicsを用いたカスタムCRMソリューションを構築。
- 戦略: 専門エンジニアリングチームの一員として、主要なインフラ基準や技術的ガイドラインを策定。
Löwen Entertainment GmbH
- ソフトウェアエンジニア
- 2022年6月 - 2023年12月
- ドイツ
Löwen Entertainment GmbHは、スロットマシンやエレクトロニックダーツなどのゲーム機やアミューズメント機器を開発、製造、販売するドイツのメーカーです。
- ゲームエンジン開発: 業界をリードするスロットマシン向けに、独自のC++ゲームエンジンの開発および保守を担当。
- パフォーマンスと並行処理: マルチスレッド化のためにエンジンのコアコンポーネントを再設計。Tracy Profilerを活用してメモリリークやパフォーマンスのボトルネックを解消。
- リードとしての責務: メインのエンジン開発者として、親会社や社内マネジメント層との技術的なコミュニケーションを管理。
- ツール開発とワークフロー: ゲームデザイナー向けのワークフローを効率化するためエンジンツールを最適化し、生産性を大幅に向上。
- メンターシップ: ジュニア開発者を指導・育成し、一人前のエンジン開発者へと成長するようサポート。
96 Problems Co.
- テクニカル広告マネージャー 兼 ジュニアデータエンジニア
- 2018年10月 - 2019年4月
- 日本
96 Problems Co.は、SNSプラットフォームやデジタルツールを活用した東京発のインタラクティブ・ストーリーテリング・スタートアップです。ファンの参加を共同制作の物語世界へと昇華させ、公式のストーリーラインに沿ってユーザーがキャラクターや世界観を共に創り上げることができます。
- バックエンドインフラ: Twitter APIのリアルタイムイベントを取り込むJavaサービスを開発。LinuxサーバーのホスティングやMySQLデータベースのアーキテクチャ管理も担当。
- 分析ツール: ツイートのパフォーマンスを分析するカスタムレポートツールを開発。ライターがデータに基づいてエンゲージメント戦略を最適化できるように支援。
- キャンペーン管理: トラフィックの多いアカウント(@CRC_Luna、@eddieedededなど)のTwitter広告キャンペーンを運用し、オーディエンスの拡大を牽引。
- プロダクトデザイン: ブランドキャラクターのグッズ展開を見据え、アナログのカードゲームをデザインしてプロトタイプを制作。
個人プロジェクト ピックアップ
Virtupad
- チーム規模: 2名
- 役割: 開発全般
- 開発年: 2022年
- 期間: 9ヶ月
VTuberがVR空間で3D動画やライブ配信を作成するためのツール。学士論文のために制作したプロジェクトです。
最大の挑戦: 初めてのVRプロジェクトであり、インバースキネマティクス(逆運動学)の経験が全くなかったこと。
- 設計、コーディング、およびプラグインの統合を担当。
- ユーザーのVRヘッドセット、コントローラー、および最大3つのトラッキングポイントに基づき、インバースキネマティクスを用いたアバターのプロシージャルアニメーションを実装。
- VR向けのインタラクションおよびUIシステムを作成。
- 本ソフトウェアを使用して動画を制作し、100名を対象としたアンケートで全体的に高評価を獲得。
Rhygine
- チーム規模: 1名
- 役割: 個人開発
- 開発年: 2020年
- 期間: 8ヶ月
DirectX 11を使用した自作のC++ゲームエンジン。
最大の挑戦: レンダリングパイプラインの経験がなく、初めての本格的なC++プロジェクトであったこと。
- コンパイル処理およびエンジンの一部をモジュール化するためにCMakeを使用。
- ウィンドウの作成とレンダリングにはWin32 APIとDirectX 11を利用。
- エンティティ・コンポーネント・システム(ECS)、2Dスプライト・3Dモデルのレンダリングシステム、およびUI管理システムを実装。
- 3Dモデルのインポート機能や物理エンジンといった追加機能は、サードパーティ製ライブラリを活用して実装。
Akagi
- チーム規模: 1名
- 役割: 個人開発
- 開発年: 2025年
- 期間: 1年
カスタマイズ可能な性格と動的な記憶(アクティブメモリ)を持つAIチャットボットを作成・ホスティングするためのフレームワーク。
最大の挑戦: LLM(大規模言語モデル)にアプリケーション内部のメソッドを決定論的(確実)に実行させること。
- ノードベースのデスクトップエディタ、ヘッドレスのバックエンドサーバー、Blazorウェブインターフェースの3つからなるエコシステムを構築。
- コンテキスト注入を管理するビジュアルスクリプティングシステムを設計し、ボットが会話を要約して自動的に内部記憶を更新できるようにした。
- OpenRouterを統合して任意のLLMをサポートし、TelegramおよびWebページ経由のチャットインターフェースを実装。
Willow Tree
- チーム規模: 10名
- 役割: リードデベロッパー
- 開発年: 2021年
- 期間: 6ヶ月
古い廃墟となった孤児院の過去を解き明かすためにパズルを解き進めるパズルアドベンチャーゲーム。
最大の挑戦: 開発メンバー全員がUnreal Engineでの開発経験を持っていなかったこと。
- デザイン、プログラミング、サウンドの各部門間のコミュニケーションを管理。
- コードインフラを担当し、ゲームフローやイベントをノードベースのエディタで再構築できるツールを開発。
- NPCの幽霊「クリスタ」、セーブ・ロード機能、UI全般(ウィジェット、メニュー)、アニメーションとコントローラー、音響・音楽関連のすべての実装を追加で担当。
- Gitサーバーの保守を行い、マージコンフリクトなどの問題発生時に解決策を提供。
- チームメンバーがUnreal Engine、Git、またはスケジューリングに関して抱えていた一般的な問題の解決策を分析し、ドキュメント化。
Run and Gun
- チーム規模: 2名
- 役割: デベロッパー
- 開発年: 2021年
- 期間: 12ヶ月
モジュール性を重視した、2Dマルチプレイヤーのローグライク・ダンジョン探索ゲーム。
最大の挑戦: Unityでの初めてのマルチプレイヤープロジェクトであったこと。
- インフラ、ネットコード、基本的なAIシステム、およびサウンドを担当。
- 弾を発射するパイプラインとして機能する武器システムを作成。パイプラインのあらゆる要素を入れ替え可能にし、非常にモジュール性が高くカスタマイズ可能な武器を実現。
- カスタムアセットにおけるマージコンフリクトを軽減し、ワークフローを最適化するための小規模なエンジン内ツールを実装。
ビヘイビアツリー エディタ (Behaviour Tree Editor)
- チーム規模: 1名
- 役割: 個人開発
- 開発年: 2020年
- 期間: 3ヶ月
複雑な振る舞いをノードを通じてモデリングできる、Unity向けのカスタムエディタ。
最大の挑戦: Unityのカスタムエディタ作成の経験が全くなかったこと。
- コード経由で新しいノードを追加するメソッドを実装し、Unityが再コンパイルした際にビヘイビアツリーエディタが自動的に検出できるようにした。
- ビヘイビアツリーオブジェクトはScriptableObjectを通じてシリアライズされ、任意の数のゲームオブジェクトにアサイン可能。
- プレイ中、エディタは読み取り専用モードに切り替わり、任意のゲームオブジェクトの状態を観察しながら、デバッグ用のブレークポイントを設定できるようにした。
MonoNet
- チーム規模: 3名
- 役割: リードデベロッパー
- 開発年: 2020年
- 期間: 6ヶ月
ゲーム開発フレームワーク「MonoGame」向けにゼロから構築したカスタムネットワーキングソリューションと、小規模なテストゲーム。
最大の挑戦: MonoGameおよびUDP通信の経験がなかったこと。
- 初期ネットワークのコンセプト設計および実装の大部分を担当。
- ゲームオブジェクト管理のためのECS(エンティティ・コンポーネント・システム)を実装し、「Tiled」で作成されたマップのインポートおよびレンダリング機能を実装。
- 他の開発者へタスクを割り当て、問題が発生した際のサポートを行うなど、プロジェクトのマネジメントを担当。
ほとんどのアイコンはGame-icons.netからのものです。