サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Wikipedia
tech.smarthr.jp
マルチプロダクト戦略の実現を目標として掲げ、急速にプロダクトを増やしているSmartHR。 そのような中、これまでプロダクトごとに分断されていたデータを相互に利用できるようにすることで、価値を高める試みが始まっています。この活動の中心となっているプロダクト連携ユニットに、現状と今後の展開を聞いてみました。 インタビューの様子。左:プロダクト連携ユニット 右:インタビュアー f440: それでは、プロダクト連携ユニットのインタビューを始めたいと思います。よろしくお願いいたします。 一同: よろしくお願いします。 f440: お時間を取っていただきありがとうございます。突然呼ばれてびっくりしていると思うんですけれども、個人的に一番興味あったのがプロダクト連携ユニットだったので、この度はインタビューしたいと思いまして。 最初に自己紹介から始めさせてください。まずは私から。現在プロダクト基盤開発部
普段着用している年末調整Tシャツ。マル扶Tシャツは着すぎて文字がかすれている こんにちは。SmartHR プロダクトエンジニアの宮國(@gongoZ)です。 私は去る5月に誕生日を迎え、ついに40歳となりました。おめでとうございます! SmartHR に入社したのは2017年9月、つまり33歳でした。時が過ぎるのは早いものです。 良い節目なので、今回は SmartHR で過ごした約7年間を振り返っていきたいと思います。 社内経歴 入社から現在までの、社内で携わってきた業務経歴を一枚絵に起こしてみました。 宮國の社内経歴。これまで3プロダクトに携わってきたが、在籍期間の4分の3が年末調整機能 入社してしばらくは基本機能のタスクに着手していましたが、入社一ヶ月後に声をかけられました。 「年末調整機能、やってみない?」 そこから私と年末調整の関係が始まりました。途中、文書配付機能*1チームに配属
ネタバレ防止のため写真なしアイキャッチにしました こんにちは、SmartHRの@nansekiです。 意外と知られていないのですが、SmartHRのプロダクトサイドはフルリモートOKで、多くの社員が自宅で仕事をしています。フルリモート勤務を支える制度*1には以下のようなものがあります。 リモートワーク環境を整える手当 入社時に25,000円支給 リモートワーク手当 毎月5,000円支給 フルリモート通勤制度 遠方居住者が所属オフィスに出社する交通費は、月2回まで通勤手当ではなく経費精算OK(金額上限なし) 今回はそんなフルリモートで働くエンジニアのデスク環境に迫ります。 コロナ禍で強制的にリモートワークが始まった2020年当時の写真をなぜか奇跡的に持っていた社員がいたので、デスク環境のBefore/Afterをのぞいてみることにしました。 ちなみに私はリモートワークOKにも関わらずほぼ毎日
こんにちは、プロダクトエンジニアの@ksaitoと@tafuです。 SmartHRには共通の趣味の方が集まるSlackチャンネルが数多く存在し、その一つに「#趣味_キーボード」チャンネルがあります。そこでは、新しいキーボードの情報共有や自作しました〜などのコミュニケーションが取られています。 今回は、仕事道具であるキーボードについて、こだわりのポイントや満足していない部分など、プロダクトエンジニアの@asonasさんにインタビューしてきました。 と、その前に我々のキーボードを軽く紹介させてください。 ksaitoのキーボード ksaitoが普段使っているキーボード TOFU60 を使っています。スイッチには、Outemuのサイレントクリームイエローというサイレントタクタイルスイッチを採用していて、ゴールデンウィークにキーキャップを新調しました。こだわりポイントを書くと文量が多くなってしまう
こんにちは! SmartHR プロダクトエンジニアの @sakata と @hypermkt です。 SmartHRではほぼすべてのチームでスクラム開発を行っています。スプリントプランニングとスプリント進行中における課題に対し、私たちのチームでは「予言の書」という取り込みを行っています。本記事では、この「予言の書」の概要とその効果についてご紹介します。 予言の書が必要な背景 スクラム開発で、チームが消化できるキャパシティからタスクを選定したにも関わらず、すべてのタスクの消化ができなかったという経験はありませんか? 私たちはたくさん経験したことがあります。そこにはスプリントプランニングにおける計画とスプリント進行の難しさがありました。 すべてのタスクが終えられるか不安がある まだ作業タスクには何も着手していないので当たり前ではありますが、チームが消化可能なキャパシティからタスクを選定し、優先
こんにちは。アクセシビリティ本部のアクセシビリティエンジニアの五十嵐です。SmartHRでは主にアクセシビリティテスターが見つけた課題を技術的な観点から改善したり、根本的な問題を解決するための仕組みづくりを担当しています。 さて、Meta が開発する UI ライブラリとして長い間人気を博している React ですが、2024年4月に最新版であるバージョン 19 のRC版が公開されており、注目を集めています。 バージョン 19 では "use client" や "use server" でも知られる Server Components を含む様々な機能が含まれる予定ですが、この記事では、そんな React バージョン 19 をアクセシビリティの観点からキャッチアップし、特に便利になりそうな点や、注意が必要になりそうな点などを見ていきます。 forwardRef が不要になった 仮想 DOM
こんにちは、SmartHRでキャリア台帳の開発を担当しているプロダクトエンジニアのhosoyaです。 今日は、私たちがどのようにPlaywrightを使ってキャリア台帳のE2Eテストを実装しているかについてお話しします。 なぜPlaywright? E2Eの導入・運用の検討を始めた当時、SmartHRで運用されているE2Eは、Rspec x Selenium x Capybaraが主流でした。 キャリア台帳は新規プロダクトという事もあり、新しいツールの選定をしてもよいのではないかということでチーム内での検討がはじまりました。 採用理由に関しては以前紹介された「E2Eテストを Playwright で作り直して開発プロセスに組み込む話」とほぼ被ってしまうのですが以下のような理由になります。 PlaywrightはMicrosoftから公開されているE2Eテストフレームワーク 定期的な更新と新
はじめに SmartHRで届出書類機能を開発しているqwyngと申します。 今回はSmartHRの届書書類機能において、日本語エイリアスを用いた開発を行ったので紹介します。 背景 SmartHRの届出書類機能は、書類の作成から電子申請の送信までを一括で行うことができる機能です。 ユーザーは画面上で書類に記入するような感覚で書類の作成を行うことができます。 SmartHR届出書類機能の書類確認画面 この体験の実現のために書類のどんな項目にどのような値が入力されたかを永続化する必要があります。 DBのカラム名は英語であるため、開発者は日本語の項目名を英語のカラム名に脳内で変換する必要があります。 この変換が煩わしく、プログラムの修正やレビュー時を含めて開発者の負担になっていました。 そのため、日本語の項目名をそのまま実コードに使えるようにすることを検討しました。 日本語化の是非 日本語の項目名
普段、さまざまなgemを使っていると「あれ、この時ってどうなるんだっけ?」「これバグじゃない?」と思うような場面に出くわすことがあります。例えば、以下のような3パターンのActive Recordのモデル定義を見てみましょう。 class Supplier < ApplicationRecord has_one :account end class Supplier < ApplicationRecord has_one :account, autosave: true end class Supplier < ApplicationRecord has_one :account, autosave: false end これらはautosaveオプションが異なるhas_one関連付けで、それぞれ少し違う挙動をします。しかし、その違いを自信を持って説明できる人は少ないのではないでしょうか。
こんにちは。VP of Engineering の morizumi です この記事では2024年2月にプロダクトサイド(注:プロダクト開発に直接的に関わっている各部の総称)内で実施したフルリモートワークに関するアンケート結果のサマリをご紹介します。SmartHR では2021年7月より本格的にフルリモート体制に移行しており、移行から2年半ほどが経ちました。2年半を経て、従業員としてフルリモートワークをどのように受け止めているのか? というのを調べるために行ったのが今回のアンケートです なお、この記事は僕が書いた社内ドキュメントからほぼコピペして作っているため、一部わかりにくい用語や言い回しがあったり、若干の内輪ノリがあるかもしれませんがその点はご容赦いただけると幸いです それでは早速、アンケート結果のサマリをご紹介していきます (これ以降基本的に社内ドキュメントのコピペです) アンケート
最近、偶然知り合った他社の情報セキュリティ担当の方から「SmartHRさんの情報セキュリティ基本方針はちょっと変わってますね。うちも改定するときには参考にしたいです!」といううれしいお言葉をいただきました。 情報セキュリティ基本方針は、世の中ではスルーされがちなものではありますが、昨年の夏から秋にかけて試行錯誤してSmartHRの情報セキュリティ基本方針を作り直したときのことを振り返って書いてみました。 1.きっかけ 基本方針を作り直そうと思い立ったのは、些細なことがきっかけでした。 既存の基本方針の中に誤字なのか微妙な表現(公文書等にも使用例はあるが、一般的にはあまり使われないもの)が見つかり、その文言を修正すべきか検討した結果、「条文自体を改定するか」、「いや、それならいっそ全体を作り直したほうがいい」という話になり、最終的には「SmartHR単体ではなく、SmartHRグループ全体の
こんにちは!SmartHRのプロダクトマネージャーのgackeyです。 この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。25人が持ち回りで毎週記事を投稿します。ぜひご覧ください! 実は私が持ち回りラストです。トリにふさわしいかどうかドキドキしています。 SmartHRでは、2023年の9月に初めて、スマートフォン向けのネイティブアプリ(以下アプリ)をリリースしました。 現在順調に(どころか予想以上の勢いで)利用ユーザー数も伸び、ホッと胸をなでおろしつつ、次へ向けて仕込みを進めています。 「もっと早く欲しかった!」「ずっと待ってた!」というお声もたくさんいただき、PMとしては喜びもひとしおな一方、このアプリのリリースには、構想から足かけ1年半を要しました。 この記事では、SmartHRが行ってきたネイティブアプリの検証における試行錯誤についてご紹
こんにちは、SmartHRの基本機能を担当しているプロダクトエンジニアの@tsutsumiです。 私たちプロダクトエンジニアは「最短距離を行こう」というスローガンを掲げ、開発効率の向上に取り組んでいます。その一環として、サイクルタイムの改善に注力しています。 今回は、チームの開発効率向上を図るために実施した施策とその効果について紹介します。 FindyTeam+のサイクルタイムの推移 まずは、最近のFindyTeam+のサイクルタイムの推移について見ていきたいと思います。 FindyTeam+のサイクルタイムとは何かについては「チームでサイクルタイムの改善に取り組んだ話 - SmartHR Tech Blog」のブログ記事をご参照ください。 私たちのチームでは、半年前からFindyTeam+を利用してサイクルタイムの計測を行なっています。 直近3ヶ月のサイクルタイムの推移が以下の通りです。
DPE(Developer Productivity Engineering)ユニットに所属している、alpaca-tcです。 最近モジュラーモノリス化を進めるためにRuby動的解析ツールを作ったので、その話をします。 📝 私事ですが、新潟の佐渡島に移住しました。新潟や佐渡島のRubyistの方がいらっしゃいましたら、ぜひRubyKaigiでお友達になってください! SmartHRではRailsのモジュラーモノリス化を検討をしているよ Railsにおける「モジュラーモノリス」は、アプリケーションを拡張性のある構造にするために、単一プロセスでモノリスアプリケーションを区分されたサブセット(モジュール)に分割するアーキテクチャのことです。 SmartHRでは、コード量が多いプロダクトでモジュラーモノリス化を進めています。 すでに新規機能の開発では導入されていますが、既存コードのモジュラーモノ
こんにちは、プロダクトエンジニアのa2cとプロダクトマネージャーのdaisukeです。 本稿では、2024年1月に組成され、スクラムを採用した私たちのチームが最初の3ヶ月間に直面した課題とその改善策、それによってもたらされた変化を共有します。スクラムに参加するエンジニアとPMの多様な視点を取り入れ、実際の経験に基づく具体的な事例をオープンに紹介します。 なお、この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。ぜひ他の記事もご覧ください。 チームの紹介 PM1名・プロダクトエンジニア3名の計4名がコアとなり、価値提供に責任を持ちます。そのコアチームに兼任のプロダクトエンジニア(チーフ)1名・兼任のプロダクトデザイナー1名が加わりチームを構成しています。専任のスクラムマスターはいません。 担当しているプロダクトとプロジェクトは、SmartHR Plu
SmartHR でプロダクトエンジニアをしている tmtms です。読み方がわからない(自分でもわからない)ので社内では tommy と名乗ってます。 2月に開催された社内LT大会第3回で「ショートカットと端末」というネタで発表したのですが、とても5分に収まる量ではなかったのでここにしたためておきます。 キーバインド macOSのテキスト編集のショートカットとEmacsとbashのキーバインドを比較するとこんな感じです。 control macOS Emacs bash A 行頭に移動 行頭に移動 行頭に移動 B 左に移動 左に移動 左に移動 C - prefix 中断 D 右文字削除 右文字削除 右文字削除/入力終了 E 行末に移動 行末に移動 行末に移動 F 右に移動 右に移動 右に移動 G - 中断 中断 H 左文字削除 ヘルプ 左文字削除 I - タブ タブ J - 改行 改行 K
はじめに こんにちは!年末調整機能のPMのhajiです!学生のときに授業で筋力を測定したら、「階段の上り下りが困難なレベルの筋力」と判定されたくらい足腰が弱いです。戸惑った顔で「どうやってここまで来たの?」と聞かれたんですが、戸惑ったのはこっちの方です。どこでもドアがはやく実現されてほしいです。 さて、ぼくのキャリアにおいて、SmartHRは3つ目の会社です。過去に所属した会社との違いについて、以前も記事を書きました。 入社してから月曜の朝がつらくない気がする - SmartHR Tech Blog 時は流れて入社から9ヶ月が経ちました。その中で、自分の振る舞いや考え方が少し変わってきた気がします。そこで今回は、自分のどこが変わったのか、どこが変わっていないのか、これからどこを変えていきたいのかをお話しさせてください。この記事を通して、社内の雰囲気が少しでも伝われば幸いです。 ちなみに本記
はじめに こんにちは。SmartHR プロダクトマネージャーの山根(@sayama)です。 この記事は 「SmartHRのプロダクトマネージャー全員でブログ書く2024」 への参加記事です。 25人が持ち回りで毎週記事を投稿します。ぜひご覧ください! 今回は自分がなぜSmartHRに入社したのか、その気持ちの変遷を振り返ってみようと思います。 自分の市場価値ってなに? SmartHRに入社するまでは、製造業での機械設計を経て、技術者向け情報管理システムの構築以降、自然言語系AIの黎明期からプロジェクトマネージャー・プロダクトマネージャーを経験してきました。業務DXのためのシステム導入や既存プロダクトへのAI機能の付加価値を考えたり、それをグローバルに展開するのも非常に刺激的で、ワクワクしながら推進してきたことをよく覚えています。 キャリアの変遷 改めて自分のキャリアを振り返ると、客観的には
こんにちは、SmartHRの基本機能を担当しているプロダクトエンジニアの池田です。 現在SmartHRのプロダクトエンジニアでは「最短距離を行こう」というスローガンを掲げ、開発効率の向上に取り組んでいます。その活動の一環として開発のデリバリーを早めるためにサイクルタイムの改善に取り組んでおり、今回はその取り組み内容についてご紹介していきたいと思います。 サイクルタイムとは 一般的にサイクルタイムとは1つの製品の工程が開始してから完了までの1サイクルにかかる時間のことを指します。ここではソフトウェア開発プロセスにおけるサイクルタイムのことなので、ブランチに対して最初のコミットがされてからPull Requestがマージされるまでの工程にかかる時間のことをサイクルタイムの定義として説明していきます。 Findy Team+ 私たちのチームではFindy Team+を活用し、サイクルタイムの向上
こんにちは、SmartHR品質保証部マネージャーのarminです。 前回、私たちのグループの方向性をブログで発信してから3年が経過しました。 この間、品質保証部の体制や目指すべき方向性などに変化が起きていますので、改めてここで公開しようと思います。 品質保証部の変遷 前回のブログを出したのが2021年だったので、翌年2022年以降について説明します。2022年当時はQAエンジニアが個々のプロダクトに専属で入り、開発チームと一緒に品質保証を行なっていく組織を目指していました。 開発チーム内に入ったQAエンジニアは各々バリューを発揮し、各プロダクトの品質は向上していきました。 2023年になると、SmartHR全体としてマルチプロダクト戦略が打ち出され、プロダクトもプロダクト開発チームも急激に拡大していきました。 開発チームが増えても、品質の良いプロダクトを素早くリリースしなければ意味がありま
こんにちは、CPOのadachiです。 この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。25人が持ち回りで毎週記事を投稿しています。 この企画にも関連するのですが、最近社外の方から「SmartHR、PM多!」という感想をいただくことが増えてきました。もしPMが多い = 裁量が小さくてつまらない環境、と思われていたら心外すぎる……許せねぇ…… そこで本稿では、なぜSmartHRには25人もPMがいるのか、一体なにを作っているのか、仲はいいのか、今後どういったオポチュニティがあるのか、といったことについて説明していきたいと思います。オポチュニティは言いたいだけです。 25人は多い? 結論、そんなに多くないと思っています。 先日「SmartHRがARR150億円を突破、前年比150%で成長」というプレスリリースも出ましたが、私たちは現在ARR 150
こんにちは。プロダクトエンジニアのatsushimと言います。 社内ではプロダクトを開発する傍ら、アクセシビリティを高めるための改善や仕組みづくりを進めています。 この記事ではSmartHR独自のESLintのルールを作っている話をしたいと思います。 SmartHRでは アクセシビリティ(以降a11y) を考慮したアプリの開発・改善を行っており、過去記事でその様子をご確認いただけます。 SmartHR Tech Blog: アクセシビリティ の検索結果 ただ普段の開発中、a11yを意識しつつ開発を行うことは、エンジニアにかなりの負荷がかかります。 フロントエンドの経験が少なく基本的なマークアップの知識が足りていない アクセシビリティを意識してね!といわれても何をすればいいのかわからない そのため、SmartHRでは独自のESLint ルールを作成し、CIに組み込むことでa11yを担保、改善
こんにちは。SmartHR VP of Engineeringのmorizumiです。 2024年3月11日に「SmartHRがARR150億円を突破、前年比150%で成長」というリリースをSmartHRは出しているのですが、これはそんな急成長を支えているプロダクト横断基盤開発チームについての記事です。 SmartHRはスケールアップ企業を標榜しており、事業・プロダクトともに大規模でありながら急成長を続けるという新しいステージの挑戦を始めています。 プロダクト横断基盤チームは、スケールアップ企業であるSmartHRの今後の成長を支えるアプリケーションレイヤーのミドルウェアを開発しています。データの量・種類の多さ、権限に関する考慮、開発者体験、スケーラブルなアーキテクチャ、全社に関わる意思決定、などなど技術的にも事業的にも難易度が高く、それゆえに面白い領域になっています。 今回は、Smart
こんにちは。SmartHRでプロダクトエンジニア(PdE)をしているsoul ( @ex_SOUL ) です。 先日、第3回SmartHR LT大会が開催されましたのでイベントの内容を紹介します。 SmartHR LT大会について DevRel主導のもと、有志のプロダクトエンジニアが集まって企画・運営している社内イベントです。 プロダクトエンジニアの中から11名の登壇者を集い5分間のLighting Talks(LT)を行います。 登壇者はプロダクトエンジニア(PdE)に限定していますが、当日は職種によらず社員であれば聴講可能です。 配信もしており、現地参加が難しい社員でもリモートで楽しめるようなイベントとなっています。 第3回で変えたこと・意識したこと 発表後に感想を話す人をあらかじめ決めておく 第2回の際に感想を話す方にマイクを渡す運用が大変だったこともあり、今回は感想を話す方をあらか
はじめに みなさん、こんにちは!SmartHRでドメインエキスパートとして働いているchankesです! この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。25人が持ち回りで毎週記事を投稿しています。 ドメインエキスパートはプロダクトマネジメント統括本部に属していること、チームによってはスクラムのPO(プロダクトオーナー)の役割を担っていることからこの企画に参加しています! ドメインエキスパートの概要は以下の記事をご参考にいただけると幸いです。 開発組織に所属するドメインエキスパート。事業領域の深い知識と開発者目線を併せ持つ専門家の役割とは。 本記事では、私が担当する「届出書類アプリ」において重要な法律や制度改正のキャッチアップ方法について紹介していきます。 ※「届出書類アプリ」は、行政手続きの書類作成から電子申請を複数名分まとめてできる無料オプ
こんにちは!SmartHRプロダクトエンジニアのhimiです。 この記事ではプレースホルダーのアクセシビリティとユーザビリティについての課題と、その解決手段についての話を書きます。 プレースホルダーって何? Webアプリでよく見る、フォームコントロールに値が無いときに表示するテキストのことです。 主な用途としては、フォームの入力例や入力内容の説明テキストが設定されることが多いです。 HTML Standardでは The placeholder attribute represents a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value. A hint could be a sample value or a brief de
はじめに みなさん、こんにちは!プロダクトマネージャの岸(@kissy)です。「SmartHRにアジャイル推進室(仮)を立ち上げました」に続き、4年ぶり2度目の立ち上げましたシリーズです。 この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。25人が持ち回りで毎週記事を投稿しています。 このたび、プラットフォーム事業メンバーとともにSmartHR Labs(ラボ)なるプロジェクトを立ち上げ、SmartHR Labsのアプリ第一弾として2024年2月に 社内イベント管理 の提供を開始しました。 本記事では、SmartHR Labs立ち上げの背景や狙い、今後チームでやりたいことをお話ししたいと思います。つい先ほど、SmartHR Labsに関するプレスリリースも公開されましたので、そちらも併せてご覧ください。 smarthr.jp 社内の有志エンジニア
注意喚起の記事になります。タイトルが結論です。 既にこの問題に言及している記事はいくつかあるのですが*1、私は気付かずに踏んでしまったので、タイトルで「おっと、うちは大丈夫かな」と思ってもらえるようにこの記事を書いています。 joinableとは何か 問題として挙げているjoinableオプションですが、これはネストしたトランザクションの挙動に影響を与えます。少しややこしいので、サンプルコードを見せながら説明します。 # frozen_string_literal: true require "bundler/inline" gemfile(true) do source "https://rubygems.org" git_source(:github) { |repo| "https://github.com/#{repo}.git" } gem "activerecord", "7.
こんにちは。SmartHRプロダクトマネージャーのsonchoです。 この記事は「SmartHRのプロダクトマネージャー全員でブログ書く2024」への参加記事です。25人が持ち回りで毎週記事を投稿します。ぜひご覧ください! 僕からは先日新たにリリースされた「キャリア台帳」の開発裏話をご紹介します。このエピソードを通じて、SmartHR内のプロダクト開発の雰囲気を感じていただければ幸いです。 はじめに・背景 新規プロダクトの立ち上げを担当することが決まったのは、2023年6月頃でした。翌月から徐々に開発がスタートし、11月には正式リリース時に対応するユースケース・開発アイテム・スコープなどがほぼ決定。僕たちは2024年5月末のリリースを見込んで開発を進めていました。 ところが、マルチプロダクト化の加速に伴い、新規プロダクトにおいても今まで以上に早期の事業貢献が求められることに。まあ簡単に言う
次のページ
このページを最初にブックマークしてみませんか?
『SmartHR Tech Blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く