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
1.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
talentio.comの裏側の改善と今後の展望〜エンジニアリングとプロダクトと〜
HRTech SaaS Engineer MeetUp Vol.1
Shinichiro OGAWA
May 08, 2018
More Decks by Shinichiro OGAWA
See All by Shinichiro OGAWA
どう生きてきたか、どう生きるのか~シニアエンジニアの人生~
ogawa
0
150
talentio をなんとかしようと頑張ってきた18ヶ月の旅路
ogawa
6
5.8k
RubyとRailsの勉強のしかたとコミュニティの参加のしかた
ogawa
0
780
everyleaf.rb LT
ogawa
3
490
Git道場 技 本日の課題、 テクニックの解説
ogawa
7
7.6k
jpmobile futures
ogawa
2
320
SubversionからGitへ移行するときの問題について簡単に語る
ogawa
3
4.5k
Other Decks in Technology
See All in Technology
4人目のSREはAgent
tanimuyk
0
400
スタートアップにおけるアジャイルの実践について #shibuyagile
murabayashi
3
2.1k
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
11
4.1k
小さいから、全部わかる。— 常駐AI "xangi" のすすめ
sugupoko
0
270
AI時代のエンジニアキャリアについて今一度考える
sakamoto_582
1
1.3k
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
150
なぜ人は自分のプロジェクトを 「なんちゃってアジャイル」と 自嘲するのか
kozotaira
0
260
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.3k
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
0
130
Agentic AI 時代のテスト手法: Kiro とはじめるプロパティベーステスト (AWS Summit Japan 2026 | DEV212)
ymhiroki
0
220
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
290
Keeping applications secure by evolving OAuth 2.0 and OpenID Connect
ahus1
PRO
1
150
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
The SEO identity crisis: Don't let AI make you average
varn
0
510
Music & Morning Musume
bryan
47
7.3k
Designing for Performance
lara
611
70k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
180
Writing Fast Ruby
sferik
630
63k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
440
How STYLIGHT went responsive
nonsquared
100
6.2k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
55k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
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 エンジニア絶賛募集中 です!!