このissueを掲げている背景・理由
人事データの活用、プラットフォーム化構想の実現
- SmartHR はプラットフォーム化構想を掲げています。
- SmartHRがプラットフォームとなるためにも、今よりさらに多様なドメイン・従業員規模の企業さまにご利用いただきたい状況です。
- しかしながらSmartHR にはまだまだ不足している機能も多く、拡充が求められています。
人事・労務ドメインのデファクトスタンダードになる
- 人事・労務の業務においてSaaSを利用する企業が増えてきました。
- SmartHR も数名単位〜数十万単位の従業員規模をもつ企業さまが利用するようになっています。
- ユーザーが増え多様化するにつれ、SmartHR に求められる役割は、増加し複雑化しているにも関わらず、ユーザーに求められる機能開発が追いついていない状況です。
大規模スクラム Large-Scale Scrum(LeSS) での開発。もっと高速に、もっと高品質に
- 当 issue を扱うコアアプリケーションチーム( SmartHR の本体)は SmartHR で一番大きいチームです。
- ユーザーに求められる機能開発をスピーディに行うため、コアアプリケーションチームでは大規模スクラム Large-Scale Scrum ( LeSS ) を採用しています。
- 現在は5つのスクラムチームで機能開発を行っていますが、さらなる高速化と品質の向上を目指しています。
関連事例
開発プロセスの事例
Rails エンジニア以外のご入社も増加中
プロジェクト間の交流
このissueの魅力
大規模スクラム Large-Scale Scrum (LeSS) での開発経験
- コアアプリケーションチームの大きな特徴の一つは開発手法です。
- 大規模なプロジェクトを扱いつつ、スモールチームでスピーディに開発を行い、ユーザーに価値を届けることができます。
- 例)リリースはデイリーで行います。
- 例)1チームのエンジニアは4~5名、PdM /デザイナー/ QA / UX ライターと協業して開発しています。
- 例)フロントエンジニアがバックエンドの開発を行う、エンジニアが QA を行うなどクロスファンクショナルな開発を行っています.
ユーザー視点での開発
- SmartHR の開発はユーザーファーストです。
- ユーザーの声を分析し、課題の本質を見抜き、要件に落とし込むことを徹底しています。
- 不明瞭なプロセスで開発アイテムが決まることはありません。
ビジネスサイドを含む他職種との協働
- SmartHR のプロダクト開発には様々な職種の方の協力が欠かせません。
- 例えば、開発の成果物レビューには、サポートや、労務、CS、セールスといった方にもご参加いただいています。
- 全職種一丸でのプロダクト開発を経験できます。
グロースするプロダクト・組織での貢献
- SmartHR は現在、プロダクト・組織ともに成長真っ盛りです!
- 自身がエンジニアリングでその成長の一端を担う実感ができます。
- また、組織規模もどんどん大きくなるので、いろいろなフェーズでの働き方を経験できます。
担ってほしい役割・責任
SmartHR コアアプリケーション開発
- 開発関連: 実装・テストコード追加・レビュー・検証・リリース、などプロダクト開発に必要なことを職能に縛られず横断的に行っていただきます。
- 問い合わせ対応: 仕様確認、不具合調査など
- 仕様検討: PdM・デザイナとの協働、ユーザヒアリングなど
- プロジェクト進行: LeSS(Large-Scale Scrum)をフレームワークとして利用しているため、各種イベントの進行・改善を通してチームとしてプロジェクト進行に取り組んでいただきます。
本issueへの社内メンバーからのオススメ
アウトカムを重視した開発プロセス
エンジニアマネージャー 鈴木 睦央
SmartHR のなかでもコアアプリケーションは一番歴史が長く、大規模で複雑です。既存機能の改修やパフォーマンスチューニング、リファクタリングを行う一方で、増え続けるユーザーにさらなる価値を届けるべく、新規機能の追加開発もガンガン行っています。 なぜ作るのか、どう解決するかをプロダクトづくりに関わる全員が理解し、アウトカムを重視した開発プロセスをとるよう日々改善を繰り返しています。 そのため、特定の権限者の不条理な理由で開発が土壇場でひっくり変える、流れてきたチケットだけをこなす、といったことは当然ありません。
- 大規模ながら機敏で柔軟なプロダクト開発をしたい方
- アウトカムにフォーカスし、実装に限らずプロダクト開発の各領域に広く関わりたい方
- 横断的なエンジニアスキルを身に付けたい / 振るいたい方
そんな方におすすめできる環境です!
いちエンジニアとして地力を高める良い経験
Webアプリケーションエンジニア sugamasao
SmartHR のコアアプリケーションは bi-temporal データモデルを採用しています。 これはデータの履歴を柔軟に取り扱えるように二つの時間の概念を使いデータの履歴を取り扱うデータモデルです。このデータモデルを導入することでユーザーが思った通りの履歴を作成しつつも、システム上の有効時間を表現できます。 これを実現するための bi-temporal データモデルを扱えるようにできる gem も OSS として公開しています(※)。 この gem を使うと簡単に実現できそうなのですが、実際に開発・運用をするとデータモデルの概念自体がなかなか難しく、検討することも多くあります(さまざま事情によりテーブルの統廃合などを検討する必要があり目が回ります)。 ただ、大変ではあるものの、こういったデータモデルを採用しているウェブアプリケーションは「よくあるもの」ではないので、いちエンジニアとして地力を高める良い経験になっていますし、実はこういった経験を求めてSmartHRに入社しました。 「ふつうのウェブアプリケーションを作るのは飽きたなあ」という方でもきっとやりごたえを感じる仕事が待っているはずです!