はじめに はじめまして。キカガクプラットフォーム部の ずんだ です。 最近個人開発で Chrome 拡張機能を作っていて、Plasmo Framework というライブラリを使ってみたところ超絶便利だったので、布教したいです。 想定読者 React を使ったことがある人 Plasm…
はじめに 背景と取り組みの内容 コンテンツ 画像 ファイル管理・アップロード CDN導入後のパフォーマンス おわりに はじめに はじめまして、キカガクでプロダクトマネージャーをしている丸山です。 今回は私がソフトウェアエンジニアをしていた頃に、キカガ…
こんにちは、キカガク for Business のエンジニアをしている 上野 です。 今回は数万ユーザー規模の会社への導入に備えて Firestore を使用したアプリケーションのパフォーマンス改善に取り組んだので、その紹介記事になります。Firestore を使用したアプリ…
こんにちは、キカガク ソフトウェアエンジニアの平田です。 CSS のレスポンシブ対応って、大変ですよね。 調べても、こうすれば良い!の指針が意外と出てこない、経験値でカバーすることが求められる領域だと感じています。 PC オンリーの想定で実装を進めて…
はじめに 皆さんこんにちは、株式会社キカガク CTO の祖父江です。今回はメンバーからの発案で「全員採用!発信するぞ!」ということで弊社プラットフォーム部(プロダクト開発に関わるチーム)のメンバー全員でブログを執筆します。文章を書くことから離れ…
弊社に必要な導入要件 Google API Gateway の選定 実際のアーキテクチャ 苦労した点 ヘッダーのトークンが上書きされてしまう問題 OpenAPI 2.0 を使用している点 まとめ 株式会社キカガクの北田です。 今回はキカガクのバックエンドとインフラストラクチャを…
「普段勉強している内容を共有してみよう」と言う軽い発案から、キカガク社内では勉強会を5月に開催しました。 その結果、一回の勉強会ではなく「週次勉強会」に変更する運びになり、 半年ほど継続的に勉強会を行うことができました。 今回はこの「週次勉強…
こんにちは。キカガクプラットフォーム部の石橋です。 キカガク for Business ではクライアントフェッチのライブラリとして SWR を採用しています。 SWR の使いこなし術として、SWR 2.0 から追加されたオプションのひとつである keepPreviousData を使いロー…
株式会社キカガクのプロダクトデザイナーの松田です。 1人目デザイナー時代から採用を経て、デザイナー2名と業務委託デザイナー2名と計4名のチームとしての動きだしが始まりました。 しかし、1人体制だった時の運用をチームで同じようにやろうとしてもうまく…
プラットフォーム部(旧開発事業部)の ソフトウェアエンジニアの dascarlet です。今回は我々プラットフォーム部のエンジニアがどんな技術でどのように事業を支えているかを弊社のプロダクトと共にご紹介したいと思います。大部分は Google Cloud を利用し…
プラットフォーム部(旧開発事業部)の dascarlet です。今回は Next.js と NestJS を利用し、 kikagaku.ai の管理アプリを立ち上げた話をします。ここで言う管理アプリとは、弊社の社員・講師がお客さまのデータを閲覧したり、必要な操作を行えるアプリケー…
こんにちは、キカガクソフトウェアエンジニアの石橋です。 今回はキカガク for Business でのフロントエンドパフォーマンス向上への取り組みに関して共有したいと思います。 キカガク for Business は主にアプリの画面構成を2つに分けることができます。 学…
はじめに こんにちは、キカガク ソフトウェアエンジニアの柳澤です。 普段の開発では Chakra UI を使っているのですが、先日1ヶ月だけ Tailwind CSS を使って開発を行いました。Chakra UI を触ってきたエンジニアが Tailwind CSS を触って戸惑ったことと・良…
バックエンド環境を提供するサービスとして今や名高い Firebase。 使ってみたいけど・・・ データベースが NoSQL 。 触ったことないしなあ。ちょっと敷居が高いなあ・・・。 そんなあなたに。 SQL に累計5年以上浸かってきた開発チームの新顔古川が初めて Fi…
こんにちは、キカガク開発事業部ソフトウェアエンジニアの柳澤です。 キカガクではReactのUIコンポーネントフレームワーク「Chakra UI」でスタイリングを行っています。 Chakra UI にはスタイルシステムだけでなく、コンポーネントやカスタムフックが多く用…
はじめに こんにちは。開発事業部でエンジニアをしている西村です。 かなりピンポイントですが、今回は react-beautiful-dnd を使用してドラッグ&ドロップを実装する際に、ドロップ時のアニメーションをスキップする方法についてご紹介します。 ※本記事では…
こんにちは!株式会社キカガクの開発事業部でソフトウェアエンジニアをしている塚井です。RDB 脳の私が NoSQL に挑戦して苦しんだ設計書についての話を書こうと思います! 対象読者 NoSQL の設計書をどうまとめるか悩んでいる方向けの記事となります。 概要 …
こんにちは、キカガクでエンジニアをしている北田です。 今回は私達がリリースしている学習プラットフォーム「kikagaku.ai」 のフロントエンドのディレクトリ構成を紹介していきます。 対象読者 フロントエンドに寄せた開発チームのディレクトリ設計を考えて…
開発事業部の dascarlet です。今回は Cloud Firestore セキュリティ ルールを GitHub で管理するように変更し、GitHub Actionsからデプロイできるようにしたお話をします。 経緯 今までのセキュリティルールの運用では以下のような改善できる点がありました…
こんにちは!株式会社キカガクの開発事業部でソフトウェアエンジニアをしている塚井です。数ヶ月前からフロントエンドエンジニアとなるべく奮闘中です。今回はそんな中で経験したライブラリ依存症に陥った話を書きたいと思います! 対象読者 今回伝えたいこ…
ReactのUIコンポーネントフレームワーク、 Chakra UI を使って自在なデザインを作るための小技集をご紹介します。
はじめに こんにちは、株式会社キカガクでエンジニアをしている北田です。 ついにキカガク開発チームでも技術ブログを開設しました!(祝) 先日、私たちが提供する E ラーニングプラットフォーム【キカガク】は Vue (Nuxt.js) → React (Next.js) への技術刷…
はじめに algolia とは 機能実装の上で発生した問題と修正方法 algolia の制限 発生した問題 修正方法 おわりに はじめに こんにちは、開発事業部でソフトウェアエンジニアを担当している藏野です。主にフロントエンドを担当しており、新規機能開発や改善を…
はじめに やっていただいて嬉しかったこと <入社前> 使用技術についてしっかりと説明する。そのおすすめの勉強法も伝える。 メンターを付けて、入社までの学習もフォローする。 <入社から業務に入るまでのインプット期間> ゴールから逆算して習得すべき知識…
はじめに TL;DR システム概要図 フロントエンド TypeScript Next.js Chakra UI Jest × Firebase Local Emulator Suite バックエンド Firebase Firebase Authentication GCP (Google Cloud Platform) GKE を採用していない理由 悩んでいること データ分析基盤…
この記事で学べること ヘッドレス CMS のように使える「AWS Amplify」と純粋なヘッドレス CMS である「microCMS」を使った結果、なぜ microCMS を選んだのか こんにちは!株式会社キカガクの開発事業部でソフトウェアエンジニアをしている塚井です。数ヶ月…
前提 状況 整理整頓 Step0: 前提知識 Step1: 整理の軸を決める Step2: 仕様を整理する Step3: 手段の整理 結論 おわりに こんにちは、開発事業部で PM をしている丸山です。 キカガクでは昨年夏に GCP を中心としたデータ基盤へ移行しました。 データ基盤で…
キカガクの事業 キカガクが考える教育 開発組織について マイクロチーム×横断チーム スクラム開発の導入 おわりに こんにちは、キカガク CTO の祖父江です。キカガクは AI・機械学習の会社と面接で言われることも多いのですが、「あるべき教育で人の力を解放…