Tech Racho エンジニアの「?」を「!」に。
  • プレス・実績・お知らせ

BPS開発チームの紹介~アプリチーム~(2022年度)

「夏のTechrachoフェア2022」ということで、 チームの近況を交えつつアプリチーム の紹介をさせていただければと思います。

どんな仕事している?

アプリチームでは、自社製品である電子書籍ビューア、デジタル教科書ビューア、およびそれに関連するアプリ、システムの開発を主な業務としています。

電子書籍ビューア:『超縦書』『超画像』
デジタル教科書ビューア:『超教科書』および『超教科書クラウド』

Windows/Mac/Android/iOS/Webブラウザ が主な対象環境になっており、特にWebブラウザ向けでは、画面遷移を伴わない、いわゆる「シングルページWebアプリケーション」として開発しています。
これらのビューア製品の自社開発の他に、ビューア製品をコアとしたアプリの受託開発、たまにビューア製品とは関係ない受託開発も実施しているという感じです。

ここ最近の動き

電子書籍ビューア関連について、ここ最近は大きくわけて2つの特徴的なものがありました。

まず1つ目としては、「縦連続スクロール」で読むコミック作品に対応するためのシステム/ビューア更新の作業を複数行ったということです。これは、主にスマホにて、縦に長く繋がったレイアウトで読むコミックで、いわゆる「webtoon」と呼ばれるタイプのコンテンツです。

4年ほど前、とある電子書籍サービスさんから依頼を受けて、特にWebブラウザ上で動く『超画像』での「縦連続スクロール」コンテンツ閲覧機能の実装とEPUB形式でのコンテンツファイル試作をさせていただきました。ただ、そのタイミングでは一時的、かつ限定的なサービス実施にとどまった感じでした。

その後、KADOKAWAさんがこの「縦連続スクロール」で読むコミックについて、EPUB制作仕様を2021年8月頃に策定、公開しました。これが既存形態のコミックのみを扱った電子書籍サービスでも「縦連続スクロール」コミックの取り扱いにつながったのかなと思います。各サービサーの方からのご依頼を受け、DRMサーバ、ビューア両面での対応を進め、サービスへの導入をさせていただくこととなりました。

2つ目は、電子書籍ビューアについて、電子書籍サービスを実施するお客様だけでなく、資料の配布、閲覧をWebブラウザ上で行いたいという小規模な導入を想定するお客様からのお問合せが増えているというところです。こちらについては、現在ですとやはり導入先様向けに専用のDRMサーバを立ち上げ、『超画像』ブラウザ等、ビューア製品をSDK提供させていただいた上でシステムを構築していただく必要があるのですが、小規模かつある意味気軽にご利用いただけるようにするために、新しい仕組みを作ろうと検討中です。

デジタル教科書ビューア関連についてですが、こちらについては『超教科書クラウド』の立ち上げ後、学習履歴データ(教科書への書き込み等のデータ)のクラウド保存など、ビューア機能、サービス機能の追加拡充をおこなっている状況です。
その中で、2022年度では久しぶりにEDIXにて展示を行わせていただきました。

コロナ禍の中、どれほどの人にご来場いただけるか非常に読めないところではありましたが、想定以上の多くの皆様にご来場いただきました。ありがとうございます。ご来場いただいた方々からのご質問への対応をさせていただくとともに、どのような動作や機能が望まれているのか、どのような形態でのサービス提供が望ましいのかについて様々なご意見をいただきました。今後の製品開発に活かしていきたいと考えております。

また、文部科学省によるデジタル教科書導入実証実験は2年度目を迎えており、前年度での導入時の利用状況を踏まえ、ビューア機能の共通化や、ライセンス配布、割り当て方式の柔軟化、簡易化など様々な議論が行われています。
最近は、教科書出版社さまとともに、そのような議論の場にも適宜出席させていただいております。

チームの特徴・体制

チームメンバーはそれぞれ異なった得意分野をメインのスキルとして持っています。

  • Windows/Macアプリを C++ でガリガリ開発するのが得意な人
  • iOSアプリ(Objective-C, Swift)が得意な人
  • Androidアプリ(Java, Kotlin)が得意な人
  • iOS/Androidアプリをまとめて作れるFlutterをずっと追いかけてきた人
  • HTML + CSS + TypeScript & JavaScriptが得意な人

などなど
さらには、UIを作り込んでゆくレイヤが得意な人、SDKとしてコアな処理を固めていくのが得意な人などなどの違いもあり、全く同じタイプの人はいないと言ってもいいくらいです。
これら、実装寄りの開発スキルを持つメンバに加えて、開発の進行、取りまとめ側をメインスキルとする人たちもいます。

  • 開発管理全般が得意な人
  • 開発要件、仕様の整理が得意な人
  • 品質管理、テストが得意な人
  • ドキュメンテーションが得意な人

などなど
アプリチームでは、開発対象の製品、案件毎に、メンバーそれぞれの得意分野を持ち寄る形でプロジェクトを担当します。一緒に担当するメンバから他領域のフィードバックを得られたりと良い刺激があります。

開発においてよくあること

開発においては、完全に0から全てのコードを書くことは稀です。OSSのライブラリを利用することはもちろんですし、大きいものになるとChromium (GoogleのWebブラウザChromeのOSS版) を読み解きつつ、必要な改造を加えるというものもあります。
そうなると、当然ながら微妙に必要性とズレた機能となっていることや、バグを発見してしまうこともあります。
そのようなときには

  • 自分たちで直す、改造する。
  • 当該OSSプロジェクトのバグ管理システムにバグ報告をして、修正要望の調整をする。

ということも行います。Chromeや、Safariについて不可解な挙動に悩まされることも度々あり、必要に応じでバグ報告を行ったりもしています。
OSSを使うにあたって、ただあるものをあるがままに使うというのではなく、このような対応を行っていくことに「慣れている」「物怖じしない」人は活躍できている状況があります。

その一歩前の段階である、普通に利用する場合においても、ドキュメントされていない部分の挙動などを実験的に試したり、ソースコードを読んで確認したりということをよく行っています。

これからの見通し

教育のデジタル化、クラウド化に関連する形で、「ビューアをSDKとして製品提供し、開発者の方に使ってもらう」という仕事から、段々とサービスプラットフォーム を運用していくという仕事にシフトしていく流れは続いています。

このサービスプラットフォーム化について、今までは超教科書ビューア、および超教科書クラウドが主体だったのですが、電子書籍ビューア側についても何らかの形で推し進められないかと考えています。

また、アプリチームは徐々に人が増えてきており、チームリーダー1人ではメンバの様子を細かく見きれていないことも起きている心配があります。そのため、まずサブチーム、やがては独立チーム として運営できるようなある程度の分割もしなきゃいけないのではないかと考えています。その営みの中で、チームリーダーをできる人を育てる and/or 採用することができたらなと思います。

さらには、「あたりまえ をつくる」という会社としてのビジョンを受けて、「アプリチームではこういうふうに、ソフトウエア、システムを開発する」といった、ポリシー、文化みたいなものを醸成する、そして文章化するみたいなことができたらいいなと思うのですが、こちらはまだちょっとフワッとしすぎてる段階ですね。

おわりに

ごく簡単ではありますが、アプリチームの近況、および仕事・開発の現状についてまとめさせていただきました。
超絶スキルを持つ開発者は、もちろんチームの開発戦力としてすごく大きな位置を占めるのですが、それだけでは仕事が回っていかないという状況は相変わらずです。
最初はドキュメンテーション、テストを担当しながら、徐々に開発を学んでいくことを目指す方、開発への1ステップとしてではなく、コアスキルとして品質管理、テストを極めたい方、実装スキルには自信はないが、情報の整理、方式の検討、ステークホルダー向けの説明・プレゼンテーションに自信のある方にも、活躍していただける場所があると考えています。

本記事でもし興味を持っていただけましたら、採用へのご応募をご検討ください。



CONTACT

TechRachoでは、パートナーシップをご検討いただける方からの
ご連絡をお待ちしております。ぜひお気軽にご意見・ご相談ください。