ブックマーク / tech.stockmark.co.jp (30)

  • コアメンバーの連続退職、エンジニア組織崩壊の危機から、退職ゼロ・人員倍増に至るまでの話

    2023年の4月から、プロダクト開発チームのEMを務めている岩谷です。記事では、当時プロダクトエンジニア13人中3人の退職が重なる中々しびれる状況から、エンゲージメントや開発品質の改善に向き合い、怒涛の半年間が過ぎ、現在21人の組織になるまでに取り組んできたことや学びについてご紹介できればと思います。 事業背景2023年3月以前、以下のような組織体制で、私はML Engineering / MLOpsを推進する基盤チームのEMを勤めておりました。 プロダクト開発チームは、いわゆるマトリクス組織で、3つの職能横断のフィーチャーチームを構成し1つのAnewsというプロダクトを開発していました。エンジニアは全体でEMが1名、チームごとにエンジニアのリーダーがおり、開発の運用方法は全て各チームに委ねられている状態でした。 そんな中、EM1名、リーダー1名、エンジニア1名が新しいチャレンジの場を求

    コアメンバーの連続退職、エンジニア組織崩壊の危機から、退職ゼロ・人員倍増に至るまでの話
    iwashi86
    iwashi86 2024/01/25
  • 破壊的変更を乗り越えてVue3移行達成した話

    はじめにこの記事では、私たちが開発しているAnewsというプロダクトでのVue 3移行プロジェクトについて紹介していきます。 Anewsはビジネス向けにユーザーの趣向に合わせて日々のニュースなどの最新情報を提供するプロダクトです。フロントエンドVue.jsというフレームワークを使用しています。2023年末にVue 2のサポート期限が迫っており、それまでにAnewsのVue 3移行を完遂すべく、Vue 3移行プロジェクトを行いました。 そこで得られた知見としてVue 2とVue 3の違いや、必要だった対応、実際に行った移行戦略などまとめていきたいと思います。 移行前の環境今のAnewsは2020年に開発がはじまり、AnewsはVue 2.6.12、TypeScriptを使用していました。 TypeScriptを活用して開発するため、TypeScriptのクラスでVueのコンポーネントを定義

    破壊的変更を乗り越えてVue3移行達成した話
    iwashi86
    iwashi86 2023/12/20
  • 改善施策のプランニングが鍵 - 大規模バッチ処理のテストフレームワーク刷新プロジェクト

    こんにちは、エンジニアリングユニットの飯森です。 先日、Anewsのバッチ処理のテストフレームワークを刷新するプロジェクトに取り組みました。 記事ではこの取り組みについて紹介します。 記事を読むことで、以下の2点が分かります。 バッチ処理のテストフレームワークの刷新をどのように進めたのかストックマークでは工数がかかる改善施策にどのように取り組んでいるのかプロジェクトの背景最初に、Anewsのバッチ処理とそのテストフレームワークについて説明します。 Anewsとバッチ処理ストックマークはAI 情報収集プラットフォームAnewsを運営しています。 Anewsでは、ニュース、論文、特許といった様々な情報を国内外約35,000メディアから収集し、AIによる最適な情報配信を提供しています。 Anewsで配信されるコンテンツ(フィード)には様々な種類があります。 例えば、ユーザーの興味や嗜好に合わ

    改善施策のプランニングが鍵 - 大規模バッチ処理のテストフレームワーク刷新プロジェクト
    iwashi86
    iwashi86 2023/12/06
  • ビジネスのドメインや最新情報に対応した130億パラメータの日本語LLMの公開

    Research部門の近江崇宏です。 ストックマークではビジネスのドメインや最新情報(2023年9月まで)に対応した130億パラメータの大規模言語モデル(LLM)を商用利用も可能なライセンスで公開しました。 モデルはHuggingface Hubからダウンロードいただけます。 https://huggingface.co/stockmark/stockmark-13b このモデルは、合計2200億トークンの日語のテキストデータにより事前学習が行われました。 一般に事前学習でよく使われるWikipediaやCommonCrawl由来のコーパスだけではなく、当社が独自に収集しているビジネスに関連するWebページや特許などのデータも用いました。 そのため、既存のモデルに比べると、最新の情報やビジネスのドメインに対応したようなモデルになっております。 実際に、ビジネスに関連する知識を問うタスクで

    ビジネスのドメインや最新情報に対応した130億パラメータの日本語LLMの公開
    iwashi86
    iwashi86 2023/10/27
  • 価値検証を高速化するために開発チームで意識していること

    はじめにどのスタートアップ企業でも、プロダクトリリースサイクルの高速化・最適化を心がけているかと思います。記事では、ストックマークのプロダクトである Anews の新機能(論文配信)を例にとって、ストックマークの開発の実際について紹介いたします。 記事から学べる点は大きく 3 点です。 高速な価値提供を実現するために意識すべきことフロー効率の極大化によりユーザー価値へつなげる方法中期目線で開発速度を保つ方法それでは、それぞれ個別に 1 つ見ていきましょう。 高速な価値提供を実現するために意識すべきことどんなプロダクトであっても、実装しようとしている機能は、何らかの方法で検証してみるまで顧客にとって必要なものか分かりません。記事のテーマである論文配信機能についても同様ですが、少なくともユーザーインタビューなどの仮説検証で一定のニーズは確認できていました。 ニーズまでは確認できているので

    価値検証を高速化するために開発チームで意識していること
    iwashi86
    iwashi86 2023/07/03
  • 記事中のノイズ削除方式 - ChatGPTとの比較

    記事執筆時点の2023年4月時点で、ChatGPTのニュースを見ない日はないほど、世の中にChatGPTの記事が溢れています。「こんなことに使える」「あんなことに使える」と応用範囲が広いChatGPTですが、「あたかも当然のように嘘をつく」ように決して万能なわけではなく得手不得手があります。そんなChatGPTに対して、プロダクト開発側に立つ方にとって気になるのは「実際にプロダクトに組み込めるのだろうか?」という点でしょう。 そこで、記事ではストックマークのプロダクトで実現している「記事中にあるノイズ削除」にフォーカスして、自社で利用するモデルとChatGPTとを比較していきます。なお、プロダクトに組み込む場合は、ChatGPTではなくAPIを利用するケースが自然ですが、GPT-4ベースのAPIを執筆時点で利用できなかったことから、ChatGPT Plus(GPT-4)を利用しています

    iwashi86
    iwashi86 2023/05/08
  • AWSのコスト削減: ストレージクラスの最適化

    クラウドインフラに関わるコストは、各企業にとって1つの重要テーマかと思います。毎月、支払うコストであり、数%の増減であったとしても最終的にかなりの金額になります。 昨今の為替事情もあり、そんなクラウドインフラのコストを弊社で削減してきた方法を記事で紹介いたします。記事を読むことで、実例と共に手法を学んでいただけます。 何を実施したか?ストックマークでは、クラウドインフラに AWS を活用しています。AWS のコスト削減のプラクティスは広く知られており、公式からもドキュメントが提供されています。 具体的な方法の中からいくつか代表的なものを取り上げると次のような項目があります。 コスト分析と監視リザーブドインスタンス、スポットインスタンスの活用オートスケーリングの活用ストレージの最適化データ転送の最適化リソースの削除や停止たとえばリザーブドインスタンスの導入といったすでに利用中なものもあり

    AWSのコスト削減: ストレージクラスの最適化
    iwashi86
    iwashi86 2023/04/19
  • 6千万記事レコードの大規模データマイグレーション

    記事では、ストックマークで2022年の12月に実施した、6千万件を超える記事レコードの大規模データ基盤マイグレーションについて紹介いたします。記事を読むことで、大規模データマイグレーションの勘所を実例から学べます。 記事でお伝えする内容は以下の4点となっています 背景検討の進め方大変だったこと再現可能な知見背景ストックマークでは大量の記事データを利用するプロダクトとして、AnewsとAstrategyの2つのプロダクトがあります。どちらのプロダクトも共通の記事データストアにある内容に、プロダクトごとの弊社独自の自然言語処理を加えたものを活用しています。アーキテクチャを簡単に表すと次のようになっています。 AnewsとAstrategyでは解決する顧客課題が異なります。それぞれのプロダクト観点ごとに、顧客価値のディスカバリーを最優先としたことから、お互いのプロダクトで独自に進化してきた

    6千万記事レコードの大規模データマイグレーション
    iwashi86
    iwashi86 2023/02/17
    書きました!
  • 月間1.6億秒の Lambda x Node.js 利用から得られた知見

    はじめにStockmark のプロダクトでは、各メディアから記事を収集するために AWS Lambda (実行環境はNode.js) を大量に利用しています。「大量」とは実際にはどの程度なのかを紹介すると、月間で 1.6億 秒ほど(1日で約60日分) 使用しています。もしかしたら「えっ、なんでそんなに使っているの?」と思われているかもしれません。 記事ではその疑問に回答しつつ、実運用から得られた知見を一部共有していきます。段階的に理解いただけるように、技術選定理由から説明していきます。 なぜ Node.js なのか?なぜ AWS Lambdaなのか?Lambda x Node.js でスクレイピングする際の落とし穴ということで、早速1つ目からいってみましょう! なぜ Node.js なのか?ストックマークのプロダクトでは、Web記事などを中心としてスクレイピングして収集した情報をベースに

    月間1.6億秒の Lambda x Node.js 利用から得られた知見
    iwashi86
    iwashi86 2022/10/19
    書きました
  • プレスリリース駆動開発で起こった3つの変化

    ストックマークではプロダクト開発の方法として、プレスリリース駆動開発を採用しています。このアプローチは Amazon で Working Backwards と呼ばれる方法に類似した方法です。記事では、実際にプレスリリース駆動開発を実施すると何が起こるのか?という点について紹介します。今後、プロダクト開発においてプレスリリース駆動開発を採用してみようかな?という方には、有益な情報になると思います。 先に実物を紹介記事でベースとしているプレスリリースは Astrategy というプロダクトの新機能になります。 詳細は実物をご覧いただければと思いますが、内容草案はまさにプロダクトのPRD(Product Requirements Document)や、実装が進む前からプロダクトオーナーが書いていたものです。 では、詳細検討が進む前にプレスリリース案を作成すると、社内では何が起こるのでしょう

    プレスリリース駆動開発で起こった3つの変化
    iwashi86
    iwashi86 2022/08/29
  • 開発チームのスケールに向けたブランチ戦略見直し

    概要組織の拡大に伴う開発チームの分割、独立性向上のためにGitHubの運用フロー見直しと同時にFeature Flagの導入を行いました。 結果として、独立した開発をしてもコンフリクトが発生しづらくなったことにより生産性が向上、副次的効果として部分リリースにより問題の先行発見をしやすくなり、品質向上にもつながりました。 背景:GitHubのブランチ戦略がチームスケールの弊害にプロダクトや会社の成長に伴い、開発チームにはスピードと安定性の両面が求められるようになっていきますが、少人数のメンバーだと限界がやってきます。実際に、小さな改善はできるけど、ソフトウェアアーキテクチャ自体を見直すような大きな改善施策は、新規開発もある中で中々優先度を上げられないような状態が起きていました。 このような状況下で、開発組織としては総スループットを向上させる必要がありますが、単純に同じプロダクトの開発人数を増

    開発チームのスケールに向けたブランチ戦略見直し
    iwashi86
    iwashi86 2022/06/22
  • 個別最適でプロダクトを作り続けたスタートアップがデータ専任部隊を作ることにした話

    2022/5/25 に Stockmark Tech Meetup #02 を開催しました!記事では、2つ目のLTである “個別最適でプロダクトを作り続けたスタートアップがデータ専任部隊を作ることにした話” を再編成してお伝えいたします。記事を読むことで、以下の2点が分かります。 AIスタートアップが膨大なデータに立ち向かってきた歴史ストックマークが抱える膨大なデータに対して、どのように開発チームがアプローチしているかストックマークのプロダクトはデータに支えられているまず前提として、ストックマークのプロダクトである Anews と Astrategy はどちらも、国内外で公開されている膨大なデータを利用しています。 上図のデータはWebクローラーによって毎日収集され蓄積されています。実装としては、大量のAWS lambdaによる汎用的な収集・抽出処理が内部で動作しています。Webクロー

    個別最適でプロダクトを作り続けたスタートアップがデータ専任部隊を作ることにした話
    iwashi86
    iwashi86 2022/06/13
  • 日本語ニュース分類から見る多言語モデル

    グローバル化が進む現代において、様々な言語で情報収集を行う必要性がこれまで以上に高まっています。Stockmark ではそうしたお客様の情報収集を支援するために多言語テキストの解析にまつわる研究が行われています。日はその基礎技術である多言語モデルについて紹介します。 多言語モデル (multilingual language models, crosslingual language models) は複数の言語を扱うことができる言語モデルです1。リソースが十分にない言語での下流タスクにおいて、多言語モデルのパフォーマンスが単言語の言語モデルよりも優れていることが報告されています (Wu and Dredze 2019)。また多言語を1つのモデルで扱えるようになることで、言語ごとに異なるモデルを用意する必要がなくなるという運用上の利点もあります。こうした点から近年では多言語モデルは自然言

    日本語ニュース分類から見る多言語モデル
    iwashi86
    iwashi86 2022/05/02
  • 検索エンジンのMore-Like-Thisクエリとグラフアルゴリズムによる類似記事集約

    記事は Grouping Similar Articles with Search Engine More-Like-This Queries and Graph Algorithms の翻訳記事です。以前の記事である More Like This Query を活用した類似記事集約 入門 から、より踏み込んだ内容になっています。 はじめにストックマークでは、毎日数千のメディアから数万件のニュース記事を収集しています。そのときに、異なるメディアから類似した内容の記事がクロールされることもあります。その一方で、これらの内容の重複した記事をそのままユーザに表示してしまうと、ユーザの情報収集体験を損ねてしまう可能性があります。そのため、ストックマークのプロダクトであるAnewsので記事推薦や、Astrategyでの事業活動比較などのニュース分析サービスにおいて、より良いユーザー体験を提供するた

    検索エンジンのMore-Like-Thisクエリとグラフアルゴリズムによる類似記事集約
    iwashi86
    iwashi86 2022/04/28
  • Grouping Similar Articles with Search Engine More-Like-This Queries and Graph Algorithms

    Grouping Similar Articles with Search Engine More-Like-This Queries and Graph Algorithms Please refer here for a related post in Japanese. IntroductionIn Stockmark, we collect tens of thousands of news articles from thousands of different media sources every day. Articles with similar content may be crawled from different news media. It is vital to detect and group similar articles in order to pro

    Grouping Similar Articles with Search Engine More-Like-This Queries and Graph Algorithms
    iwashi86
    iwashi86 2022/04/15
  • More Like This Query を活用した類似記事集約 入門

    はじめに記事では、ストックマークのプロダクトの実装で工夫している類似記事集約という技術について紹介します。技術により、多くのドキュメントを扱う機会がある場合に、お客様に高い価値を提供できるようになります。 ストックマークでは社内のResearchチームと連携して、類似記事集約において実装面での工夫をいくつか積み重ねています。記事ではまずイントロダクションとして、特にコアとなる OpenSearch の More Like This Query について紹介します。今後公開する別記事では、さらに発展的な類似記事集約の仕組みを紹介予定です。 さて、記事で扱う主なトピックはこちらです。 類似記事集約がなぜ必要なのか?類似記事集約の実装方法とロジックストックマーク独自の工夫過去記事を含む再適用というわけで早速、題に進みましょう! 類似記事集約がなぜ必要なのか?ストックマークのプロダクトは

    More Like This Query を活用した類似記事集約 入門
    iwashi86
    iwashi86 2022/04/11
    書きました。類似記事をまとめるために使っている More Like This を軽く紹介してます。Productionではさらに高度なことを実践しているので、それは次の記事にて。
  • 開発速度向上のためのAnewsモバイルアプリのアーキテクチャ改善

    はじめにこんにちは、Anewsのエンジニアリングマネージャーの山崎です。 この記事はストックマークアドベントカレンダーの22日目の記事です。 普段は、エンジニアリングマネージャーとして開発体制や中長期のエンジニア戦略を考えています。 またエンジニアリングマネージャーとは別にエンジニアとしてAnewsのFlutterアプリの開発を行なっています。 Anewsの開発組織では全員がフルスタックエンジニアとして働くことを推奨しており、 開発体制やプロセスについてもフロントエンド、バックエンドなどの領域を意識せず顧客への価値提供を最大化するためエンジニアが必要な開発を行うようにしています。 その中で、モバイルアプリだけは固定されたメンバーで開発を行うような体制になっています。 理由としては、 ・ モバイルアプリの開発経験が少ない ・ モバイルアプリのコードが複雑になっており、学習コストが高くなってい

    開発速度向上のためのAnewsモバイルアプリのアーキテクチャ改善
    iwashi86
    iwashi86 2021/12/23
  • Anewsへの応用を見越した既存ニュース推薦手法の性能確認実験

    ML事業部の金田です。今回はAnewsへの応用を見越して実施した、公開データセット(MINDデータセット)を用いた既存ニュース推薦手法の性能確認実験について紹介します。なお、実験で用いたコードはこちらに公開しています。 背景当社の開発する法人向けサービスのAnewsには、ニュース推薦システムが実装されています(その概要は以前の記事で紹介したとおりです)。 このシステムは、製品開発の初期段階に構築されたものです。その際には顧客要求を素早く叶えることが優先されており、当時はニュース推薦システムの研究動向を十全にフォローアップできていませんでした。構築以降に実施されたシステム品質改善も、顧客から寄せられた問題の解消を目的としていたため、「そもそも技術的観点から現行システムにどの程度改善の余地があるのか?」という疑問に対して、これまで明確な回答を用意できていませんでした。 この問題を解消するため、

    Anewsへの応用を見越した既存ニュース推薦手法の性能確認実験
    iwashi86
    iwashi86 2021/12/08
  • 自由と責任を開発チームにもたらしたら開発速度が上がった話

    ストックマークの開発体制は、プロダクトの成長フェーズに合わせて、2021年夏に大きく進化しています。エントリでは、何が課題でどう進化したのか?を紹介いたします。エントリを読むことで、スタートアップの開発体制で発生する課題と、その解決方法の1つを理解できます。 サマリ開発チームのパフォーマンスが最大化できていなかった開発チームに自由と責任を委譲し、より自律的な行動を促進したスクラムを辞めて、カンバンを主軸とする開発へその結果、開発スピードが大きく向上し、より迅速にアウトカムを提供できるようにどんな課題が存在していたのか?大きく分けて、開発チームに関する2つの課題が存在していました。 課題1: リソースの偏りストックマークの以前の開発体制(〜2021年8月)では、Anewsの開発チームは大きく分けて、 以下の2つが存在していました。 情報収集機能を開発するチームコミュニケーション機能を開発

    自由と責任を開発チームにもたらしたら開発速度が上がった話
    iwashi86
    iwashi86 2021/10/18
  • AWSを活用した機械翻訳のためのGPU並列処理環境の構築

    はじめにこんにちは、ストックマークでエンジニアをしている麻生です。ストックマークでは、「Anews」というウェブサービスを提供しています。この度、Anewsで新機能導入のために日次バッチの大規模なインフラ変更を行い、GPU並列処理環境を構築しましたのでご紹介します。 組織の自律化を支援するナレッジプラットフォーム「Anews」Anewsは国内外30,000メディアのニュースを毎日収集し、最先端の自然言語処理で個人や組織のミッションに即したニュースをレコメンドします。コメント機能で簡単にチームにアイデアを共有でき、社内の知見者から学ぶことでチームの情報感度が底上げされます。 エンタープライズを中心に、累計1500社以上のお客様にご利用いただいているサービスです。 英語記事をレコメンドする上での課題Anewsでは、記事への行動履歴からユーザーや組織の好みを学習し、記事をレコメンドしています。ユ

    AWSを活用した機械翻訳のためのGPU並列処理環境の構築
    iwashi86
    iwashi86 2021/06/15