職種
シニアソフトウェアエンジニア(C++)
職務内容
Monadプラットフォームの中核インフラ開発をリードする経験豊富なソフトウェアエンジニアを募集します。この役割では、複雑な計算を実行する基盤となる高性能なマルチスレッド・スタックベース仮想マシン(VM)の設計と実装を行います。また、ビザンチン障害耐性(BFT)メカニズムによる分散システムの構築に貢献し、分散環境における堅牢性を確保します。さらに、プロファイリングや設計評価を通じてシステム性能を最適化しながら、開発者がプラットフォーム上で高度なプログラムを作成できるVM機能を開発します。開発者ツールの改善やシステム効率向上のため、他部門との協力が不可欠です。
主な職務
- スケーラブルで安全な実行環境をサポートするため、高性能なマルチスレッド・スタックベースVMと付随コンポーネント(ストレージ、RPC)の設計・開発
- ビザンチン障害耐性コンセンサスメカニズムを活用した分散システム設計により、耐障害性、データ一貫性、ノード間シームレス同期を確保
- 開発者がMonadプラットフォームを活用して高度な高性能アプリケーションを構築できるVM機能の実装
- ボトルネック特定のための性能プロファイリング実施と、計算フロー・システム効率最適化のための設計評価
- デバッグツール(GDB、perf)、コンパイラツールチェーン(Clang、LLVM)、システムユーティリティ(Unix)を含む開発者ツール改善のためのエンジニアリングチームとの協業
- コードレビューへの参加、ドキュメンテーションの維持、ソフトウェア開発とシステム設計におけるベストプラクティスの遵守
- VMアーキテクチャと分散システムの革新を推進するため、業界動向と新興技術の把握
- gdbやperfなどの高度なツールを使用した複雑なシステムのデバッグ・最適化により、高負荷シナリオ下での信頼性と性能を確保
- ステークホルダーと緊密に連携し、プラットフォームの長期的ビジョンに沿った要件定義とソリューション提供
- C++、Rust、Unixベースシステムを含む技術スタックの継続的改善への貢献によるシステム機能強化
応募要件
- システムレベルプログラミングと性能重視アプリケーションにおけるC++とRustの高度な習熟度
- スタックベース実行モデルやマルチスレッドパラダイムを含む仮想マシンアーキテクチャの深い理解
- 耐障害性と同期のためのコンセンサスアルゴリズム(BFT等)実装経験を含む分散システム設計の実績
- プロファイリングツール(perf、gdb)や計算ボトルネック分析を含む性能最適化技術の強固な背景
- UnixベースOS、シェルスクリプティング、システムレベルのデバッグ・トラブルシューティングの専門知識
- コンパイラツールチェーン(Clang、LLVM)と開発ワークフローへの統合に関する実務経験
- スケーラブルで安全かつ効率的なソフトウェアソリューションを設計する優れた問題解決能力
- バージョン管理システム(Git)と協調開発プラクティスの習熟度
- 高品質なコードとドキュメンテーションを提供するための自立作業とチーム連携能力
- 他部門との協力とステークホルダーへの技術的解決策提示のための強いコミュニケーションスキル
- 歓迎スキル:ブロックチェーンまたは分散台帳技術の経験、開発者ツールエコシステムへの親和性
- 必須条件:高性能システムと分散アーキテクチャに焦点を当てた5年以上のプロフェッショナルソフトウェア開発経験