ブックマーク / tech.smarthr.jp (5)

  • SmartHRのマルチアプリケーションに分散した従業員データを集約する - SmartHR Tech Blog

    こんにちは、プログラマーのkinoppydです。最近はSmartHR内でのプロダクトを横断して開発を行うプロダクト基盤チームというところで仕事をしています。 tech.smarthr.jp GraphQL集めるマンの概念図 分散したプロダクトの課題 SmartHRは、祖業である労務管理と従業員情報を集約している「基機能」と呼ばれる巨大なアプリケーションと、その「基機能」にある従業員情報を使い文書配布、年末調整、タレントマネジメントなどを行う小さなアプリケーション群によってサービスが提供されています。各アプリケーションは完全に独立したリポジトリとデータベースを持っており、「基機能」とのデータのやり取りには公開・非公開のREST APIを利用しています。 SmartHRのプロダクト間の構成概略図 APIで繋がれた基機能とサービスの世界観には、一つ問題点があります。それは、複数のサービス

    SmartHRのマルチアプリケーションに分散した従業員データを集約する - SmartHR Tech Blog
    umai_bow
    umai_bow 2024/04/23
  • Railsのモデル名をすべて変更した話 - SmartHR Tech Blog

    SmartHRでは開発にRuby on Railsを広く採用しています。 今日は負債解消のために、開発しているサービスでRailsのモデル名をすべて変更した話を紹介します。 既存のモデル構造のつらみ 私達が開発しているサービスでは、モデルの親子構造が分かりやすいということで、モデルをネストした構造にしていました。 例えば、 User に紐づくプロフィール画像 User::ProfileImage は、 app/models/user/profile_image.rb に配置する具合です。 パッと見の構造が分かりやすいのですが、時が経つにつれて次のようなつらさが顕在化してきました。 Railsの規約(推奨ルールのようなもの)に則っていないので、関連定義が冗長になる テーブル名が長くなる。 外部キーや関連名が長くなる。 関連名と外部キー名が一致せず、カラムを呼び出したいときにDB定義を見ないと

    Railsのモデル名をすべて変更した話 - SmartHR Tech Blog
    umai_bow
    umai_bow 2024/04/17
  • チームのテストフローを見直して、実装時間を2倍に増やした話 - SmartHR Tech Blog

    こんにちは!SmartHRで基機能の開発を担当している、エンジニアのwakasaです。2023年の1月から半年かけて、自チームのテストフロー見直しを行い、実装時間を大幅に増やすことができました。今回はその取り組みをご紹介します。 見直し前のチームの状態 私の所属するEチームは、SmartHRの基機能の中でも、従業員情報やマスターデータの履歴データ管理周りの機能開発を主に担当しています。2023年8月現在、エンジニアが6名、プロダクトマネージャーが1名、プロダクトデザイナーが1名所属しており、QAエンジニアは所属していません。以前はQAエンジニアがチームに所属していましたが、2022年10月にチームを離れました。QAエンジニアがチームを離れたあとはエンジニアがテスト業務を兼務しています。 今回の取り組みを始めるきっかけとなったのは、2022年の年末に実装にどのくらい時間を使えているのか計

    チームのテストフローを見直して、実装時間を2倍に増やした話 - SmartHR Tech Blog
    umai_bow
    umai_bow 2023/08/05
  • 入社してわかったSmartHR本体の難しさ - SmartHR Tech Blog

    どうも2022年9月にSmartHRに入社したエンジニアの大澤(@qwyng)と申します。SmartHR体を開発しています。 SmartHRというサービスは、従業員情報を集約したアプリケーションをコアとし、そのコアと連携する複数のアプリケーションを配置した構成になっています。 そのコアというのがSmartHR体です。 SmartHR体は歴史が長いプロダクトです。カジュアル面談でも「キャッチアップはどうされました?」、「SmartHRの開発って技術的に何が大変ですか?」といった質問をよく頂きます。 記事はそういったSmartHRの開発の大変さを知りたい方に向けて自分が感じたことを言語化したいと思います。 2022年初頭に弊社の@sugamasaoさんがSaaS.techで発表した. 「アプリケーションが大きくてつらい・・・ってこと!?」*1 というスライドを見たことがある方もいると

    入社してわかったSmartHR本体の難しさ - SmartHR Tech Blog
    umai_bow
    umai_bow 2023/05/23
  • SmartHRのOSSガイドラインを公開しました - SmartHR Tech Blog

    こんにちは、エンジニアのkinoppydです。日は、SmartHRが公開したOSSガイドラインに関してご紹介します。 github.com SmartHR OSS ガイドライン SmartHRでは、すべてのサービスでOSSが使用されています。RubyRuby on RailsReactTypeScriptは必ずすべてのサービスで使われていますし、その他にもたくさんのOSSがSmartHRのサービスを構成しています。これらOSSによってSmartHRのサービスは支えられているので、我々もOSSに対してなにか貢献をすることができると良いなと思っています。しかし、現在社内には業務時間中のOSS活動に関する明示的な文章が存在せず、業務としてOSSにコミットする労務/法務的なルールが不明でした。また、OSS文化に対する経験が浅い人にとっては貢献する方法などもよくわからず、ハードルが高いと感じ

    SmartHRのOSSガイドラインを公開しました - SmartHR Tech Blog
    umai_bow
    umai_bow 2022/12/14
    業務機能の一部機能をOSS として個人で作成して、その開発を業務中にやるのはありなんだろうか
  • 1