Classi開発者ブログ

教育プラットフォーム「Classi」を開発・運営するClassi株式会社の開発者ブログです。

アラート対応で気をつけていること

こんにちは!開発本部の id:lime1024 です。 アラート対応について社内で esa にまとめていたところ、参考になると社内でフィードバックをいただいたので開発者ブログでも紹介します。 前提として、平日日勤帯でのアラート発生を想定しています。 対応すると…

社内向けのデータ基盤から集計結果をReverse ETLしてサービスに組み込んだ話

ダッシュボード機能をリリースしました。 この機能のデータ集計は既存の社内用データ基盤からのReverse ETLで実現しました。 そのアーキテクチャの説明と「社内用データ基盤」から「ユーザー影響あるシステムの一部」になったことによる変化について紹介しま…

新サービスのブランド「tetoru」策定に至るまで

こんにちは。UXデザイン部の原田です。小中学校向けに「tetoru」というプロダクト開発に携わっています。 2022年4月に「tetoru」は正式リリースをいたしました。 corp.classi.jp 今回はこの生まれたてのサービスがどのようなプロセスを経て「tetoru」という…

Datadogで深夜バッチの失敗アラートを営業時間に受け取る方法

深夜の定期バッチの監視 Webサービスのオフピーク時に重たい処理を実行させるというのは一般的なプラクティスといえます。 特に深夜〜早朝は多くのサービスでバッチ処理を実行させているのではないでしょうか。 Webサービスだけではなく、当然バッチ処理も監…

DatadogでECS Fargate TaskのCPU利用率が100%を超えて表示されていたので調べてみた

こんにちは。開発本部の遠藤です。 ClassiではAmazon ECSをアプリケーション実行環境として利用しています。 ECSの各種メトリクスをDatadogを使ってモニタリングしながら、日々安定稼働しているかどうかをチェックしています。 そのうちの一つの重要なメトリ…

monorepoでのWeb Components配信アーキテクチャ

コミュニケーションチームのid:NozomuMiyamotoです。 Classiでは、2021年12月のAngularJSのEOLに向けて、Web Componentsを利用した段階的AngularJS脱出作戦を進めてきました。これはAngular Elementsと呼ばれるAngularで作成したコンポーネントをWebComponen…

Mock Service WorkerでAPIをモックして開発をスムーズに進められた話

こんにちは。開発本部 認証連携チームでエンジニアをしている id:ruru8net です。前回はこちらの記事を書かせていただきました。 tech.classi.jp 現在は認証基盤再建というプロジェクトの中で、主にフロントエンド開発を担当しています。この記事ではフロン…

開発メンバーの保守運用スキルを上げるため実施している朝当番制度の紹介

こんにちは、開発支援部基盤インフラチームの kenryooo です。 Classiでは過去の高負荷によるアクセス障害での反省を踏まえ、エンジニア向けに保守運用スキルを高める施策として、朝当番という制度を運用しています。今回はその紹介をします。 目的 朝当番制…

go generateを忘れていないかCIで検出する

こんにちは・こんばんは・おはようございます 開発支援部基盤バックエンドチームのid:aerealです。 今回は小粒でピリリと辛いちょっとしたテクニックをお届けします。 Goとコード生成 Goとコード生成は密接な関係にあります。 なにしろ go generate というサ…

コロナ禍で失われた交流と挑戦の機会を回復するためハードル低めの社内LT会を半年運営してみた話

みなさんはじめまして。Classi で開発支援部に所属するイノウエと申します。 当社は教育事業を手掛けているため、教育に関心のあるメンバーが集まっており、ジュニアメンバーに対する社内教育にも力を入れています。巷を騒がす感染症の流行により、当社でも…

「Python FlaskによるWebアプリ開発入門」の紹介

こんにちは、データAI部Pythonエンジニアの工藤( id:irisuinwl )です。 今回は弊社Pythonエンジニアである平田さんが著者の一人であるPython FlaskによるWebアプリ開発入門のご紹介をいたします。 Python FlaskによるWebアプリ開発入門 物体検知アプリ&機械…

完走したClassi developers Advent Calendar 2021を振り返って今年を締めよう!

挨拶 振り返り 12/1 id:tetsuro-ito: 開発本部長になってやったこと - tetsuroitoのブログ 12/2 沼沢一樹: GitHub に AWS 認証情報を持たせずに、Actions で S3 Backend な Terraform の plan を実行する - Qiita 12/3 id:tkdn: JSConf JP に参加してきまし…

2021年Classiに起こった変化の振り返り

VPoTの id:nkgt_chkonk です。この記事は Classi developers Advent Calendar 2021 25日目の記事です。昨日は平田(@JesseTetsuya)さんによるFlask App Builderでコンテンツマネジメントシステムとメタデータマネジメントシステムをさくっと作ってみたら役立…

Flask App Builderでコンテンツマネジメントシステムとメタデータマネジメントシステムをさくっと作ってみたら役立った話

この記事はClassi developers Advent Calendar 2021の24日目の記事です。 こんにちは、データAI部でPythonエンジニアをしている平田(@JesseTetsuya)です。普段は、PoCとデータをもってくる、というところ以外全部やる、というスタンスで開発業務を行っていま…

ISUCON11予選課題の27万点まで練習し新人エンジニアが学んだこと

こんにちは、プロダクト開発本部の2年目の[@minhquang4334](https://github.com/minhquang4334)です。 ISUCON11オンライン予選が終わった後、数百万点を達成したチームはどうやってそこまで出来たのかとずっと疑問でした。各チームの解説ブログを見てみまし…

トピックモデルを使って問い合わせ内容を分析した話

この記事はClassi developers Advent Calendar 2021の18日目の記事です。 昨日は基盤インフラチームのめるさんによる「バックエンドエンジニアが基盤インフラチームに異動して半年ほど経った話」でした。 こんにちは、データAI部でデータサイエンティストを…

UIKitでDesign Systemを実装する

この記事はClassi developers Advent Calendar 2021 の 14日目の記事です。 はじめまして。小中事業開発部でモバイルアプリエンジニアをしています拜郷です。 今回は新規開発中サービスのiOSアプリでDesign System1を実装するにあたって考えたことを書いてい…

IAM Policy Simulator で「必要な権限足りてる?」を確かめる

この記事は Classi developers Advent Calendar 2021 の13日目の記事です。 こんにちは。開発本部プロダクト開発部学習チームでエンジニアをしています、藤田です。 本記事では AWS の IAM の Policy の定義から、アクセス可能なリソース範囲・許可されるア…

EC2からECSへ移行する道のり

開発本部の onigra です。今回の記事は、Classiのアプリケーション実行環境をAmazon EC2からECSに移行しているお話をします。 この記事では「Ruby on RailsのWebアプリケーションをECSに移行する上での技術的なトピック」ではなく、「なぜClassiはEC2からECS…

Cloud Composer 2へのupgradeでどハマりした話

この記事は Classi developers Advent Calendar 2021 の10日目の記事です。 こんにちは、データプラットフォームチームの滑川(@tomoyanamekawa)です。 Google CloudのCloud Composerのversion2(Cloud Composer 2)がpreview公開され、Terraformでも10月末から…

Amazon EventBridge(CloudWatch Events)で動かしているバッチをDatadogで監視する仕組みを構築した話

開発本部 認証連携チームでエンジニアをしている、id:ruru8net です。 これはClassi developers Advent Calendar 2021の9日目の記事です。 昨日の記事はこちらです。 Hardening 2021 Active Fault 参加レポート - 桐生あんずです 以前のClassi Advent Calend…

リモートワークのための質問力向上研修を実施しました

この記事は Classi developers Advent Calendar 2021 の 7日目の記事です。 こんにちは。顧客サポート基盤チーム兼、技術戦略室にてエンジニアをしています、中島です。 みなさんは、日々仕事をする上で必須である「誰かに質問をする」という行為について、…

JSConf JP に参加してきました

開発本部の武田です。JSConfJP 2021 に参加してきましたので、気になったセッションを中心に感想をレポートしていきます。

Google Cloud Security Summitに登壇してきました

こんにちは、データAI部の滑川(@tomoyanamekawa) & 工藤( id:irisuinwl )です。 今日(2021-12-01)、2人でGoogle CloudのSecurity Summitに「Security Command Center から始めるクラウド セキュリティ運用」というタイトルで登壇してきました! その報告と発…

マネージャーからエンジニアに役割を変えた話

はじめに すっかり寒くなりましたが、皆さまいかがお過ごしでしょうか。Classiの佐々木(@sasata299)です。 タイトルにもありますが、9月まで担っていた開発本部長*1を離れて、10月からエンジニアに役割を変えました。この記事では、どんなことを思って、ど…

エラスティックリーダーシップ読書会 修了レポート

新卒入社三年目の小野です。校務チームで生徒を登録する機能の開発を行っています。 先日、弊社で新卒オンボーディングチームに所属されている @igaiga555 さんが主催するエラスティックリーダーシップ読書会を修了しました。会の概要や感想を書かせていただ…

iOSDC2021でアンケートを取らせて頂いたので結果を公開します!

はじめに こんにちは! Classi 株式会社でiOSエンジニアをしている横田です。 先日開催されたiOSDC2021、弊社もスポンサーとして協賛させて頂きました。 当日はメンバー数名も参加してセッションを見て、リアルタイムチャットで感想を共有したり補足し合った…

Python Conference JP 2021で登壇してきました!!

こんにちは、データAI部でPythonエンジニアをしている平田(@JesseTetsuya)です。普段は、PoCとデータをもってくる、というところ以外全部やる、というスタンスで開発業務を行っています。 今回は、PyCon JP 2021で登壇してきましたのでそちらの登壇ブログに…

インターン体験記

こんにちは。滋賀大学大学院データサイエンス研究科の白瀧 豪(しらたき ごう)です。 この度2021年9、10月の2ヶ月間、データサイエンティストのインターン生としてjoinさせていただきました。 このインターン期間の振り返りと学びなど書いていこうと思いま…

RubyKaigi Takeout 2021 参加レポート

はじめに Classi 株式会社 開発本部です。 先日開催された RubyKaigi Takeout 2021、弊社もスポンサーとして後援したりメンバ数名が参加してセッションを見たりして盛り上がりました。 毎日の開発で日常的に使いつつもどんな人がどのように作っているかをあ…

© 2020 Classi Corp.