Studyplus Engineering Blog

スタディプラスの開発者が発信するブログ

Ruby

Kaigi on Rails 2024に参加してきました!!

はじめに こんにちは!技術カンファレンスが大好きなWebアプリケーショングループの羽鳥です。 10月のVue Fes Japan、Kaigi on Rails、そして来週にはFlutterKaigiとJSConf JPを控えており、充実したカンファレンスライフを送っております。 少し時間が経っ…

Studyplus Engineering Podcast #27: 新卒Webアプリエンジニアの1年目の業務と競技プログラミング

こんにちは、クライアントグループの樋口です。 スタディプラスのエンジニアが配信するポッドキャスト「Studyplus Engineering Podcast」の新しいエピソードを公開しました。 「Studyplus Engineering Podcast」は、主にスタディプラスのエンジニアが、業務…

Studyplus Engineering Podcast #26 RubyKaigi 2024 参加レポート

こんにちは、SREグループの水口です。 スタディプラスのエンジニアが配信するポッドキャスト「Studyplus Engineering Podcast」の新しいエピソードを公開しました。「Studyplus Engineering Podcast」は、主にスタディプラスのエンジニアが、業務で関わった…

RubyKaigi 2024 参加レポート

こんにちは!スタディプラスがスポンサーしていたRubyKaigi 2024にエンジニア4名が参加しました。その参加レポートをお送りします。 tech.studyplus.co.jp RubyKaigiを楽しむためにやってよかったこと 事前勉強会 RubyKaigiは言語のコア部分に関わる発表が多…

スタディプラスはRubyKaigi 2024にゴールドスポンサーとして協賛します

こんにちは、スタディプラスのカンファレンス/OSSサポートチーム、菅原です。 RubyKaigi 2024がいよいよ来週開催に迫ってきました! 今年もスタディプラスはRubyKaigi 2024にゴールドスポンサーとして協賛しています。 rubykaigi.org 今年は沖縄県那覇市で開…

Ruby3.3 YJITによるパフォーマンス改善

こんにちは。サーバーサイドグループの山田です。 先日StudyplusのRailsアプリケーションのRubyを3.3にアップデートしました。 Ruby3.3ではYJITによるパフォーマンス改善が目玉の1つですが、弊社のアプリケーションでどのような変化があったかを報告します。…

rspec-openapiを導入した話

こんにちは、サーバーサイドグループの五十嵐です。 今年の4月に弊社に転職して初めて技術ブログを書きます。 今回はAPIドキュメントの作成ツールとしてGemrspec-openapiを導入した話について書いてみます。 弊社では以前からOpenAPIを導入しドキュメント管…

RubyによるGoogleSSO IDトークンの検証

こんにちは、サーバーサイドグループエンジニアの芳賀です。 今回は、業務で関わる機会があったため、Rubyを使用してgoogleauthライブラリを介してGoogleSSO IDトークンを検証する方法について解説します。Google Sign-Inを使用すると、ウェブアプリケーショ…

スタディプラスはRSpecとFlutterコミュニティ(Rémi Rousseletさん)に寄付しました

こんにちは。 スタディプラスのカンファレンス/OSSサポートチームです。 スタディプラスは2021年度に引き続き、今年度も会社としてOSSに寄付をしました。 opencollective.com github.com 寄付の取り組み 「なぜOSSへの寄付をするのか」については、昨年度の…

RubyMineを使い始めました

こんにちは。サーバーチームの森長です! 今年の1月にサーバーサイドエンジニアとして入社しました。 趣味は、スポーツ、旅行、音楽フェス参戦ですが、昨今のコロナ禍の影響もありインドアな趣味を探し続けております。 今回は、3ヶ月ほど前から弊社の一部…

突撃!隣のRubyGems

こんにちは、スタディプラスの島田です。好きな漫画は「葬送のフリーレン」です。 はじめに スタディプラスでは、Railsで開発しているプロダクトが2つあります。 Studyplus Studyplus for School それぞれのプロダクトはサービスの性質や歴史が異なり、別な…

スタディプラスはRubyKaigi Takeout 2021にPlatinum Sponsorsとして協賛しました!

こんにちは。サーバーグループの山田です。 最近好きな漫画は「アオアシ」です。 スタディプラスはRubyKaigi Takeout 2021にPlatinumスポンサーとして協賛させていただきました!今年で3回目のスポンサーとなります。 弊社スタディプラスもRubyKaigiにプラチ…

Zoom Marketplaceにアプリを公開するまで

こんにちは、Studyplus for School事業部エンジニアの島田です。 今回は先日リリースしたStudyplus for School(以下FS) のZoomとの連携機能と、そのリリースに至るまでのプロセスを紹介させていただきます。 prtimes.jp 導入の背景 Zoom OAuth Appについて O…

AWS Lambdaを使ったStudyplus for SchoolのLINE連携

こんちにちは、ForSchool事業部の島田です。 今回はStudyplus for School(以下FS)のLINE連携について紹介させていただきます。 LINE連携とは? LINEの「FS公式アカウント」と生徒の保護者が友だちになることで保護者と塾(講師)が連絡をとれたり、生徒(子供)…

Rubyアプリケーションのメモリ使用量上昇問題をjemallocを使うことで解決しました

こんにちは、スタディプラスの栗山(id:shepherdMaster)です。 今回はRubyアプリケーションのメモリ使用量上昇問題をjemallocを使うことで解決した話です。 Rubyアプリケーションのメモリ使用量上昇問題 弊社ではRuby on Railsをメインで使っていますが、Ruby…

GCP Cloud Firestore をRailsから使う

スタディプラスでサーバーサイドを担当している花井です。 先日田口さんが投稿したこちらのプロジェクトで、実験的にCloud Firestore / Cloud StorageとRailsでAPIを構築したので、その顛末を紹介します。 Firestoreの理由 今回のプロジェクトの要件に、一度…

Sidekiq Enterpriseを使う

お久しぶりです。サーバーサイドエンジニアの花井です。 みなさんは非同期処理に何をお使いですか? ActiveJobでしょうか? Resqueでしょうか? Sidekiqでしょうか? 弊社では歴史的経緯から、上記全てのgemをプロダクトで使っていますが、 この度Sidekiq En…