ArkEdge Space Blog

株式会社アークエッジ・スペースの技術要素多めのブログ

宇宙業界にソフトウェアの力で挑むチームができてから1年が経ちました

こんにちは. 株式会社アークエッジ・スペースのソフトウェア・基盤システム部(以下,ソフトウェア部)を統括している鈴本 (@_meltingrabbit) です. 我々ソフトウェア部は,人工衛星そのものに搭載されるソフトウェアはもちろんのこと,衛星の運用・開発を支援する地上ソフトウェアや果ては社内システムまで,ソフトウェアっぽいものをまるっと担っている部です. 早いもので,そのソフトウェア部もチームの体裁を成してから 1 年経ったようです. この節目のタイミングに,弊社のソフトウェア部の様子が垣間見えるような振り返りをしてみたいと思います.

Iteration 52

アークエッジ・スペースでは,全社のタスクを GitHub の Issue で管理しています. そしておよそ 1 年前から,我が ソフトウェア部はそれら Issue をリポジトリを横断して管理するため,GitHub Projects V2(当時は Projects Beta)を活用してきました.

ソフトウェア部 Project

ソフトウェア部では毎週水曜日にイテレーションミーティング(いわゆる 部定例)を開催しているため,Project の Iteration を 1 週間に設定しています. つまり,ToDo リストを 1 週間ごとに紐づけ,いつ何をやるかのスケジューリングや進捗管理をしています.

そのような中,先日,
「お? そろそろ Iteration が 52 を迎えるな? そうか,このイテレーションミーティングも,はじめてから 1 年経つのか!!」
ということに気がついたわけです. その Iteration 52 とは, 11/09 ~ 11/15 でした. 振り返ってみると,そのちょうど 1 年前,2021/11/09 が, ソフトウェア部の Project の元期だったのです.

初期の Iteration

鋭い方は,上のスクリーンショットを見て,
「あれ? Project 名が "software dept" などではなく, "PJ OBC" なのはなぜだろう?」
とお思いかも知れません. これは歴史的経緯で,当初我々のチームは "ソフトウェアチーム" ではなく,"次世代の OBC (On-board Computer,つまり人工衛星搭載コンピュータ) を開発するチーム" でした. それが事実上,全社のソフトウェアやインフラを見るようになり,今年の 4 月には正式にソフトウェア部となり,そして今に至るのです.

1 年前を振り返って

この 1 年間で 1511 個の Issue が close されたようです. それだけ 1 年間で物事は進んだということです.

1 年前を振り返ると,インフラというインフラは何もなかったです(詳細は 『なぜ人工衛星開発スタートアップで元ウェブ系エンジニアが快適に働けているのか』を参照). かろうじて AWS のアカウントはありましたが,何も動いていませんでした. 今では,様々な社内ツールや,衛星運用ソフトウェア,衛星を試験するための基盤システムなどが動いています. それに加えてなんと, 仮想的な人工衛星AWS 上を飛んでいます . 組み込み用として書かれているはずの衛星搭載フライトソフトウェアが常に AWS 上で動作していることで,例えば地上システムを開発したいときには,その AWS 上の仮想的な衛星と接続してテストできるわけです.

そして懐かしいのは,1 年前は GitLab を使っていたということです. このタイミングで一気に GitHub 移行が進みました. そして GitHub 上の Issue をいい感じに Projects に紐づける社内ツールや,GitHub と Slack をシームレスにつなげるための社内ツールなどの整備も,このときに急速に進みました(詳細は『人工衛星開発スタートアップのGitHubとの付き合い方』を参照).

合同会社 Space Cubics さんと出会ったのも,1 年と少し前です. この会社と出会えたことで,"宇宙で動くミッションクリティカルなシステムは Rust で開発する" という我々の夢を実現するための OBC の目処が付き,今の我々があります.

OBC(衛星搭載コンピュータ)で Rust で Hello World! する様子.奥に見える基板が OBC 実物.

我々は現在,5 機以上の人工衛星(詳細は弊社プレスを参照)を同時に開発しています. 一品物の人工衛星をたった 1 機開発するのも大変ですが,我々はニーズに合わせた多様多種な衛星を短期間で同時に開発できる体制を急ピッチで整えようとしています. そのために,ソフトウェア側でとれるアプローチはたくさんあり,今までハードウェア側で担っていたので複雑化していたものや,人間が頑張っていたために労力が必要だったものを,いかにソフトウェアで巻き取って省力化できないかを考え続けています. 例えば,衛星試験のログを自動的に記録,収集できるようにしたり,様々なコンフィグレーションをソフトウェアで管理できるようにしてみたり,不具合解析が容易になるような基盤を整えたりです. この 1 年でもっとも開発が進んだものは,この衛星開発支援のための基盤システムかも知れません.

記念のお祝い会

柳田 (@yanagidanta) と鈴本の 2 人から始まった ソフトウェア部(先述の通り,当時は部でもなかったです.)は,昨年の 9 月頃に id:sksatid:koba789 を迎え,そして今日ではインターン生も含めると 9 人体制となりました. 新しい顔も増えた中で,親睦を深め,そして過去の歩みを振り返るためにも, Iteration 52 祝い会を開催しました.

本当は,ちょうど Iteration 52 の締めとなるイテレーションミーティングがある 11/16 に実施することを予定していたのですが,なんと誰も打ち上がるとは思ってもいなかった NASA の次世代大型ロケット SLS (Space Launch Sysytem) 1 号機が打ち上がってしまい,一部の人がそれどころではなくなってしまった*1ため,12月上旬の実施となりました.

下のスクリーンショットは,「せっかくだからなんかしようか」と立てた Issue です. 1 ヶ月以上放置されていたため,stale bot が発動しているのが趣深いですね. 弊社の GitHub は開始からまだ 1 年ちょっとしか経っていませんが,今ではいろいろな bot が飼われるまでに成長しました.

Iteration 52 祝い の Issue

下の写真は,そのお祝い会で過去の Issue を掘り起こして晒している図です. ここでは「GitHub移行: 11月26日便 乗り合い募集スレ」という Issue を晒していますね. これは,GitLab から GitHub に移行するときには週次で移行バッチを走らせていたのですが,その週に移行するリポジトリを募集するための Issue です(詳細は 過去の tech blog を参照).

Iteration 52 祝いの席で過去の Issue を晒す筆者

おわりに

このような様子で,アークエッジ・スペースのソフトウェア部は 2 年目に突入しています. 1 年前には想像もできなかった成果や成長がある一方で,まだまだやるべきことや課題は山積してます.

我々がさらに大きなことを成すためには皆さんのお力が必要です. 「自分のスキルが宇宙業界で活かせるかわからない」や「自分が宇宙業界で働いてるイメージがつかない」などと思われる方も多いとは思います. でも,見方を変えてみると, 人工衛星なんてものは,「ただの(センサーとアクチュエータのついた)サーバーが宇宙空間に浮かんでいるだけ」 *2です. そして,人工衛星を支援する地上システムの要素技術は,普通の情報インフラと変わりません*3. 扱うサーバー群の中に,なんかめっちゃ遠くの通信もしづらく,電力も大変で,手の届かないという曲者サーバーが混ざっているだけです.

日本の宇宙業界のソフトウェア周辺事情は,IT 系のそれと比べて,何周回も遅れていると認識しています. そのなかで,我々アークエッジ・スペースは,「日本で一番ソフトウェアに注力し,日本で一番ソフトウェア思考で課題解決を試みている宇宙企業」と自負しています. そのようなチームで,あなたのそのスキルを活かし,宇宙業界を変えていくのは,きっと刺激的だと思いますよ.

この記事をお読みいただき,弊社で働くことに興味を持っていただけた方は,採用ページをご覧いただければ幸いです. また,ぜひ twitter などで気軽にメッセージをください.まずは雑談しましょう.

あなたも,ソフトウェアの力で宇宙業界に変革を起こしてみたくないですか?

採用ページ: https://herp.careers/v1/arkedgespace

*1:SLS に搭載されていた EQUULEUS という深宇宙探査機の開発に,共同創業者の多くが関わっていた

*2:熱や構造,電気的な観点からだともちろん全然異なりますが,ソフトウェア的な観点からという意味で

*3:いくつか普通の情報インフラとは異なる特殊な要求があったりはします