「SmartHR基本機能」の溜まっていく技術課題への取り組み/株式会社SmartHR プロダクトエンジニア 佐藤元紀氏
最初に登壇したのは、株式会社SmartHRの佐藤元紀氏だ。同社が提供する「SmartHR」は、労務管理クラウド4年連続シェアNo.1のクラウド人事労務ソフト。人事・労務の業務効率化のみならず、働くすべての人の生産性向上を支えるプロダクトである。
具体的な機能としては「労務管理」「人事データベース」「人材マネジメント」などのカテゴリーがあり、本セッションのテーマとなったのは「労務管理」と「人事データベース」だ。これらの機能は、全職種を合わせて約50名が6チームに分かれて開発を進めている。
「SmartHR」はモノリシックなRuby on Railsアプリケーションだ。これまで長きにわたり開発が行われてきたため、全体的なソースコードの量は相当に多い。登壇時点でrails statsによって確認した統計情報では、ファイルの行数が合計で64万行ほどというから膨大だ。
また、「SmartHR」に関する環境の変化として、サービス開始の2015年11月から2022年11月の登壇時点までで、登録企業数が5万社以上も増えていることが挙げられる。平均して、1年あたり7,000社以上のペースで増加している状況だ。また一社あたりの規模としても、2018年5月時点では1,000人以上の企業の割合が2割未満だったが、2021年5月時点では4割以上。特に5,000人以上の企業の利用が増えている。
プロダクトの成長や環境の変化に伴い、さまざまな課題が「SmartHR」では起きるようになった。例えば、サーバー負荷の上昇やそれに伴うパフォーマンスの劣化だ。これは、サービス全体としてのデータ量の増加や、過去に蓄積された技術的負債などが原因で引き起こされた課題である。
SmartHR社では各種の機能開発を進めつつ、前述のような非機能要件の課題を解決するために、開発組織の運用体制を柔軟に変化させ続けてきた。本セッションではその歴史について語られた。