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

  • Railsのモデル名をすべて変更した話 - SmartHR Tech Blog

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

    Railsのモデル名をすべて変更した話 - SmartHR Tech Blog
  • OpenAPI Generator と TypeScript で型安全にフロントエンド開発をしている話 - SmartHR Tech Blog

    こんにちは、SmartHRフロントエンド開発を担当している @Tokky0425 です。 この記事では、私のプロダクトでの OpenAPI Generator を使ったフロントエンド開発の取り組みを紹介していきます。 目次 OpenAPI とは 「ラクラク分析レポート」の DX 上の課題 OpenAPI Generator とは 実際に generate してみる 生成ファイルを使ってみる 型情報を出力してみる 組み込み・運用の工夫 chokidar で監視する lint-staged に組み込む メリット・デメリット メリット デメリット まとめ OpenAPI とは OpenAPI とは、「REST API のドキュメントの記述形式を定めた仕様」のことを指しています。 簡単な例ですが、下記のような YAML ファイルがあるとします。 schema.yml paths: "/some

    OpenAPI Generator と TypeScript で型安全にフロントエンド開発をしている話 - SmartHR Tech Blog
  • SmartHRの残業王制度に関するお話 - SmartHR Tech Blog

    こんにちは、エンジニアのkinoppyd(平均残業10.2時間)です。今日は、週末に悪い意味で話題になった、SmartHRエンジニアグループで運用されている残業王について、すこし弁明をさせていただければと思います。 自社の求人票で声出た pic.twitter.com/9JcO6H5O2O— Takashi Adachi (@asanebo_) June 26, 2020 残業王 まず最初に残業王の制度が「残業という会社が管理すべき問題の解決を、従業員に押し付けられている」と受け止められている事に関してのお話をしようと思います。 前提として、会社が残業を従業員に求めているということは、SmartHRにおいてはありません。会社の姿勢としては、各チームのスクラムによる小回りの効くスケジュール管理と、もしそれでも問題があった場合のレポートラインの整備やビジネスサイドとの折衝、隔週の評価者との1

    SmartHRの残業王制度に関するお話 - SmartHR Tech Blog
    fuji_haruka
    fuji_haruka 2020/06/30
    良い施策に見えるけどなぜ叩かれているんだろうか
  • 1