YAPC::Hakodate 2024 https://fortee.jp/yapc-hakodate-2024/proposal/a2e39821-a91c-4d10-9db7-1e4d624d47ff
こんにちは。 Findy で Tech Lead をやらせてもらってる戸田です。 既に皆さんも御存知かと思いますが、弊社では開発生産性の向上に対して非常に力を入れています。 以前公開した↓の記事で、弊社の高い開発生産性を支えている取り組み、技術についてお話させていただきました。 tech.findy.co.jp ありがたいことに、この記事を多くの方に読んでいただき反響をいただいております。 そこで今回は、↑の記事でも紹介されている「Pull requestの粒度」について更に深堀りしてお話しようと思います。 Pull requestの粒度は、弊社にJOINしたら最初に必ず覚えてもらう最重要テクニックの1つです。 それでは見ていきましょう! 大きなPull request 適切な粒度とは 適切な粒度を維持するために タスク分解 迷ったら小さく レビューを最優先にする CI高速化 featur
はじめに こんにちは。会員基盤ブロックの小原田です。弊社では、ZOZOTOWNという大規模なモノリシックシステムをマイクロサービスへリプレイスする取り組みを進めています。私が所属する会員基盤ブロックでは、ZOZOTOWNの会員情報を扱うマイクロサービスの開発と運用を担当しています。 会員基盤ブロックでは、開発生産性の向上を目指し、約半年間にわたり様々な取り組みを行ってきました。本記事では、会員基盤ブロックが開発生産性の向上のために実施してきた施策と、その成果について紹介します。 目次 はじめに 目次 開発生産性の向上に関する取り組みの背景 Findy Team+を用いた調査 会員基盤ブロックが抱える開発生産性の課題 サイクルタイム短縮の取り組み PRの変更行数を100行以下にする レビューを優先する仕組みの整備 ブレスト会の実施 品質向上についての取り組み Goガイドラインの策定 テストカ
ようやく涼しくなってきましたね。もう少し漸進的に気温が下がってほしい。プロダクト開発部部長の塚本@hihats です。 前置き この二、三年くらいは個人的にシステム思考への傾倒があり、以前ここに書いた変化に適応するソフトウェアアーキテクチャと組織構造への道程も、Qiitaに書いたソシオテクニカルアーキテクチャ概要もその系譜の記事だった。今回は、エレガントパズルという書籍を読んでいて、そこかしこにドネラ・メドウズ公の話が出てくるので改めて私もシステム思考について記事を書こうと考えていた。 そんな折、他社のCTOと話す機会があってそこで「自社の開発組織や開発力にそこまで特別さを感じていないんですよね」という話を聞いた。実は過去にもそれはあって、自社のWebプロダクトで会社の利益を上げているにも関わらず、開発の責任者がそう思っているケースは少なくないのかもしれない。 一定の市場シェアを獲得してい
ECSメインにAWSサービスを利用してコンテナの運用設計を考えてみます。 コンテナの運用設計 ECS 上で稼働するWebアプリケーションを前提に運用の要件を考えてみます。 コンテナを使用したマイクロサービスの運用は、モノシリックなシステム運用とは少し異なります、以下の項目を運用項目としてピックアップします。 可用性/スケーリング CI/CD ロギング トレース モニタリング ECS/ECR のアーキテクチャ まずはECS/ECR のアーキテクチャについて触れます。 Amazon ECSはコンテナの作成、実行、停止といった管理をメインとしたサービスであり、Amazon ECRは Dockerのレジストリサービスとなります。リポジトリにあるイメージをプッシュしたり、イメージの保管等を行います。 全体的なイメージを以下のように理解をしています。 ECSの機能 まずECSです。 ECSは複数のエン
こんにちは、タイトルでだいたい言い尽くしましたが、このような悩みを自分および自分の周りでよく聞くようになったので、Stripeの方に教えてもらいながらどうすればいいか整理しました。 あくまで「めちゃくちゃ開発コストをかけない範囲で」の解決策なので多少トリッキーですがお付き合いください。あるいは、この記事を読んで「そろそろちゃんとコストかけて作りこむか」と決めていただいてもいいと思います。基本的にStripeの実装経験がある方向けの記事です。 どういう状況か さて、状況を具体的にするために具体例を挙げていきましょう。 1アカウントあたり月額3000円のSaaSを運営している。 当初はクレジットカードのみ、利用開始日に決済が走る標準の課金体系で進めていた サービスが成長し、法人の取引が増えて「請求書払いいけますか?」と聞かれることが増えた。 ここでいう請求書払いとは、10/1開始で契約したとし
はじめに Terraformを使って複数の環境を扱う代表的な方法として、環境ごとにディレクトリを分けつつ、そこから共通のmoduleを呼び出すというものがあります。 本記事ではこれとは異なり、moduleを使わずに複数の環境を取り扱うファイル構成例と、運用して感じている利点について紹介します。 なお、Terraformで取り扱う対象としてAWSを前提とした記述が各所に登場します。ご了承ください。 動作環境 Terraform v1.5.3 AWS Provider v5.9.0 moduleを使って複数環境を扱うファイル構成例 moduleを使わない構成を紹介する前に、まずmoduleを使う構成例を簡単に解説します。 ファイル構成は概ね以下の通りになるかと思います。 -- <project-name>/ -- envs/ -- dev/ -- backend.tf -- providers
今日のワークハック:タスク管理アプリで仕事の管理を手放すWindows、Linux、Mac、Androidデバイスで利用可能なこの無料のオープンソースアプリは、ToDoリスト、タイムトラッキング、タイムブロックを兼ね備えています。 このアプリを使えば、Todoリストを素早く作成しにかかる時間を見積もり、それに応じて計画できるのです。 また、タスクに費やされた時間を追跡するようにつくられており、あなたが物事に費やしている実際の時間を把握するのに役立ちます。 Super Productivityを開くと、受信トレイが表示され、思いついたタスクを捨てることができます。 プロジェクトのタスクを管理するプロジェクトを設定してそこにタスクを置くこともできます。 タスクを作成したら、かかる時間の見積もりを追加し、期日を割り当てることもできます。そのあと、「今日」、「スケジュール」、「プランナー」のセクシ
先日のことですが、Querie.meでこんな質疑がありました。 これは非常にご尤もなご意見であり、実際この問題提起に近いシチュエーションを見かけたことは五本の指では数え切れないくらいあります。ということで、今回の記事では元々の問題意識ともいえる「見せかけの回帰」について、久しぶりにちょっと復習を兼ねて書いてみようと思います。 そもそも「見せかけの回帰」とは何か 実際に見せかけの回帰において起きること 見せかけの回帰への対処法 差分系列に変換する VARモデルを使う 動的線形(状態空間)モデルやベイズ構造時系列モデルを使う Rコード そもそも「見せかけの回帰」とは何か このブログでは11年前に沖本本の輪読記事を書いた際に「見せかけの回帰」については一通り取り上げていますので、今回はその際の説明を引用するに留めます。 なお前提知識として先に書いておくと、以下に出てくる「単位根過程」というのは平
こんにちは。AI・機械学習チームの氏家(@mowmow1259)です。 エムスリー福岡オフィスの一人目のエンジニアとして福岡で働いています。 マクドナルドの月見バーガーが好きで、今年も発売開始当日に食べに行きました。 私が所属するAI・機械学習チームでは基本的に2週間から1ヶ月程度で新規プロダクトをリリースするなど、高速にプロダクトを開発しています。 その過程で、「この書き方は落とし穴があるから使わない方がいい」といった開発に際したベストプラクティスが溜まっていきます。 そういったベストプラクティスはレビューでの指摘や技術共有会*1でチームに浸透してきますが、レビュー負荷や新メンバーへの周知などに課題がありました。 この記事では、それを解決するためにベストプラクティスをLinterの独自ruleとして規定し、CIで自動検知することでチーム全体に周知する取り組みについて紹介します。 独自ru
はじめに こんばんは! 皆さんは以下のようなすぐ消えてしまう要素をDevToolsで確認したいときはどうしますか? 常に表示されるようにわざわざコードを修正してから、DevToolsで要素を確認したりしていませんか?DevToolsをうまく使うことで、わざわざコードの修正をせずとも簡単に要素の確認をできるのでそのちょっとしたTipsのご紹介です! ① CSSイベントでの確認方法 まずはCSSイベントで要素の表示制御を行っているパターンでの確認方法です。以下のようにCSSイベントのhoverで表示制御をしている要素を例にDevToolsで確認する方法を見ていきましょう! import "./style.css"; export const Index = () => { return ( <div> <button className="myButton">Button</button> <
皆さん、フォーム作ってますか? Webサイトやアプリを作るにあたって避けられないのがForm作成、多くの方が autocomplete を設定するなど、より使いやすいフォームを作成するために尽力されていることと思います。 一方で、悪気なく書いたコードでより使いにくいフォームになってしまっている例が世の中には多く見られます(特に銀行系) 今回は、よくあるフォームの実装を例に、(特に日本語話者にとって)より使いやすいフォームにするためのちょっとした仕様や私が考える対策を書いていこうと思います。 忙しい方のために最初に書いておくと、この記事に書いてあることの多くは autocomplete の仕様を意識した実装をしましょう の一言に集約されます。 多くの方にとっては「何を当たり前のことを」と思われる項目も多いかとは思いますが、当たり前のことがされていないフォームが世の中には多すぎるので、少しでも
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く