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
君の選択は正しいのか?
Search
shiro seike
PRO
June 18, 2017
0
790
君の選択は正しいのか?
PHPカンファレンス福岡2017
shiro seike
PRO
June 18, 2017
Tweet
Share
More Decks by shiro seike
See All by shiro seike
実践サーバーレスパフォーマンスチューニング ~その実力に迫る~ / Practical Serverless Performance Tuning ~A Close Look at its Power~
seike460
PRO
2
240
PHPを書く理由、PHPを書いていて良い理由 / Reasons to write PHP and why it is good to write PHP
seike460
PRO
5
520
AWS CDKを用いたセキュアなCI/CDパイプラインの構築 / Build a secure CI/CD pipeline using AWS CDK
seike460
PRO
3
660
いまあるチームにフィットさせる Serverless そして Platform Engineeringへの挑戦 / Serverless Fits the Team You Have and Platform Engineering
seike460
PRO
2
1.7k
いまあるチームにフィットさせる Serverless / Serverless fits in with the team you have now.
seike460
PRO
2
150
地方こそサーバーレス! チームにフィットさせるサーバーレス / Rural areas are serverless! Serverless to Fit Your Team
seike460
PRO
1
100
AWS X-Rayを利用したサーバーレスのパフォーマンス分析 / Serverless performance analysis using AWS X-Ray
seike460
PRO
2
150
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
460
技術力を高め合う “開けた”企業間コミュニティの形成 / Formation of an "open" inter-company community to enhance technological capabilities
seike460
PRO
1
81
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
21k
Building Applications with DynamoDB
mza
90
6k
Git: the NoSQL Database
bkeepers
PRO
425
64k
A Modern Web Designer's Workflow
chriscoyier
692
190k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Fireside Chat
paigeccino
32
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
26
730
What's in a price? How to price your products and services
michaelherold
243
11k
How to train your dragon (web standard)
notwaldorf
88
5.6k
A better future with KSS
kneath
237
17k
Art, The Web, and Tiny UX
lynnandtonic
296
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
363
19k
Transcript
PHPカンファレンス福岡2017 君の選択は正しいのか? 株式会社 Fusic 清家 史郎 @seike460
自己紹介
清家史郎 株式会社 Fusic エンジニア PHPer seike460 seike460 seike460 seike460 自己紹介
Fusicについて
株式会社 Fusic ๏ 受託開発やってます
株式会社 Fusic ๏ 受託開発やってます ๏ 自社サービスやってます
๏ 受託開発やってます ๏ 自社サービスやってます ๏ AWSが得意です 株式会社 Fusic
๏ 受託開発やってます ๏ 自社サービスやってます ๏ AWSが得意です ๏ 技術が大好きなエンジニア募集しています! 興味がある方は懇親会等で話しかけて下さい!
株式会社 Fusic
本題
君の選択は正しいのか?
エンジニアにおける選択
技術選定
そもそもお前の 選択は正しかったのか?
私が行ってきた選択を 振り返ってみようと思います
Fusicにおける技術選定 Q.使用する技術ってどのように決めてるんですか?
Fusicにおける技術選定 A.案件担当エンジニアが決めます
๏ 技術選定をエンジニアに委ねています ๏ エンジニアのモチベーションと技術、 両方底上げする意味があります ๏ 責任は多少伴います (みんな凄い助けてくれるけど) ๏ 明確な意思で、技術選定しなければならない
Fusicにおける技術選定
私が行ってきた選択 ケース1
๏ FusicではOJTを行っています 私が行ってきた選択 ケース1
๏ FusicではOJTを行っています 私が行ってきた選択 ケース1 ϝʔϧΞυϨεਃ͕ग़དྷΔγεςϜ࡞ͬͯ
๏ FusicではOJTを行っています ๏ メールアドレス申請が出来るシステム作って ๏ メールサーバーにはAPIないよ ๏ いわゆる普通のWEB開発だね 私が行ってきた選択 ケース1
私が行ってきた選択 ケース1 LAPPでいいか CakePHP3もみんな使ってるし使おう
私が行ってきた選択 ケース1 LAPPでいいか CakePHP3もみんな使ってるし使おう
出来たシステム ϝʔϧਃཧγεςϜ
๏ 要件は満たした ๏ 依頼者の反応も実際に「要件は満たしてるね」 ๏ 自分の枠内での開発 ๏ 現状不満が上がっています 選択の振り返り ケース1
明確な意思を持たずに技術選定し、 システムへの付加価値を付けれなかった
私が行ってきた選択 ケース2
๏ AWSにシステム構築しよう ๏ JsonデータをAPIに送信してデータ保存しよう ๏ 送信されたデータをWEBで表示しよう ๏ APIにはいつデータ来るかわからないから 落ちないで欲しいよね ๏
でも冗長構成にすると費用がかさむ 私が行ってきた選択 ケース2
そうだ! サーバーレスにしよう!
๏ AWSマネージドなAPI GateWayにてjson受信 ๏ 受信jsonをLambdaに渡しPythonバリデーション その後、安価なストレージであるS3に配置 ๏ S3に配置したjsonを仮想サーバー上のCronで データベースに保存 ๏
データベースに保存したデータをWEBで表示 私が行ってきた選択 ケース2
出来たシステム
๏ サーバーコストの削減に成功 ๏ AWSマネージドサービスを利用することで 可用性の向上 ๏ Python書けて、楽しかった サーバレスにした結果 明確な意思を持ち技術選定した事で、 システムに付加価値をつける事が出来た
私が現在行っている選択
๏ メールサーバーが変更になった ๏ APIがある ๏ API側とデータの付け合せを行いたい ๏ API側の結果を待ってると遅い ๏ 非同期処理で情報取得したい
๏ PHPをforkさせる手もあるが楽に書きたい ๏ PHPじゃ無くてもいいよな… ๏ 非同期処理が強い言語が良いな… 私が現在行っている選択
そうだ! Goで書こう!
๏ 単純に速度速い ๏ 非同期処理が簡単に書ける (非同期処理を制御出来ているかは別の話…) ๏ WEBアプリも書ける (PHPってWEBアプリ書きやすいんだな…) ๏ GO、楽しい!
Goで書いてみて思ったこと この選択が正しいのか まだ結果は出せていません
๏ 技術選定するにも必ず制限はあります ๏ その制限の中で最高の選択を行いたい ๏ 技術の幅を広げなければならないと感じています ๏ PHPに囚われなければ、解決する課題もあると思います ๏ PHPの特性を認識して、柔軟に最適な選択を行いたい
๏ ※PHP好きですし、WEBシステムに作るならPHP! 後悔なき選択をしたい
そもそもお前の 選択は正しかったのか?
正しく選択出来る様に なって来ていると思います
あなたも真剣に向き合うと 良い結果が出るかも知れません
君の選択は正しいのか?
ご清聴ありがとうご ざいました!