API開発の基本 - 銀行APIの開発事例に学ぶ『使いやすい』のデザインプロセス APIは多くのWebシステムにおいて、欠かすことのできない技術です。APIをどのように設計、デザインすれば、ユーザに利便性を提供できるのかを、GMOあおぞらネット銀行 CTOの矢上聡洋さんが解説します。API設計の基本、そして実際の銀行APIの設計から、“使いやすい”を生み出すためのデザインプロセスを学びます。
カオスエンジニアリングを導入したクックパッドの挑戦 マイクロサービス化に伴う可用性の低下に対応 料理のレシピ投稿・検索サービスのクックパッドでは2年前からカオスエンジニアリングに取り組み、さまざまな事例やノウハウを蓄積しています。クックパッドの技術部・SR(Site Reliability)グループの小杉山拓弥さんとDX(Developer Productivity)グループの鈴木康平さんに、導入の理由やさまざまな知見を伺いました。 カオスエンジニアリング(Chaos Engineering)とは、稼働中のサービスにあえて擬似的な障害を発生させることで、システムの耐障害性を検証する手法です。動画配信サービスを提供するNetflix社が2011年ごろから実践し、ソフトウェアや情報を積極的に公開したことで世界中から注目されるようになりました。 国内ではまだ導入事例も少ないなか、料理のレシピ投稿
Web開発・オンボーディング・採用の実例に学ぶ、リモートワークのコミュニケーションと文書術 リモートワークへの注目が高まっていますが、いざ運用すると対面とは異なるコミュニケーションに四苦八苦しているのではないでしょうか。本記事ではリモートワークを長年実践しているYassLab株式会社の安川要平(@yasulab)さんに、具体例を交えながら解説していただきます。 はじめまして! 2012年に創業し、創業当初からリモートワークで働いているYassLab株式会社の安川(@yasulab)です。弊社では、RailsガイドやRailsチュートリアルといった大型コンテンツを日々更新し、36時間以上ある解説動画や1,400ページ超えの電子書籍などを個人・法人向けに提供しています。 本記事では、8年ほど実践してきたリモートワークの中で、読者の皆さんに役立つ(かもしれない)実例をいくつかご紹介します。日々の
帯域を知ろう - ユーザと開発者の視点から考える、テレワーク時代の帯域圧迫を防ぐアプローチ 多くの人がテレワークに移行する中、帯域という言葉に注目が集まっています。インターネット上での社会的活動量が加速度的に上がっていく中、帯域をできるだけ圧迫しないためにはどのような工夫が必要になるのでしょうか。ユーザ、開発者、それぞれの視点から、帯域を上手に使うためのアプローチを、みやもと くにおさんが解説します。 誰もがある程度、高速なインターネットにアクセスできるようになって久しいですが、2020年3月以降、インフラとしてのインターネットの重要性はますます高まりました。多くの企業が業務をテレワークに切り替え、また、多くの人がインターネットサービスをより多く利用するようになったからです。 インターネット上の活動量が上がると同時に、「帯域」という言葉を耳にする頻度が上がりました。本稿では、インターネット
スクラムマスターがやること、やらないこと - アジャイルトレーニングの専門家に聞いてみた スクラムマスターとして日々仕事に邁進していても、教科書どおりにいかないこともしばしば。イベントに人が来ない……、タスク終わらなさそう……などなど、スクラムマスターが直面しがちな、「あるある」な悩みを、アジャイルコーチの吉羽龍太郎さんに相談してみました。 イベントマネジメントの心得 スプリントレビューでは言いたい放題言わせよう! スプリントの期間延長は絶対NG 大切なのは原因の究明 スコープと期限の両方を守るのは難しい よいチームを作るためにスクラムマスターができること アジャイル開発の定番手法ともいえる「スクラム」。開発チームにスクラムを導入し、効率的に開発を進めるには、スクラムマスターの手腕が欠かせません。しかし、いざスクラムを運用しようにも、現実には教科書どおりいかない場面もあるでしょう。 イベン
技術的負債を徹底的に解消した話 - オミカレのシステムフル刷新のためにやったことを全部教える 技術的負債、デザイン面での課題など、サービスを構成するシステムを全面にわたってリニューアルしたプロセスを、オミカレの高橋一騎さんが克明に伝えます。 株式会社オミカレでテックリードをしております、高橋一騎(たかはし・いっき/ @ikkitang )です。私たちが提供する婚活メディアサービス「オミカレ」は、2019年3月にシステムのフルリニューアルに踏み切りました。本稿では、このリニューアルのプロセスをできるだけ詳細にお伝えしたいと思います。 さて、「技術的負債」という言葉を耳にすることがあります。なぜ負債が生まれるのか。「品質を犠牲にしてでも早々にサービスをリリースし、短期的にビジネスの速度を上げる」という判断はその理由の一つに挙げられるでしょう。エンドユーザーへの価値提供スピードを得るための見返り
KotlinをKotlinらしく、そして可読性を高く保つ運用知見 - エキスパート長澤太郎に聞く実装のイロハ 近年注目を集めるKotlinはどのように書き、どのように運用するのがいいのか。2012年からKotlinに親しむUbie社の長澤太郎さんに、その経験から得られたKotlinノウハウを聞きました。 2011年7月に登場したJVM言語・Kotlinは、近年多くの注目を集めている言語の1つです。Androidアプリの開発言語としてGoogle I/O 2017で正式採用されたことも契機となり、Kotlinはその存在感を一挙に高めました。 そして、この言語に黎明期から親しみ続けてきたのが、Ubie株式会社の長澤太郎(ながさわ・たろう/ @ngsw_taro )さんです。業務や登壇、執筆活動など、多くの局面でKotlinを活用し、ノウハウを蓄積してきた長澤さんに、Kotlinの言語特性やより
AWS導入~スケールまでの変遷を事例に学ぶ - コンテナ化のために「みてね」が選んだ構築戦略 これからAWSを導入する、AWSに入門するといった方に向け、AWSの導入のための基本的な戦略や考え方を事例で紹介します。多岐にわたるAWSの機能をいかに活用するか。サービス立ち上げから、その後のスケールまで、実際の現場でどのようにAWSを活用しているかを、株式会社ミクシィで「みてね」のインフラをリードする清水勲さんが語ります。 今や全世界のWebを支えるクラウドとして欠かせない存在となったAWS(Amazon Web Services)。さまざまな規模、目的のWebで活用されている中、持続的・永続的なサービス設計・開発・運用をするには、日々の情報収集と、時代に合わせたアップデートが求められます。 今回、株式会社ミクシィが提供する「家族アルバム みてね」でのAWS活用事例をもとに、AWS活用のヒント
SRE実践の手引 ─ 信頼性をどう制御するか? から始める、現実的な指標と目標の設計と計測 SREの役割には、信頼性、SLIとSLO、エラーバジェット、トイル、ソフトウェアエンジニアリングといった複数のキーワードが存在するがゆえ、なかなかうまく実践できない、という声もあります。本稿では、難しく見られがちなSREの内実を、「信頼性の制御」というコンセプトを軸に整理し、小さく始める一歩を坪内佑樹(ゆううき)さんが解説します。 こんにちは。SREの研究者をやっているゆううき(@yuuk1t)です。 SRE(Site Reliability Engineering)は、従来のオペレーションエンジニア、システム管理者(sysadmin)と呼ばれる人々が担っていた技術領域の新しい形です。Googleによって提唱され、日本国内でも2015年ごろからWebコンテンツ事業者のコミュニティを中心に広く知られる
ペアプログラミングで「強いエンジニアチーム」を作る! ヤフーが実践する全てペアプロ開発の手法 ペアプログラミング(ペアプロ)のメリットや導入方法について、ヤフー株式会社の山下真一郎さんが、フリマアプリ「ヤフオク!」や「PayPayフリマ」での実例をもとに紹介します。 ペアプログラミング(以下、ペアプロ)は、2人のエンジニアが共同でプログラムを書いていく開発スタイルです。メンバー同士での知識の共有や、プロダクトの品質向上が見込めるとされており、多くの企業が導入を進めています。 本稿では、ヤフー株式会社のヤフオク!カンパニー開発本部でペアプロを導入し、現在はPayPayフリマの開発の取りまとめを行う山下真一郎(@shin_yahoojp)さんに、ペアプロに取り組む意義やその手法について解説してもらいました。 なぜペアプロが必要なのか? 質の高いコードレビューとしてのペアプロ ペアローテーション
100万行オーバーのモノリシックRailsアプリをマイクロサービス化したクックパッドの手順 マイクロサービスの導入事例を、中の人が徹底的に語ります。クックパッドでは、100万行オーバーの超巨大なRuby on Railsアプリのマイクロサービス化に挑みました。アプリをいかに分離し、連携できるようにするか、など、同社が採ったマイクロサービス化の戦略を聞きました。 Ruby on Railsのバージョンアップに1年かかっていた 【マイクロサービス化戦略】まずはコードを減らすことから 【マイクロサービス化戦略】アプリ固有のバッドノウハウを減らす 【マイクロサービス化戦略】まずは分離しやすい部分からお試しで 【マイクロサービス化戦略】データベースが切れていればサービスも切りやすい 【マイクロサービス化戦略】インフラ構成を標準化する 【マイクロサービス化戦略】サービスメッシュを入れて通信の課題をクリ
実践データサイエンス─サンプルコードと図表で学ぶ、前処理・モデル評価・パラメータチューニング 実践とともに、データサイエンスに入門しよう!敷居が高いと思われがちなデータサイエンスですが、データの前処理からの手順は意外とシンプルです。本記事では、データの前処理や特徴量の作成、モデルの評価・訓練、ハイパーパラメータの調整など、基本的な知識をサンプルコードと図表を見ながら学びます。 データサイエンティストとしてのスキルを向上させるには、データの前処理や特徴量の作成、モデルの評価・訓練、ハイパーパラメータの調整など、広域にわたる知識を身に付ける必要があります。 この記事は、そうした知識を「サンプルコードと図表を見ながら、分かりやすく学習できること」を目指して作成されました。記事内では、新米データサイエンティストのOさんが登場して、ある案件のデータ分析を担当します。読者のみなさんも、ぜひOさんと一緒
WebAuthnでパスワードレスなサイトを作る。安全なオンライン認証を導入するFIDOの基本 FIDO(Fast IDentity Online)とは、公開鍵認証方式を応用し、オンライン経由で認証を行う仕組みです。パスワード認証の安全性は限界が指摘されるなか、Webサイトにおいても生体認証などパスワードレスな仕組みを導入する企業が増えており、このFIDOやWebAuthnに注目が集まっています。Capy株式会社で情報セキュリティに関する研究開発や分析などに携わる、松本悦宜さんの解説です。 こんにちは、松本悦宜(@ym405nm)です。 FIDO(ふぁいど)に関しては、昨年(2018年)から多くのメディアや技術ブログで取り上げられ、導入するWebサイトも増えています。 FIDO2プロジェクトにおいて話題になったWebAuthn(Web Authentication API)についても、主なW
実践的インフラ監視&運用 - 4000万人以上のユーザーに快適なサービスを提供するピクシブの裏側 大規模サービスを安定運用するコツってなに?実運用に基づく知見をピクシブ株式会社のインフラエンジニア、末吉さんと小出さんに聞きました。 ピクシブのサービスを支えるサーバーは大部分がオンプレミス 監視はNagiosとMuninでシンプルに 多数のリリースを支える独自のデプロイ手法 運用上のスペックは開発者との綿密なやりとりで決める 開発者と“温度感”を共有したい システム運用は、生き物です。 人気が出ればリクエスト数は急上昇。経年劣化でサーバーが壊れることもある一方で、次々と新しいサービスも展開しなければなりません。規模が大きくなると、システムを障害なく運用することは至難のワザです。 大規模サービスを安定運用するコツは何か──その秘訣を探るべく、ピクシブ株式会社のインフラチームで活躍する2人に疑問
低レイテンシと安定性を生むアーキテクチャ - SSPの現場に学ぶ、高可用性のつくり方 低レイテンシとは、広告配信の世界でユーザービリティ / 収益に直結する要素であることから、重要視されています。では、SSPの現場で実際に用いられるシステムはどのような構成になっているのでしょうか。fluct社の鈴木健太さんに、低レイテンシ、そして安定して稼働するシステムの基本を聞きました。 200msを目安にレスポンスを返す、低レスポンス設計 オンプレミスとAWSを組み合わせてコストとスケールのバランスを保つ データのコピーをサーバーに入れ、独立化する 悪くなったところを捨てるのが、低レイテンシ・システム安定化の秘訣 ログの集計はBigQueryで簡単に 悪くなったところは捨てて、全体を安定に動かす レイテンシ(latency)とは、リクエストに対して応答を返すまでの時間のことです。レイテンシをできるだけ
知ってるようで知らないTeXの世界 自分の人生より歴史あるソフトウェア開発をマネジメントする技術 アルゴリズムに関する大著『The Art of Computer Programming』のため、ドナルド・クヌース先生が組版システム「TeX」を発表して41年。その開発は世界中で活発に続いています。日本語TeX開発コミュニティやTeX Liveチームで活動する20代のエンジニア山下弘展(aminophen)さんに、自分より1.6倍も長生きなソフトウェアをメンテナンスする技術について聞きました。 数式がきれいに組めることで広く知られているTEXTEX(以下、TeXと表記)は、誕生から40年を超える自動組版システムです。 学生時代にレポートや論文でTeXを使ったことがある人も少なくないでしょう。技術系の同人誌でページの見栄えを改善すべく、Re:VIEWなど書籍執筆支援システムの背後で動くTeXに
エンジニアHub > 記事一覧 > AWSコスト最適化入門 ─ クラウドで「こんなにかかるはずじゃなかった!」を避けるツールと計測 AWSコスト最適化入門 ─ クラウドで「こんなにかかるはずじゃなかった!」を避けるツールと計測 「あれ? AWSのコスト、高すぎ…?」そう感じたときには、そもそもコストを正しく見積れているのか、適切に計測できているのかから見直しましょう。クラウドならではのメリットを享受しながら、コストを適正な範囲にしていく上で役立つ機能やサービスを紹介します。 こんにちは。吉川功一郎と申します。 私はフリーランスのシステムエンジニアとしてあちこちの会社をお手伝いしていますが、その中で、AWS(Amazon Web Services)移行に関するさまざまな相談をいただきます。切り口はいろいろありますが、意外と多いのが「コスト」に関する相談です。 さすがに「クラウド破産」というケ
「AWSとGCPを“選択可能”にしておく」LIFULLに学ぶ長生きするインフラ構築術 多くの開発に導入されるクラウドサービスですが、LIFULL社では、AWSとGCP、両サービスを同時に使用しているそう。同社のインフラの変遷と、併用の背景を聞きました。 AWSとGCP、「どちら」を「どうやって」使うか サーバの肥大化を阻止するべく、オンプレからAWSへ移行 マイクロサービス化し、「影響範囲」を狭めることで得られたメリット 「使い分ける」のではなく、「両方を使える」ことが継続性を生み出す インフラ構築における技術的な選択肢はさまざまですが、なんらかのクラウドサービスを活用するということは多くのエンジニアが検討する手段でしょう。 昨今ではクラウドサービスは多くの企業から提供されており、エンジニアにとって多様な選択肢が提供される一方、どのサービスを選ぶべきかという悩みもあるでしょう。筆者の周りで
Spring BootとPlay Framework、どっちがどう良いの? 専門家が5つの視点で徹底解説 Spring BootとPlay Framework、どちらを使うべきか……?開発者を悩ませる疑問に答えるべく、専門家2人がさまざまな視点で両フレームワークの特徴を解説します。 【比較ポイント(1)】設計思想や登場してきた歴史的背景 【比較ポイント(2)】得意分野や利用されている領域 【比較ポイント(3)】各コンポーネントの実装スタイル 【比較ポイント(4)】データベース接続まわり 【比較ポイント(5)】今後のリリース展開について Webアプリケーション開発において、フレームワークは欠かせない存在となっています。開発者が実装すべき処理に集中でき、堅牢でメンテナンスしやすいアプリケーションをすばやく開発できる。これこそ、フレームワークを使う最大の利点といえるでしょう。 JavaやScal
こんにちは、小林(@koba04)です。 本記事では、シングルページアプリケーション(以下、SPA)における状態管理について解説します。 GmailやTwitterは、SPAとして構築されている代表的なWebアプリケーションであり、スムーズなページ遷移をSPAによって実現しています。またElectronやPWA(Progressive Web Apps)の登場により、複雑なアプリケーションをWebの技術を使って構築する場面も増えてきました。 これらの複雑なアプリケーションにおいては、既存のページ単位での状態管理の考え方では対応が難しくなります。 そこで今回は、具体的なフレームワークも取り上げながら、Webフロントエンドにおける状態管理のアプローチについて紹介します。 フロントエンドでの状態管理の複雑化 ページの単位を超えた状態の保持 モデルとビューによる処理の分割 イベントの管理が複雑にな
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く