TECH PLAY

株式会社ユーザベース

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

482

はじめに 経歴 キャッチアップ方法の結論 やったこと(時系列) 参画前(2ヶ月) Kotlin Android アーキテクチャ 参画後(6ヶ月) やっていたこと NewsPicksだからできたこと 最後に はじめに はじめまして、Androidエンジニアのa7therです。 Androidエンジニアとはいっても、まだまだAndroid開発に従事して8ヶ月の駆け出しのため、 自分なりの技術キャッチアップ方法と参画前後でどのようなことをしてきたかを書きたいと思います。 経歴 前提情報として自分の経歴を軽く.. 業務系Webアプリケーション開発と組込み系Java開発に約6年従事していました。 そのた…
NewsPicks SREチームのEdwin Wilsonです。 NewsPicksでは開発環境のテストデータのプロビジョニングを行うツールとしてDatarefreshというものがあります。 このツールは本番環境のデータストアから開発環境のデータストアに対してデータを同期するアプリケーションです。 対象のデータストアは以下となります。 Amazon RDS Amazon DynamoDB Amazon S3 Amazon ElastiCache 個人情報はRDSにのみに存在しており、マスク処理を行った後、同期しています。 DynamoDB ,S3, ElastiCacheには個人情報を存在しな…
はじめに これまでのNewsPicks有料プランの決済手段と課題 なぜキャリア決済にしたのか 開発 キャリア決済導入という山に登る ABテスト 振り返り はじめに こんにちは、NewsPicksエンジニアの上村です。 NewsPicksのプレミアム月額プランがキャリア決済に対応しているのはご存知でしょうか? これまで決済手段はクレジットカード決済のみでしたが、今年(2023年)3月に全ての新規購読者向けに(プレミアム月額プランのみ)3キャリアの決済手段が選択可能になりました。 そこで今回はキャリア決済導入の経過と学びについて書いていきたいと思います。 プレミアム月額プランでキャリア決済が選択可…
あいさつ 私たちの困りごと 原因はなんだろう? 解決策 おわりに あいさつ こんにちは。Product Team の冨田、阿波連、渡邉、鈴木、長田です。*1 本記事では、EmotionでスタイリングしたReactコンポーネントをWeb Componentとして出力しようとした時に、困ったことがあったので、解決方法をお教えします。 私たちの困りごと 私たちは、ReactコンポーネントをEmotionでスタイリングして、それをWeb Componentsとして出力することにしました。 以下のような感じです。 import { createRoot } from "react-dom/client"…
概要 どうやって指標を確認しているの? NewsPicksのFour Keysはどんな感じ? 改善前はどんな感じ? 改善のために何をした? 終わりに 概要 NewsPicksは「最高の開発体験の追求」をしている会社です。エンジニア向けのサイトの1ページでも謳っており、そこから弊社高山の記事に辿れるので、こちらも読んで頂けると幸いです。 そして、これはサーバーサイドだけの話しではなく、モバイルチームでも同じように開発者体験向上を目指し、Four Keysを追っています。 Four Keys とは、ソフトウェア開発チームのパフォーマンスを計測する4つの指標です。Four Keys 指標を用いること…
こんにちは。NewsPicks Expert開発チームです。 NewsPicks Expertはエキスパート・ネットワーク・サービスのアプリケーションの一部です。直近では主にエキスパートの情報の登録・編集機能の開発を進めています。 登録はこちらから => https://newspicks.expert/ 今回は開発チームで独自に行っている「学びの会」の取り組みについて紹介したいと思います。 取り組み紹介 経緯 起きたこと 課題と改善 こうしていきたい おわりに 取り組み紹介 学びの会は、毎日行っている朝会後の10分くらいの時間を利用して、それぞれのメンバーが業務外で学んでいること(主に業務で…
NewsPicksの高山です。 朝日新聞社のメディア研究開発センターさんとNewsPicksで、「ChatGPT/OpenAI API/LLM活用事例~NewsPicksと朝日新聞の合同勉強会を公開」というイベントを開催しました。 uzabase-tech.connpass.com 当日の動画アーカイブはこちらに公開されています。 www.youtube.com ここからはNewsPicksメンバーの発表を簡単に振り返っていきます。 NewsPicks 中村による発表 NewsPicks 雲越による発表 NewsPicks 七五三による発表 NewsPicks 崔による発表 NewsPicks…
NewsPicksで基盤開発に関するチームを率いつつ、UB Researchという企業研究所の立ち上げをしている高山です。 prtimes.jp 今日は2つの告知があります。 人工知能学会全国大会にスポンサー参加します UB ResearchではLLMに関する共同研究のパートナーも募集しています 人工知能学会全国大会にスポンサー参加します ユーザベースは、2023年6月に行われる第37回人工知能学会全国大会にゴールドスポンサーとして関わらせていただくことになりました。 ユーザベースとしてはこれまでもAI技術のプロダクトへの活用に力を入れており、SPEEDAやNewsPicksなど多くのプロダク…
皆様こんにちは、NewsPicksエンジニアの米澤です。 先日 2023/03/30は、こちらでアナウンスしていた通り、サービスの停止を伴うシステムメンテナンスを実施させて頂きました。 NewsPicksをご利用頂いている皆様には、ご迷惑おかけいたしました。 今回はこのメンテナンスの中で行われたDBテーブルのmigrationについてお話ししたいと思います。 ことの始まり やったこと 方針決め utf8mb4に対応していないテーブルを調べる migrationを作成する 影響範囲を調べる 開発環境でリハーサルを行う メンテナンスの日 最後に ことの始まり NewsPicksではバグの検知にBu…
はじめに スケジュール 1日目 2日目 おわりに はじめに NewsPicksエンジニアの七五三です。 最近はChatGPTの話題が尽きません。弊社でもChatGPT APIの社内勉強会やブログの執筆が行われ盛り上がりを見せています。 tech.uzabase.com そんな中、ChatGPTを利用したプロダクト改善アイディアの発散や実装事例の作成を目的にNewsPicksプロダクトチームで「ChatGPT開発合宿」が開催されました。 開催から少し日が経ってしまいましたが、本記事で合宿の様子をご紹介します。 スケジュール 3月30日から2日間に渡って開催された開発合宿は以下のスケジュールで進行…
こんにちは、NewsPicks サーバーサイドエンジニアの池川です。 こちらのイベントご存知でしょうか? server-side-kotlin-meetup.connpass.com www.youtube.com 実は先日 4/7 (金) に、東京駅目の前にある、ユーザベースオフィスにて、オフライン会場の提供をさせていただきました。 今回のブログではその裏側について書いていきたいと思います。 きっかけ 開催までの準備 リハーサル・当日の準備 当日 イベント終了後 終わりに (オフライン会場での勉強会に興味がある方々) 宣伝 ー LLM 勉強会 with 朝日新聞さん きっかけ 今年に入って以…
あいさつ 背景 Elastic APM と今回実装した Deno 向け Agent の概要 Elastic APM の簡単な説明 Elastic APM Agent で計測 Elastic APM Agent の使い方(簡単なミドルウェアのコード例つき) 設計と実装 環境 Middleware として実装 Span の計測と fetch へのパッチ 外部 API 呼び出しを計測する方針 Span 計測処理の実装 fetch のパッチバージョンである fetchForApm のテスト 今後の展望 あいさつ こんにちは。Product Team の 下川、9sako6、手嶋、藤原です1。 本記事で…
こんにちは。ユーザベース TechBrandingチームです。 2023年3月28日(火)にオンラインイベントイベント「データサイエンティストによるエクストリームプログラミングのススメ - UB Tech vol.7 - connpass」を開催しました。 登壇者について 二木拓也 (a.k.a. にっきー) 氏(@ftnext)株式会社ユーザベースSaaS事業 Product Division データサイエンティスト2016年からソフトウェアエンジニアとなる。2019年にデータサイエンティストとしてユーザベースにJoin、 大学では、サーバ・ネットワーク系学部を専攻していました。この度は、企…
こんにちは、NewsPicksの北見です。 ところで皆様、テストコードって書いてますか...? ネットでテストコードについて検索すると 「テストコードを書きましょう」 「テストコードとはこうあるべし」 「TDD(Test Driven Development)だ」 等々が叫ばれています。 ただ、なんとなく「方法論ありきでとにかくテストを書け」と言われているようで、テストの必要性について納得感に欠けている方もいらっしゃるのではないでしょうか? なぜ テストコードを書くのでしょうか? テストコードを書く理由 将来リファクタリングをしやすくする テストコード書く途中で、開発者自身が仕様を理解し、成長…
NewsPicksモバイルチームの森崎(asa)です。 今回はモバイルチームで取り入れているライブラリの自動更新について紹介します。 スピーディーかつ複雑な開発が求められる現場では、ライブラリにお世話になることも多いと思います。しかし、実装時の楽さとは引き換えにライブラリのバージョンアップデートの追従や、ライブラリ自体がメンテナンス停止で移行を余儀なくされたりと、保守コストが上がってしまうという側面に悩まされる経験がある方も多いと思います。 そんな悩みを解消してくれるのがライブラリの更新の自動化です。今回の方法はモバイルだけでなくバックエンドやフロントエンドでも導入可能になっています。参考にな…
こんにちは、AlphaDriveでWebアプリケーションエンジニアをしている畠山(keyamin)です。 CI/CD Conference 2023 by CloudNative DaysにNewsPicks SREチームの安藤と合同で登壇し、「最高の開発者体験を目指してAWS CDKでCI/CDパイプラインを改善し続けている話」について発表しました。 発表内容の詳細につきましては、以下のアーカイブやスライドをご覧いただければと思います。 アーカイブ スライド 感想 アーカイブ event.cloudnativedays.jp スライド NewsPicks www.docswell.com A…
NewsPicks エンジニアの中村です。普段はデータ基盤や機械学習システムの開発、運用をやっています。 さて皆さん、すでにChatGPTは使っていらっしゃるでしょうか。エンジニア、非エンジニアを問わず世の中を席巻している感のある ChatGPT ですが、今月初めにいよいよ API も公開されて、アプリケーションやサービスに組み込みたいと考えている方も多いのではないでしょうか1。 というわけで、弊社でもこの新しい技術をより多くのエンジニアに使いこなせるようになってもらいたいと考え、ChatGPT API に関する社内勉強会を先日開催しました。本記事ではこの勉強会の内容を再構成してお届けします。…
はじめに イベントについて 参加してみて 当日の資料等 当日の Togetter の様子 スライド スライド内で紹介したプロダクトなどのリンク さいごに はじめに こんにちは!NewsPicks の Web Reader Experience Unit で Web フロントエンドを中心にエンジニアをしております、イイダユカコ( @becyn )です。 このブログは、3月8日に Findy 社主催の アクセシビリティのイベント、「高まるウェブアクセシビリティの需要ーfreee×ニューズピックスー〜フロントエンド最前線〜」に登壇した内容を紹介するものです。 イベントについて 当日はフロントエンドエ…
iOSエンジニアの金子です。 NewsPicks iOSアプリでは2021年7月ごろからThe Composable Architecture(TCA)を採用したアーキテクチャへの移行を進めています。 tech.uzabase.com メインのニュースフィード画面もTCA+SwiftUI/UIKitで全面的に書き換え、TCAを使った実装もだいぶこなれてきたなと思っていた矢先、TCAで大きなアップデートがありました。 tech.uzabase.com このReducerProtocolへのマイグレーション作業を1月から開始し、1ヶ月ちょっとかけてようやく全てのReducerをReducerPro…
NewsPicksのWeb Reader Experience Unitで学生インターンをしています。西(@yukinissie)です。 弊チームの開発基盤では、reg-suitやstorycapを利用したVisual Regression Test(以降 VRT)を導入しています。本ブログではVRTが誤検知した動画やアニメーション周りの問題に対してどのように解決したかをそれぞれご紹介します。 VRTの誤検知とは? 行ったこと 1. 既存のコードに触れずにReactPlayerの再生をテスト時には静止させる 2. 描画に時間を要するアニメーションには撮影に遅延秒数を設定する まとめ VRTの導…