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
71
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
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
3
680
Yahoo!広告ビジネス基盤におけるバックエンド開発
lycorptech_jp
PRO
1
280
DeNA での思い出 / Memories at DeNA
orgachem
PRO
3
1.6k
事業価値と Engineering
recruitengineers
PRO
2
230
モダンフロントエンド 開発研修
recruitengineers
PRO
3
360
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
400
トヨタ生産方式(TPS)入門
recruitengineers
PRO
3
250
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
130
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
24
6.2k
我々は雰囲気で仕事をしている / How can we do vibe coding as well
naospon
2
220
Webアクセシビリティ入門
recruitengineers
PRO
1
270
Postman MCP 関連機能アップデート / Postman MCP feature updates
yokawasa
0
150
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
480
Optimizing for Happiness
mojombo
379
70k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
How to train your dragon (web standard)
notwaldorf
96
6.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Thoughts on Productivity
jonyablonski
69
4.8k
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 エンジニア絶賛募集中 です!!