スタディサプリ Product Team Blog

株式会社リクルートが開発するスタディサプリのプロダクトチームのブログです

「現場で実践!RAG活用術 Lunch LT ― 運用して分かった"つらみ"とその対策」で登壇してきました&質問の回答 #RAG_Findy

AI

こんにちは。@chaspyです。 先日こちらのイベントで登壇してきました。 findy.connpass.com 発表資料はこちらです。 概要については以下の @aoi1 さんの以下のブログも参照ください。 blog.studysapuri.jp 内容は資料を見ていただきたいですが、ポイントとし…

FigmaのCode ConnectとCode Generation APIを導入しました

はじめに スタディサプリ小学・中学講座を開発している Android エンジニアの @maxfie1d です。 スタディサプリ小学・中学講座ではデザイナーがFigmaで作成したデザインデータをもとにエンジニアがUIのコードを書いています。 UIのコードを書くことはとても…

QAチームが行う非機能の試験〜障害許容性試験〜 Non-functional testing conducted by QA team - Fault tolerance testing -

非機能試験についての概要と、障害許容性試験について詳しく説明しています。

GitHub Actionsを利用したE2E自動化テストの実現 ~ Achieving E2E Automated Testing with GitHub Actions ~ 利用GitHub Actions实现E2E自动化测试

こんにちは。スタディサプリのQAチームです。 今回のBlogではスタディサプリで実施している自動化テストの一部の取り組みについて紹介させていただきます。 なお、スタディサプリQAチームの特性を活かし、本記事については日英中3言語で記載します。より多…

RAGを使って社内のGitHubリポジトリに散らばっているドキュメントを自然言語で検索できるSlack botを作りました

RAGを使った社内ドキュメント検索Botの構築 こんにちは!スタディサプリのSREをしている@_a0iです。みなさん、生成AI使っていますか〜!? ChatGPT, Graffer AI Studio, Microsoft Copilotなど企業で使える生成AIはさまざまだと思います。 しかし、仕事で生…

スタディサプリ小中高における AI 活用の現在

こんにちは。@chaspy です。スタディサプリ小中高の開発部長をしています。 AI の変化の勢いは凄まじいですよね。この1年で随分環境が変わったように思います。本記事では私たちが AI をどのように活用してきたか、これからどう活用しようとしているかについ…

Flutterによるネイティブアプリのリプレースプロジェクトを完遂しました

こんにちは、モバイルアプリエンジニアの @mtbhiro です。現在はスタディサプリ for SCHOOL(以下 forSCHOOL )1というプロダクトのモバイルアプリ開発を行っています。 Flutter による forSCHOOL アプリのフルリプレースプロジェクトを、2023年8月に Android …

GraphQL Trusted Documents の実装パターンを Signed Query に移行しました (Android編)

こんにちは、Androidエンジニアの@morux2です。スタディサプリ小学・中学講座ではデータ通信にGraphQLを採用しており、開発者が信頼したクエリのみを処理する仕組みとしてTrusted Documentsを実装しています。この度、従来のPersisted QueryからSigned Query…

dep-doctor による archived / not-maintained な依存ライブラリ検出の仕組み

こんにちは。@chaspyです。技術戦略グループのマネージャをしています。 本記事では dep-doctorという依存ライブラリのメンテナンス状態をチェックするツールを活用した事例を紹介します。 依存ライブラリのメンテナンス状態を確認したい スタディサプリ小中…

スタディサプリ中学講座で市区町村データの更新を行いました

こんにちは。教育支援小中高プロダクト開発部の @mtgto です。スタディサプリで小中学生向けサービスのバックエンド開発を担当しています。 今回は業務上で行った市区町村のデータの更新作業でわかった市区町村の再編処理について紹介します。 スタディサプ…

Signed Query は GraphQL の Trusted Document の新しい実装パターンです

こんにちは。スタディサプリの小中新規開発チームで Web エンジニアをしている @YutaUra です。 去年の4月に新卒で入社をしまして約 1 年が経ちました。インターン生時代にもブログを書いているのでご興味あれば合わせてご覧ください。 GraphQL と Persiste…

鼻をきかせろ!エンジニアバックグラウンドのないTPMが出せる価値について

こんにちは、スタディサプリTPM(Technical Product Manager) *1 の nozomikajimoto です。 突然ですが、私はエンジニアのバックグラウンドがありません。スタディサプリのTPMはエンジニア経験のあるメンバーがほとんどなので、少し変わったタイプだと自負し…

Amazon アプリストアでスタディサプリ小学・中学講座を公開するまで

スタディサプリ小学・中学講座を開発している Android エンジニアの @maxfie1d と @omtians9425 です。 2024年2月26日にスタディサプリ小学・中学講座をAmazonアプリストアにて配信を開始致しました。 すなわち今後は Fire タブレット においてもスタディサ…

スタディサプリ最大のRailsアプリケーションにYJIT+pitchforkを導入してメモリ使用量を劇的に削減するまで

こんにちは。SREのkyontanです。Rubyが大好きなのでRubyの話をします。ちなみにリクルートはRubyKaigi 2024へGold Sponsorとして協賛しています! *1。ぜひ沖縄でお会いしましょう。 これはあるアプリケーションのメモリ消費量を示すグラフなのですが、まさか…

エンジニアブランディングチームのご紹介

こんにちは、@chaspy です。エンジニアブランディングチームをやってます。 本記事では、先日参加した LT の紹介を通じて、ブランディングチームの活動内容を紹介していきたいと思います。 LT してきました smarthr.connpass.com こちらのイベントにお邪魔し…

何もしてないのにプログラムが完成する不思議な話

はじめに こんにちは。スタディサプリのiOSアプリの開発に携わっているk-koheyです。突然ですがみなさんは、「なにもしとらんのに壊れた」という言葉を聞いた事はありますか??ソフトウェア開発の現場では、ついさっきまで正常に動いていたプログラムが急に…

Engineering Manager のオンボーディング

こんにちは、@chaspyです。プロダクト開発部の部長をしています。 スタディサプリ小中高の開発組織では、Engineering Manager (以降 EM と記す) という役割があります。*1 その役割は、エンジニアリングマネージャ/プロダクトマネージャのための知識体系と読…

スタディサプリ小学・中学講座にRoborazziを導入して半年が経過しました

こんにちは、Androidエンジニアの@morux2です。 スタディサプリ小学・中学講座では、Visual Regression Test (以下 VRT)を実施しています。VRTは画像比較によるUIの回帰テストです。変更前後のコードそれぞれに対する画面のスクリーンショットを比較し、意図…

技術戦略策定のための Fact 収集術

こんにちは。@chaspy です。プロダクト開発部の技術戦略グループのマネージャをしています。 技術戦略グループでは、日頃開発する上での課題の投げ込みや議論、解決するための計画をボトムアップで行っています。技術戦略グループの活動については過去のアウ…

A/B テストによるプロダクトエンハンスを支援する PLG(Product Led Growth) Team のご紹介

こんにちは。@chaspy です。本記事で紹介するスタディサプリ中学講座の PLG(Product Led Growth) Team の Engineering Manager をしています。 本記事では、2023年2月に結成したこのチームの活動について紹介します。 スタディサプリ中学講座について PLG Te…

detekt × Dangerで、プルリクコメントにルール名を表示する

こんにちは。スタディサプリ Androidエンジニアの@morayl です。 本記事では、Kotlinの静的解析ツールであるdetektの解析結果をDangerでプルリクにコメントする際に、ルール名も一緒にコメントするためにしたことを紹介します。 Dangerの基礎言語であるRuby…

GitHub Copilot for Business 使っています

スタディサプリでエンジニアリングマネージャー等をしている @pankona です。 スタディサプリ (小中高、English) では GitHub Copilot for Business を使っています。本稿では、GitHub Copilot for Business を導入した背景と、導入後の活用方法について紹介…

スタディサプリ小中高プロダクト開発部2023年の登壇資料紹介

こんにちは。技術広報チーム*1の @chaspy です。本記事では2023年に発表されたスタディサプリ小中高の登壇資料を紹介します。 Summary 2023年の登壇は合計19件ありました。 技術領域別の内訳は以下です。どの領域も満遍なく登壇がありました。 技術領域 登壇…

スタディサプリ小中高の技術戦略について

この記事は Enginnering Manager Advent Calendar その2の1日目の記事です。(大遅刻しました) こんにちは。@chaspy です。10月からスタディサプリ小中高*1プロダクト開発部の部長をしています。 本記事では、我々の組織で取り組んでいる技術戦略の現状と…

社内技術ドキュメンテーションを科学する

部署内の技術トーク会にて、理想的なドキュメンテーションにおいて回避不可能なトレードオフと、それを踏まえた実践的な手順を発表しました。 その際のワークショップで得た他エンジニアが持つ Pains や知見、そして彼らからの反響を共有致します。

入稿devsチームで、校閲PDF出力機能のリニューアルをおこなった話【2/2 振り返り編】

こんにちは、スタディサプリで開発をしている @motorollerscalatron です。 前編では、「入稿」「校閲」ドメインの発足からサブチームへの切り出しと、校閲出力サービスのリニューアルのエピソードを技術的観点を交えながら共有させていただきました。この後…

入稿devsチームで、校閲PDF出力機能のリニューアルをおこなった話【1/2 入稿ドメインとは?〜開発事例編】

こんにちは、スタディサプリで開発をしている @motorollerscalatron です。 私は、5 年前に web エンジニアとしてスタディサプリに join していますが、今年に入ってから、今までの社内(中学講座の開発プロジェクト(通称 tara、最近は 小学講座も加わってい…

スタディサプリにおけるKarpenterの導入トラブル振り返り

スタディサプリにおけるKarpenterの導入トラブル振り返り こんにちは。スタディサプリ小中高SREの@aoi1です。 スタディサプリでは、Kubernetesを利用しているのですが、Nodeの運用自動化のために2023年3月から本番環境を含む全環境でKarpenterを導入していま…

Android チームが使っている GitHub Actions のユニークな自動化レシピ集🍞👨‍🍳

スタサプ小中高を開発している Android エンジニアの@maxfie1d、@morayl とスタサプ ENGLISHを開発している Android エンジニアの田村です。 GitHub Actions(以下 GHA) はアプリをビルドしたりストアに配信したりすることに使えるのはもちろん、もっともっと…

SLI の計測のために Envoy や service mesh を選択しなかった理由

こんにちは。スタディサプリの小中高プロダクト開発部で主にコミュニケーション機能の開発をしている @snowfield702 です。 今回はスタディサプリで SLI の計測に Envoy と service mesh を使うのをやめて Datadog APM を利用することにしたという話をしたい…