Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
talentio.comの裏側の改善と今後の展望〜エンジニアリングとプロダクトと〜
Search
Shinichiro OGAWA
May 08, 2018
Technology
0
1.5k
talentio.comの裏側の改善と今後の展望〜エンジニアリングとプロダクトと〜
HRTech SaaS Engineer MeetUp Vol.1
Shinichiro OGAWA
May 08, 2018
Tweet
Share
More Decks by Shinichiro OGAWA
See All by Shinichiro OGAWA
どう生きてきたか、どう生きるのか~シニアエンジニアの人生~
ogawa
0
52
talentio をなんとかしようと頑張ってきた18ヶ月の旅路
ogawa
6
5.6k
RubyとRailsの勉強のしかたとコミュニティの参加のしかた
ogawa
0
760
everyleaf.rb LT
ogawa
3
440
Git道場 技 本日の課題、 テクニックの解説
ogawa
7
7.4k
jpmobile futures
ogawa
2
270
SubversionからGitへ移行するときの問題について簡単に語る
ogawa
3
4.4k
Other Decks in Technology
See All in Technology
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
1
2k
Geminiとv0による高速プロトタイピング
shinya337
0
200
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
370
Model Mondays S2E03: SLMs & Reasoning
nitya
0
240
Beyond Kaniko: Navigating Unprivileged Container Image Creation
f30
0
110
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
220
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
390
AWS Summit Japan 2025 Community Stage - App workflow automation by AWS Step Functions
matsuihidetoshi
1
310
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
140
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
4
180
本が全く読めなかった過去の自分へ
genshun9
0
730
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
140
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Site-Speed That Sticks
csswizardry
10
670
Code Reviewing Like a Champion
maltzj
524
40k
Thoughts on Productivity
jonyablonski
69
4.7k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building Adaptive Systems
keathley
43
2.6k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Raft: Consensus for Rubyists
vanstee
140
7k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Transcript
talentio.comの裏側の改善と今後の展望 〜エンジニアリングとプロダクトと〜 HRTech SaaS Engineer MeetUp Vol.1 2018/05/08
アジェンダ Copyright © Talentio 2 • 自己紹介 • talentio.comのこれまで •
現状と未来 • プロダクト開発 • まとめ
Copyright © Talentio 3 自己紹介 株式会社タレンティオ 取締役 CTO 小川 伸一郎
• 理学(博士) • 理論物理専攻(超低温物理) • 2003年 Web制作会社 • 2008年 株式会社イオレ • 2013年 クックパッド株式会社 • 2016年 レジャリーワークス合同会社 起業 • 2017年 株式会社タレンティオ CTO GitHub: rust Twitter: conceal_rs
Copyright © Talentio 4 自己紹介 • Perl/PHP歴8年ぐらい • jcode.plとかの時代 •
PHP 3.x とかの時代から2007年ぐらいまで • Flash歴5年くらい • Macromediaの時代 • Ruby歴10年ぐらい • Ruby on Rails 1.2.3からの世代 • Emacs歴26年ぐらい • μEmacs(x68k)→xyzzy(Win)→Emacs(Linux/macOS)
Copyright © Talentio 5 自己紹介 • jpmobile developer • Rails
2.3.x 対応から開発を担当 • Tokyu.rb Co-Founder • 東急沿線(乗入含)に住まう Rubyist のためのコミュニティ • 日本全域をほぼ制覇 • 概要:懇親会しかしない勉強会 • TokyuRuby会議スタッフ(主に司会) • 飲み会+LT大会 • 次回 2018/07/29 に開催予定 • https://tokyurubykaigi.github.io/tokyu12/
talentio.comのこれまで Copyright © Talentio 6 • タレンティオについて
Copyright © Talentio 7 やりたいこと これまでの 人事の文化・慣習を変える 圧倒的なサービスを テクノロジーを駆使してつくりたい!
どこでも人手不足 Copyright © Talentio 8 • 人手不足による倒産が増えている ◦ 働き方改革が求められている
なぜ働き方改革が必要? Copyright © Talentio 9 • 労働人口の減少 ◦ 少子高齢化 ▪
2040年には40%が高齢者 • 労働生産性の低さ ◦ 長時間労働 ▪ 先進国で最下位 • そこでHR Tech?
HR Techの概況 Copyright © Talentio 10 https://hrtechnavi.jp/lab/hrtech-chaosmap/
HR Techでなにが変わる? Copyright © Talentio 11 • テクノロジーの力で業務を改善・効率化できる ◦ 採用管理
▪ talentio.com ◦ 労務管理 ◦ 評価、勤怠、etc… • 効率化によって生まれた時間を戦略に活かせる ◦ 戦略と戦術 • 新しい手法、価値を試せる ◦ リファラル採用 ◦ SNS情報をもとにしたスカウト ◦ etc… • タレンティオでも新しいものを提供し続けていきたい
現状と未来 Copyright © Talentio 12 • talentio.comの現状とこれから ◦ これまでどうだったか ◦
現状とこれから • 未来の展望 ◦ これから進むべき道
talentio.comのこれまで Copyright © Talentio 13
talentio.comのこれまで Copyright © Talentio 14 • インフラはAWS上に構築 ◦ オンプレからAWSへ移行 ◦
Ansibleによるプロビジョニング ◦ CloudWatchによる監視 • アプリケーションはPHP/Laravel + React/Redux ◦ SPA(Single-Page-Application) • ソースコードは GitHub で管理 ◦ frontend / backend でリポジトリ分割 • JIRA/Confluenceによる情報共有 • チャットツールは Slack を採用
talentio.comの現状とこれから Copyright © Talentio 15
インフラの現状とこれから Copyright © Talentio 16 • AWSの構成管理に Terraform 導入 ◦
一部 roadworker / miam など入っているが、 Terraform に吸収予定 • 全面的にitamaeに移行 ◦ 構造化YAMLがきつかった.... • Docker化を進行中 ◦ ECS + hako で構築 ◦ 将来的には Fargate か EKS にしたい ▪ k8sにしたいので EKS が有力? • ログの集約には fluentd を採用 ◦ Dockerでログ取得するにはほぼ必須
アプリケーションの現状とこれから Copyright © Talentio 17 • backendとfrontendのリポジトリを統一 ◦ Docker buildするのに楽なように
◦ 結局両方変更するので... • 開発環境をDocker化 ◦ Vagrand+Ansible を docker-compose 化
アプリケーションの現状 Copyright © Talentio 18 • Railsへの移行を決定 ◦ 生産性向上の為 ◦
とは言えPHPでの開発は続ける ◦ まずは社内ツールから ▪ 一人で作ってます。仲魔が欲しい... ◦ 現在10%ぐらい、まだまだ • migrationを廃止 ◦ 差分が欲しい状況がほぼない ◦ ridgepoleを採用
DevOpsの現状とこれから Copyright © Talentio 19 • Prometheus/Grafanaの導入 ◦ 監視がCloudWatchだったのでもうちょっとかっこいい やつが欲しかった
◦ Grafanaはこうイケてる監視感がある ◦ Prometheusと言う名前もいいよね! • Prometheusの監視目的でMackerelを導入
DevOpsの現状とこれから Copyright © Talentio 20 • CircleCIの導入 ◦ Dockerのbuildから •
バッチサーバの導入 ◦ kuroko2を導入 • ChatOpsを段階的に導入中 ◦ Slack → ruboty → kuroko2 → hako deploy ◦ いまはECSへのdeployぐらい ▪ もっと拡大したい
社内ツールの現状とこれから Copyright © Talentio 21 • ZendeskからIntercomへ移行 • JIRAを廃止してGitHub issuesへ移行
◦ 情報の集約化 • Confluenceからkibelaへ移行 ◦ ストック情報とフロー情報を扱いたかった ▪ 自己紹介はブログ ▪ 議事録はWiki
未来への展望 Copyright © Talentio 22 • どういう技術選択をしていくのか
インフラでの未来 Copyright © Talentio 23 • インフラを隠蔽したい ◦ コマンド一発で再構築できる ◦
全てコードで表現されている ◦ 知らなくてもなんとかなる • 効率よく監視したい ◦ mizzyさんにお手伝いいただいています! • Docker化を推し進める ◦ すべてコンテナで動くようにしたい ▪ そのうち k8s に移行
アプリケーションの未来 Copyright © Talentio 24 • Rails化 ◦ 生産性の高さとレールの心地よさ ▪
個人的嗜好もある ◦ Laravelは初期設計が重要 ▪ 自由度が高いので、初期設計に失敗し ているとかなりつらい ◦ 初期段階でコード書いていたエンジニアが 残っていない ◦ これから設計し直すのであれば、言語変え てもいいのでは感 ◦ オブジェクト指向ではないつらみ
アプリケーションの未来 Copyright © Talentio 25 • SPAをやめたい ◦ 個人的にはあまり好きではない ▪
フロントエンド側にロジックをもたせる必要がある • 二重管理のつらみ ▪ 特定部分の大きめの変更が難しい • 全体を見直す必要がある ◦ いろいろできなくはないが、あえて踏み込む重要性を 見いだせない ◦ サーバサイドエンジニアとフロントエンドエンジニアに 分かれてしまう ▪ 個人的には「サービス開発エンジニア」でありたい し、そうなって欲しい • 必要に応じてReactなりを使う方向に進みたい
エンジニア組織の未来 Copyright © Talentio 26 • ◯◯エンジニアと言う分け方はあまりしたくない ◦ 必要なことはユーザさんにサービスを提供すること •
全てサービス開発エンジニアになる ◦ != フルスタックエンジニア ▪ 必要があればインフラからフロントまでやる ◦ よくあるパターンに陥らないようにしたい ▪ C言語ぐらい→アセンブラぐらい→マシン語ぐらい →論理回路ぐらい→半導体ぐらい→量子力学ぐら い→ゲージ場ぐらい→標準模型ぐらい→??? • そのうえでどこをやるのかは人それぞれ ◦ 得意不得意というより好き嫌い
プロダクト開発方針 Copyright © Talentio 27 • プロダクト開発方針
プロダクト開発方針 Copyright © Talentio 28 • ひたすら考える ◦ 以上
何を考えるべきか Copyright © Talentio 29 • 例)機能追加 ◦ ユーザさんからの要望 ◦
自分たちが必要と思う機能 • 「どのような機能を追加すべきか」ではなく ◦ →「なぜその機能が必要なのか」を考える • 例)運用の手間を削減するのが理由? ◦ その運用は必要なことなのか? ◦ 本質的な問題は他にはないのか? ◦ みんなそれを問題だと思っているのか?
どうやるのか Copyright © Talentio 30 • どうやるのか ◦ 抽象度を極限まで上げる ▪
概念化 ▪ 抽象クラスを考えることに近い ◦ 極端な取捨選択を迫る ▪ 例)Aを実装するとBを捨てることになるが、その場 合でも運用は本質的には破綻しないかどうか ◦ 「あったら便利な機能」だけでは危険 ▪ 誰にとって便利なのか ▪ どれぐらい便利になるのか • 逆にいまどれぐらい不便なのか
考えること Copyright © Talentio 31 • 考え続けると問題が洗練されていく ◦ 本質的に解決すべき問題にフォーカスできる •
プロダクトについて考えることは詰将棋に似ている ◦ 全てのパターンを考える ▪ ユーザさんがどうしたいのか • いつ(When) • どこで(Where) • どのように(How) • なにを(What) • どのような状況で(Status) ◦ このStatusが最も重要 ◦ 多くのパターンを考えることは疲れる ▪ それでも考え続ける ◦ 安易に決めない
どのようなチームでやるか Copyright © Talentio 32 • ディレクターとエンジニアのペア ◦ 職種ではなく、役割 ▪
ディレクターの役割 • プロダクトのことを考える人 ▪ エンジニアの役割 • どのようにプロダクトに実装するかを 考える人 ◦ エンジニアがディレクターの役割でも良い ◦ 多様な価値観、考え方が重要
どのようなチームでやっているか Copyright © Talentio 33 • プロダクトマネージャーがどうやるか考えて決めている ◦ CTOはそのサポート兼アドバイザー プロダクトマネージャー
エンジニア エンジニア エンジニア CTO
将来的にどうしたいのか Copyright © Talentio 34 • プロジェクトによって様々なチームが編成され ている • プロダクトマネージャーは全体の指揮振り
◦ CTOはサポート兼アドバイザー プロダクトマネージャー エンジニア CTO ディレク ター ディレク ター エンジニア エンジニア ディレク ター ディレク ター エンジニア
まとめ Copyright © Talentio 35 • 今日お話したこと ◦ これまでの talentio.com
について ◦ 技術的な観点でこれまでとこれから、未来 像について ◦ プロダクト開発の方針について • 今日お話できなかったこと ◦ 具体的なこと、詳細について ◦ どんなプロダクトにしたいのか • 懇親会でぜひお話しましょう! ◦ 戦略と戦術についてとか ◦ 仲魔のなり方とか
まとめ Copyright © Talentio 36 Ruby/Rails/PHP DevOps エンジニア絶賛募集中 です!!