スタディサプリ Product Team Blog

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

CXプラットフォームKARTEを活用したコスパの良い機能開発のススメ

こんにちは。スタディサプリ小中高のWebアプリの開発を担当している @kiki-ki と tsukamoto です。 スタディサプリでは5年ほど前からCXプラットフォームとして KARTE という外部サービスを利用しています。本記事では私たちのチームでのKARTEの活用方法につ…

小学背景デザインのご紹介と実装上の工夫

こんにちは。iOS エンジニアの @_nkmrh です。 今回は『スタディサプリ 小学講座』の背景画面のデザインについてご紹介します。 1 月から 12 月までの季節感やイベントを踏まえた複数バリエーションの背景をいかに効率よく実装したか、デザイナーとのコミュ…

SwiftUI の NavigationStack の実践的な使い方と制限の克服

iOS

あけましておめでとうございます。 スタディサプリの iOS エンジニアのヴァンサンです。 最近、スタディサプリ 小学・中学講座 iOS アプリ(以下スタサプ小中 iOS)で SwiftUI のナビゲーション周りの改善に取り組んできました。SwiftUI のナビゲーション AP…

開発組織が事業貢献するには

こんにちは。@chaspyです。『スタディサプリ 小学・中学・高校講座(以下、スタディサプリ小中高)』の開発部長をしています。この記事はスタディサプリProduct Team Advent Calendar 2024の25日目の記事です。 まずはじめに、このアドベントカレンダーを執…

Jenkins から Argo Workflows 移行に挑戦した話

Merry Christmas! SRE Team の @panicboat です。 突然ですが、皆さんはジョブ基盤に何を使っていますか? Jenkins や Digdag、Apache Airflow など多くの選択肢があり組織にマッチするものを選択するだけでも苦労しますよね。 今回はジョブ基盤を Jenkins …

oapi-codegen の strict-server オプションを使ってより硬くサーバーサイドを実装する

スタディサプリ小中高でエンジニアリングマネージャーやソフトウェアエンジニアをしている @pankona です。 本稿では oapi-codegen の strict-server オプションを使った開発事例を紹介します。 OpenAPI と oapi-codegen OpenAPI とは、Web API の仕様を記述…

Xcode ProjectにローカルのSwift Packageを追加する2つの方法の違い

背景 まず、Swift Package、Xcode Project、およびXcode ProjectにSwift Packageを追加する方法について説明します。なお、説明は全てXcode 15.4の挙動に基づいています。 Swift PackageはSwiftのソースコードや関連するリソースファイルを1つにまとめる仕組…

k6+TypeScriptでRSA公開鍵を用いたチャレンジレスポンス認証を突破する

k6+TypeScriptでRSA公開鍵を利用し、各VUごとにAPIのチャレンジレスポンス認証を突破する手法について紹介します。

エンジニアリングマネージャーはいいぞ

こんにちは。スタディサプリの開発組織でエンジニアリングマネージャー(以下、EM)をしている @ojiry です。 本稿はスタディサプリProduct Team Advent Calendar 2024 20日目の記事になります。 私はEMになってから3年と3ヶ月ほど経つのですが、その中で得…

Credential Managerに移行するために調べたこと

こんにちは。スタディサプリ Androidエンジニアの@moraylと@omtians9425 です。 スタディサプリのAndroidアプリでは、ID/パスワードの記憶に CredentialsApiを使っている箇所がありました。現在はCredential Managerが推奨となっており、そちらへ移行するた…