TECH PLAY

株式会社ユーザベース

株式会社ユーザベース の技術ブログ

476

こんにちは、SaaS SREチームの八代です。 私たちのチームで開発しているSPEEDAというSaaSプロダクトは、オンプレミスとGCPで構成されたハイブリッドクラウド環境上に構築されており、私たちはGoogle Anthosや、Direct Connectなどのサービスを利用し、ハイブリッドクラウド環境での運用を改善する取り組みを続けてきています。 そんな中で、2021年末ごろ、 Hybrid NEGという新しい技術が発表され、GCLBがオンプレミス環境あるいは他のパブリッククラウドに拡張することができるようになりました。 cloud.google.com 今回は、このHybrid NEGと…
アバター
はじめに 残業と生産性の相関 リアーキテクチャ時の生産性の推移 おわりに はじめに こんにちは、モバイルチームスクラムマスターのko2icです。 NewsPicksのモバイルチームでは、1スプリント1週間で、全てのタスクをストーリーポイントに落としています。たとえば、面接、社内イベントの準備、目標設定やそのフィードバックなどもポイント化しています。 そして、残業時間なども勤務表から判断して、(正確ではないですが)作業時間もわかっています。(正確にするために時間計測をする組織もあるかもしれませんが、負担になるのでしてないです。) これにより、1時間あたりの消化ポイントが出せるので、これを生産性の…
アバター
はじめに こんにちは あるいは こんばんは。 NewsPicks の Product Division Web Product Unit のイイダユカコ( @becyn )です。 この度、大変僭越ながらMs.Engineer 様主催の受講生の方々を対象とした寄附講座に参加させていただきました。 株式会社サイバーエージェントの神谷さん、freee株式会社の梅原さんとトークセッションをご一緒させていただいたのですが、お二方のお話が面白く、また初学者の方には特に刺さる内容を紹介されていて、具体的な内容も多かったので私自身も大変勉強になり、身が引き締まる機会となりました。 改めまして、暖かい雰囲気でお…
アバター
ニューズピックスの西薗(にしぞの)です。一人目のQAエンジニアとして入社したのが去年の6月なので、そろそろ一年です。かれこれ5年ほどはQAエンジニアとして働いていたものの、「一人目QA」も「自社サービスのQA」も「組織を作る」も全て初めてのことで、入社以来、なかなかに苦労しました。いろんな方の助けをいただきながら、進んだり戻ったりしつつ、なんとか少しずつ成果が見えてきた今日この頃です。 本稿では、この一年でやってきたことを4つのフェーズでまとめておこうと思います。 成果を急ぎ、苦手なことを頑張った 一つ目の成功体験 成功のパターン化 成功パターンを捨てる おわりに 成果を急ぎ、苦手なことを頑張…
アバター
ニューズピックス SREユニットリーダーの武藤です。私はここ数年は開発環境を近代化するために働いているのですが、最近では新しいメンバーから技術スタックについて「モダンですね」と言っていただけることが増えてきました。技術スタックの更新は最近ニューズピックスが会社として力を入れているところなので色々な分野でたくさんのエンジニアが関わっているのですが、SREに直接関係する範囲では特にChatOpsによるリリース作業について良い反応が多いので、ここで紹介します。 かつてどんな問題があったか 何をしたか 誰でも安全にリリース可能にする 特徴 改善点 集計バッチ実行中にリリース可能にする CanaryRe…
アバター
こんにちは。Product Teamでデータサイエンティストとして働いてるGaoです。 データサイエンティスト含め、Product Teamは普段チーム開発を行っており、常時ペアプロをしているのですが、1ヶ月間チームから離れて自由に開発をすることができる「1人プロジェクト」という制度があります。 今回、「1人プロジェクト」をやってみたので、感想等をお伝えできたらと思います。 1人プロジェクトをやるモチベーション 取り組んだテーマ 工夫したポイント 良かった事 伸びしろ 感じたこと 最後に 1人プロジェクトをやるモチベーション 私は新卒として入社し、基本的には常にペアプロ開発をやってきました。 …
アバター
はじめに こんにちは。Product Team の竹原です。SPEEDA の「セグメント比較」機能に関する開発を担当しています。 私が所属している開発チームでは、2022年1月〜3月の期間で新しい機能「セグメント比較編集」をリリースしました。 この機能の開発のため、フロントエンド・バックエンドともに新規実装をすることになりました。 しかし開発に着手した直後から2ヶ月間ほどは開発遅延が目立ち、チーム内に暗雲が立ち込めていましたが、 それを私たちがどのような解決策とともに乗り越えてきたのかをご紹介します。 はじめに 遅延の原因は何だったのか 1. 複雑なドメインに対する理解が浅かった 解決策: ペ…
アバター
はじめに こんにちは、@ko2icです。今回はAndroidのアーキテクトとして書きます。 ニューズピックスのモバイル開発は古い技術で古いアーキテクチャをいまだに使っていると思っていませんか?たとえば、Androidは昔のブログでMVPを利用しているとの記述が...。 そこからほぼ発信できていなかったのでそう思われるのも無理はありません。ただ、そんなわけはありません、日々、改善を続けています。 ちなみにiOSは、SwiftUIでThe Composable Architecture(TCA)をメイン機能であるニュースフィードで利用するなど、なかなかのチャレンジングなことをしています。他社でもS…
アバター
こんにちは。NewsPicksでエンジニアやっております崔(チェ)です。現在は Data / Algorithm チームで検索エンジン開発を担当しております。弊社は、検索エンジンとして Elasticsearch を Amazon EC2 に乗せて構築しておりますが、メンテナンスに消極的だった部分があり、これからはマネージド化や検索精度向上など積極的に取り組んでいきたいと考えております(伸びしろしかない!)。今回は、その中でも色んなタスクのボトルネックだったアルゴリズムを変更した話をしたいと思います。ただ、アルゴリズムの詳細よりもそれの変更のために行ったインフラ的な内容にフォーカスしております…
アバター
こんにちは。 Product Team の相川です。 現在はProduct TeamでINITIALというプロダクトの開発をしております。 昨年の5月頃から、チーム作りに関わる機会があったので、チームの立ち上げからどんなことをやっていたのか、ふりかえりと共にお伝えしていきたいと思います。 経験者と話す 作りたいチームをみんなですり合わせる 自分の理想像を明確にする 他の人の理想像を知る お互いを知る インセプションデッキを作る 1on1を行う 勉強会を行う 定期的なふりかえり 個人的にふりかえる チームとしてふりかえりをする チームビルディングの感想 おわりに 経験者と話す 弊社にはフェローと…
アバター
はじめに こんにちは、NewsPicksの小林です! 今回は、NewsPicks サービスのアプリに学割プランを追加するため、内製の学生認証を廃止して、外部認証サービスのSheerIDを導入したので、ご紹介したいと思います。 はじめに SheerIDとは 学生認証サービスの精査 SheerIDの導入 自社サービスとSheerID連携 SheerID認証フロー SheerID社と契約するにあたって 契約プログラム 最後に SheerIDとは SheerIDは学生や教師、医療関係者などのセグメントでユーザーのステータス確認を提供する会社です。SheerIDが提供する認証サービスを利用して、自社サー…
アバター
こんにちは。ユーザベース Product Team の old_horizon です。 私達の開発チームでは、E2E テストの実行環境として Zalenium を主に利用しています。 しかし 2020 年 3 月の最終リリースをもって開発が終了しており、将来的にリプレースを検討する必要がありました。 こうした状況の中で、Selenium Grid 4 が 2021 年 10 月にリリースされました。 その新機能の一つである Dynamic Grid が代替手段として有力に思え、まずは概要の理解から始めました。 Dynamic Grid とは 技術的な課題 Grid 4 の拡張方法 --ext …
アバター
こんにちは。 Product Team の相川です。 現在はProduct TeamでINITIALというプロダクトの開発をしております。 何回かに渡ってアジャイルについてブログを発信していこうと思い、ブログを書き始めました。 前回までユーザーストーリーについて書かせてもらいましたが、今回は自己組織化について考えていることについてお話します。 tech.uzabase.com tech.uzabase.com 自己組織化とは 自己組織化はいかにして実現されるのか 自己組織化とは イニシアティブをとる 仕事へのプライド 貢献へのプライド 巡回が得意なこと 自発的に動くこと 要するに まとめ おわ…
アバター
2022年3月11日に開催された「Observability Conference 2022 by CloudNative Days」に『NewsPicks のプロダクト開発エンジニアが実践する スキルとしての SRE』というタイトルで登壇しました。この記事はその内容についてポイントを絞って紹介しています。
アバター
こんにちは。NewsPicksのkitoです。 NewsPicksでは、JobPicksという「みんなでつくる仕事図鑑」をコンセプトにしたサービスを提供しています。様々な職種のロールモデルの実名でリアルな経験談を閲覧・投稿でき、就活、転職、副業の仕事選びに役立ちたいと思って日々開発しています。 開発メンバーは、チームリーダーでサーバーサイドとフロントエンド両方こなすOさんと、主にサーバーサイドを担当されるTさん、そしてフロントエンドエンジニアの私の3人で開発しています。 今回は、我々が企業ページと呼んでいる企業を軸としてロールモデルの経験談などをまとめたページをリリースまでにやったことを書きた…
アバター
はじめに こんにちは。Product Teamの中嶋です。 今回は、日々のペアプロでProduct Teamの皆さんが、普段どういったことを気をつけてペアプロをしているのかをご紹介したいと思います。 はじめに 慣れてない側としてのコツ わからない時は、「わからない」を口に出す ペアにスピード調整してもらう 慣れている側としてのコツ ペアプロ慣れてない人とのペアプロの心得を読む いま、どこを見てますよとちゃんと伝える 視覚的補助を入れる 質問のハードルを下げるためには ピンポンペアリングを試す その他 ペアプロって Apex と同じ? おわりに モブブロで書いたふりかえり 慣れてない側としてのコ…
アバター
こんにちは。 Product Team の相川です。 現在はProduct TeamでINITIALというプロダクトの開発をしております。 前回からアジャイルについてブログを発信していこうと思い、ブログを書き始めました。 前回はユーザーストーリーについて書かせてもらいましたが、今回はそのユーザーストーリーを小さくすることと大きくすることについて説明します。 tech.uzabase.com ユーザーストーリーは小さい方が良い 小さくリリースするので早くフィードバックをもらえる 見積もりがしやすい スコープの調整がしやすい ストーリーを出す時点での考慮漏れが減る ユーザーストーリーを大きくする …
アバター
こんにちは。Product Teamの北原です。 Product Teamでは普段チームでペアプロ開発をしていますが、1ヶ月間チームから離れて自由に開発をすることができる「1人プロジェクト」という制度があります。 今回、1人プロジェクトに参加してみたのでその感想についてお話しします。 1人プロジェクトに参加した目的 取り組んだこと、作ったもの 工夫したこと ビジネスサイドの方と頻繁にコミュニケーションを取った 1人プロジェクトの取り組み方や進捗を開発メンバーに共有しFBをもらう よかったこと 0→1を経験できた カンバンを用意しストーリー作成してアジャイルっぽく開発した 伸び代 事前調査が甘か…
アバター
はじめに こんにちは。Product Teamの中嶋です。 前回の記事では、Product Teamが普段どんなペアプロをしているのかを書かせていただきました。 今回はペアプロとXPの価値の一つである「フィードバック」について、自分なりに言語化していこうと思います。 はじめに ペアプロは最小のフィードバックループを形成する ペアプロは秒のフィードバック 先生と生徒の関係性では、先生以上の意見が出ない ペアでフィードバックループを回していくには? わからないことは素直に伝える ドライバーは自分のやっていることを実況する 実況をしながら進める例 積極的に質問をする 肯定のフィードバックも大事 おわ…
アバター
AlphaDrive、NewsPicks兼務でエンジニアしている大場です。 最近はNewsPicks Webの新基盤開発を行っています。 新基盤はNext.jsで開発していてAWSのFargateで構築しているのですが、このFargate上で取得したログをS3、New Relicに送るためにFluent Bitを導入しました。 今回はローカルでの実行・確認方法と、導入の過程で問題になったことを紹介します! Fluent Bit とは ローカル実行・確認方法 イメージの選択 設定ファイルの準備 デバッグ用の設定を追加する 動作確認 ltsv形式のログを展開する Stream Processorを…
アバター