SlideShare a Scribd company logo
DeveloperSuccess として何を届けられるか
様々な分野を経た先として何ができるか
2019/07/06(Sat.) Battle Conference U30
→← 1 / 44
Who?
Yuta Suzuki (@euxn23)
Engineer @ Bitbank (2018/07-)
Lead of Developer Success Team
AWS, DevOps, NodeJS Engineer
formally, Application Engineer (Frontend / Backend)
Community activities
Lead of CROSS Party 2019
Member of TypeScript meetup JP
Organizer of awswakaran.tokyo
→← 2 / 44
ビットバンクは、ビットコインなどを扱う
仮想通貨取引所です
⾦融機関としての安定稼働かつ堅牢なシステム
Web のDNA を持つ技術選定・開発速度
両⽅が求められるシステム開発をしています
⾼速な開発・ダイナミックなアサインのため
TypeScript を全⾯採⽤
この両輪を軸に開発されるシステムかつ、全⾯TypeScript な環境というのは、
なかなか希少で魅⼒的ではないでしょうか。
安定かつ堅牢かつ⾼ガバナンスを保ちつつ、
開発効率・開発体験を向上させるために、
Developer Success に取り組んでいます
私がDeveoper Success をはじめるまで
昔の私
⽂系出⾝でいろんなことに⼿を出していたので
⼀芸もなく遠回りな道を歩んできた
⾃分のキャリアに⾃⾝が持てないままだった
Career (2015/04-2017)
Application Engineer @ Nifty
Cloud Platform
NodeJS, CoffeeScript, ML, Python, Go
IoT Service
Node, Go, React, WebVR
先輩「このままだと器⽤貧乏になっちゃうよ」
私「フロントエンドにしぼっていくか〜」
Career (2018-2018/06)
Frontend Engineer @ Livesense
Web Service
TypeScript, React, Rails
CSS in JS in ERB Proof of Concept
私「JavaScript の特性を⽣かしたい!
パフォーマンスが求められる仕事がしたい!」
Career (2018/07-)
Bitbank Inc.
bitbank.cc
Angular, TypeScript, Node.js
Developer Success
AWS, node_modules
CTO「フロントエンド以外の経験もあるみたいだし、
全社開発基盤的な、横断的な仕事を任せたい、
社内パッケージの整理やデプロイの刷新、
TypeScript 化とかBFF 化とか……」
「今なら学んできた知識が⾝に沁みているはず
今まで回り道した分を⽣かしたい」
Developer Success の前進として取り組み開始
私「社内パッケージ整理したりaudit したり
Node のバージョンあげたりしてるし、
全社Node 基盤チーム(1⼈)とかかな」
同僚「それDeveloper Success じゃない?」
Developer Success チーム発⾜
Developer Success って何?
開発者の幸せのために様々なレイヤーで
なんでもするロール
Developer Success の取り組み⽅針
楽になるので本当はやりたいけど後回しになっていることをやる
開発速度を停滞させかねなに要因となるコードやフローを改善する
開発者がパフォーマンスを発揮できる環境を維持・改善する
なんでもするためには
幅広くできるスキルセットが必要
↓
回り道をしてきたキャリアが鍵に
Developer Success がいると、何が嬉しい?
煩雑なリリースフローによる疲弊を事前に防ぐ
メンテ不可能なコードの発⽣を事前に防ぐ
セキュリティを確保しつつ働き⽅の⾃由度をあげる
↓
開発者が幸せに!
Developer Failure してしまわないようにする
社内のパワーバランスや承認をあるべきに保ち、不満を作らないようにする
過剰な承認や雑務で開発効率が下がり、本質以外で疲弊してしまわないようする
イベント登壇やOSS 活動のモチベーションを会社が阻害してしまわないようにする
↓
開発者の成功が採⽤や離職防⽌になり、
チームの、やがては会社の成功に繋がる
実際には何をやったのか
「社内パッケージ管理がもう限界だ」
やらないと……?
git のHEAD 参照なので破壊的変更でバグるかも
パッケージ更新のハードルが上がって開発速度が停滞
CI などの認証で煩雑な⼿順を踏む必要があり疲弊
やらないと……!
npm package の知識
node.js でfs を操作する経験
複雑なシステムを紐解くのが好きな性格
これらをもとに⼀⼈、複雑システムと戦う!
オレオレcli スクリプトで~フロントエンド~全社JS 基盤を治して得した
Developer Success !!
private repository のHEAD 直接参照
↓
npm enterprise への移⾏+ peer dependency 化
開発者の幸せは私の幸せ
通称monopoly プロジェクト
(パッケージを整理する過程で⼀部がモノリポになったため)
ほかにも
「承認・デプロイフローを効率的にしつつ
ガバナンスを強化したい」
やらないと……?
デプロイ環境が 状態を持つサーバ なのでクリーンなデプロイではない
リリースのたびに承認ワークフローを通して証跡を残す必要が出るかも
権限分割ができないので全部CTO 承認を通さないといけなくなる
やらないと……!
GitLab Runner とCI/CD の知識
アプリケーション/ Docker のビルドの知識
AWS のデプロイ権限の知識
謎に詳しいGitLab の知識をもとに戦う!
Developer Success !!
CTO 承認後のデプロイサーバからのデプロイ
↓
GitLab Runner を⽤いた権限管理されたデプロイ
安定的なデプロイを構築、
問題発⽣時の原因調査が容易に
⾃分で⾃分の改善の恩恵を受けたとき
⾃分のことを天才だと感じる
まとめ
私にとってDeveloper Success とは何であるのか
Q. DeveloperSuccess として何を届けられるか、
様々な分野を経た先として何ができるか
A. 回り道の数だけ誰かを幸せにできると信じて、
経験を元にさらにより多くの⼿段を⾝に着けるだけ
「⾃分が回り道したせいで、
他の開発者に⼿助けくらいしなくちゃな」
幾たびの現場を経て器⽤貧乏、
たった⼀つのCS 学位もなく、
たった⼀つの専⾨分野もなし。
若者はまた独り
ネットの海で武器を磨く
けれど、
その回り道は、それでも⾎⾁になっていた

More Related Content

PDF
ビットバンクにおける少人数で支えるインフラチームの戦略
PDF
Deploy TypeScript with CodePipeline in Fargate
PDF
仮想通貨取引所 bitbank の IaC の導入と実践
PDF
Deploy TypeScript Application by CodePipeline
PDF
Node.jsアプリの開発をモダン化するために取り組んできたこと
PDF
Introduction of bitbank frontend development environment
PDF
サーバーレス・アーキテクチャ概要
PDF
TypeScript製フレームワーク「Nest」のご紹介
ビットバンクにおける少人数で支えるインフラチームの戦略
Deploy TypeScript with CodePipeline in Fargate
仮想通貨取引所 bitbank の IaC の導入と実践
Deploy TypeScript Application by CodePipeline
Node.jsアプリの開発をモダン化するために取り組んできたこと
Introduction of bitbank frontend development environment
サーバーレス・アーキテクチャ概要
TypeScript製フレームワーク「Nest」のご紹介

What's hot (20)

PDF
ビットバンクの開発におけるAWSの利用
PDF
Lightning Network, Swap, Nloop
PPTX
AWS IoTを使った双方向通信システムの実装と注意点
PDF
Bluemix(Node-RED)を使った空間の付加価値提案
PDF
持続的な運用開発のために社内基盤を整えている話 〜auditのCI組み込みやlintの社内PKG化〜
PDF
Architecting on Alibaba Cloud - 超基礎編 -
PDF
K8s-icp-capsmalt-jjugccc2018spring
PDF
中規模Angularアプリケーションの再設計
PDF
GraalVM Native Imageが見せた未来
PDF
CYDASアジャイル開発状況報告LT
PDF
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
PDF
Kubernetesのない世界 すべてがサーバーレスになる
PDF
サーバーレスの話
PDF
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
PDF
JAWS-UGアーキテクチャ専門支部 ServerlessConfレポート
PDF
そろそろLambda(CI/CD編)
PPTX
Fukuten 20200117 up
PDF
Storylineでデザインする心地よい会話体験
PDF
Open Source x AI
PDF
MagicOnion入門
ビットバンクの開発におけるAWSの利用
Lightning Network, Swap, Nloop
AWS IoTを使った双方向通信システムの実装と注意点
Bluemix(Node-RED)を使った空間の付加価値提案
持続的な運用開発のために社内基盤を整えている話 〜auditのCI組み込みやlintの社内PKG化〜
Architecting on Alibaba Cloud - 超基礎編 -
K8s-icp-capsmalt-jjugccc2018spring
中規模Angularアプリケーションの再設計
GraalVM Native Imageが見せた未来
CYDASアジャイル開発状況報告LT
Japan Container Days: 「今こそKubernetes。最高の仕事道具で使いこなそう」by capsmalt
Kubernetesのない世界 すべてがサーバーレスになる
サーバーレスの話
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
JAWS-UGアーキテクチャ専門支部 ServerlessConfレポート
そろそろLambda(CI/CD編)
Fukuten 20200117 up
Storylineでデザインする心地よい会話体験
Open Source x AI
MagicOnion入門
Ad

Similar to DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか (20)

PPTX
開発チーム管理で役立ったVSCode拡張機能
PDF
only ip whitelist at cloudfront is ok?
PPTX
Jaws ug yokoyama-16
PPTX
20190727_DevelopUseiPaas
PDF
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
PPTX
Vscodemeetup6
PDF
Docker on azure!進化していくcontainerを覗いてみよう!
PDF
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
PDF
Domain Specific Architecture は今どこまで来ていて、これからどこに向かうか
PDF
Nifty cloud mbaas
PDF
.NET Coreから概観する.NETのOSSへの取り組み
PPTX
.NET Core for Mac users in Azure
PDF
Azure のApp Center でアプリの 使用状況を分析する
PDF
Microsoft Azure 仮想マシンの マイクロソフトサーバーソフトウェアのサポート
PDF
Jitsi Meetとは?
PDF
kintone Enterprise
PPTX
要求開発アライアンス 9月定例会議
PPTX
もっとサーバーレスを手軽に便利に!Azure Logic Apps
PDF
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
開発チーム管理で役立ったVSCode拡張機能
only ip whitelist at cloudfront is ok?
Jaws ug yokoyama-16
20190727_DevelopUseiPaas
サーバーレスやマイクロサービスへの"チャレンジ"を後押ししてくれるセッションを紹介
Vscodemeetup6
Docker on azure!進化していくcontainerを覗いてみよう!
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
Domain Specific Architecture は今どこまで来ていて、これからどこに向かうか
Nifty cloud mbaas
.NET Coreから概観する.NETのOSSへの取り組み
.NET Core for Mac users in Azure
Azure のApp Center でアプリの 使用状況を分析する
Microsoft Azure 仮想マシンの マイクロソフトサーバーソフトウェアのサポート
Jitsi Meetとは?
kintone Enterprise
要求開発アライアンス 9月定例会議
もっとサーバーレスを手軽に便利に!Azure Logic Apps
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
Ad

More from bitbank, Inc. Tokyo, Japan (19)

PDF
インフラチームの歴史とこれから
PDF
ビットバンクのデプロイ戦略について
PDF
ビットバンク流 アジャイル開発の紹介.pdf
PDF
ビットバンクで求められるプロジェクトマネジメント
PDF
ビットバンクでのネイティブアプリケーション開発におけるCI_CD環境
PDF
ビットバンクのマッチングエンジン.pdf
PDF
bitbank Corporate Information
PDF
ng build --prod & Continuous Delivery
PDF
マーブル図で怖くないRxJS
PDF
ビットコインウォレットで手軽にパスワードレス認証が可能なbitidについての紹介
PPTX
Ethereumのシャーディング概論
PDF
Daocasinoにおけるstate channel実装
PDF
TypeScriptでライトニングネットワークを使ってみよう
PDF
20181108 bitbank lt-maintainable-e2e-testing
PDF
Angular Refactoring in Real World
PDF
アプリケーション開発目線から考える テストの書き方について
PDF
PDF
RDBMS with Node.js
PDF
bitbank LT Night #1 fargate blue green deployment
インフラチームの歴史とこれから
ビットバンクのデプロイ戦略について
ビットバンク流 アジャイル開発の紹介.pdf
ビットバンクで求められるプロジェクトマネジメント
ビットバンクでのネイティブアプリケーション開発におけるCI_CD環境
ビットバンクのマッチングエンジン.pdf
bitbank Corporate Information
ng build --prod & Continuous Delivery
マーブル図で怖くないRxJS
ビットコインウォレットで手軽にパスワードレス認証が可能なbitidについての紹介
Ethereumのシャーディング概論
Daocasinoにおけるstate channel実装
TypeScriptでライトニングネットワークを使ってみよう
20181108 bitbank lt-maintainable-e2e-testing
Angular Refactoring in Real World
アプリケーション開発目線から考える テストの書き方について
RDBMS with Node.js
bitbank LT Night #1 fargate blue green deployment

DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか