名前空間を用いたQuickSight上でのマルチテナントの実現

こんにちは、スタメンの滿本、若園、田中、近藤です。スクラムでのチーム名は、チームねぎまです。 (2022年冬からスクラム開発に移行しました) 本記事では、QuickSightの概要、マルチテナント構成とその運用方法について紹介します。 QuickSightとは QuickSi…

Next.js×NestJSをモノレポで構築/運用してみました

こんにちは、スタメンエンジニアの手嶋です。普段はRuby on RailsやReactなどの技術を用いて開発しています。最近はフィーチャーチーム体制に切り替わったこともあり、AWSなどの技術にも触れる機会が増えました。 これまで複数のプロジェクトにおいてReact(T…

スタメンインターン体験記

はじめに こんにちは。takumma といいます。株式会社スタメンで一ヶ月半ほどインターンをさせていただいたので、そこで体験したことを文章として残そうと思います。 本当はインターンでお世話になった社内の方達に向けて社内ドキュメントに投げようと思って…

Deviseにおける認証ロジックの実装

TL;DR (概要) Deviseにおける認証ロジックの実装 認証処理の流れ カスタムストラテジーの実装 カスタムストラテジーの呼び出し default_strategiesとして呼び出す ストラテジー名を指定して呼び出す その他 Tips FailureApp(エラーハンドリング用のクラス) h…

TUNAG(ツナグ)の技術と開発体制のすべてを紹介します!

こんにちは。CTOの松谷です。現在はCTOとTUNAG開発部部長を兼務しており、CTOとして会社全体の技術統括を行いながら、TUNAG開発部長として開発組織マネジメントを担っています。 本記事では、スタメンの創業事業であるTUNAGについて、プロダクトと開発体制の…

FANTSの開発技術・開発組織を紹介します!

目次 はじめに FANTSとは 技術について 組織について 開発体制 エンジニア おわりに はじめに FANTS事業部の開発部の部長をしている田中(@sukesan_st)です。2021年9月から開発部門の部長としてチームのマネジメントをしています。去年は料理とサウナにハマっ…

FANTS ダッシュボードを支えるフロントエンド技術

こんにちは、株式会社スタメンで FANTS のフロントエンド開発を担当している @0906koki です。 今回の記事では、本日リリースした FANTS ダッシュボードのフロントエンド開発で選定したフレームワークやライブラリ、ディレクトリ構成について解説します。 目…

【AWS FireLens 徹底解説】カスタムFluent Bitイメージで複数種類のログを扱う

こんにちは、スタメンの松谷です。 最近、Ruby on Railsアプリケーション環境をECSへ移行しましたが、ログ管理には FireLens for Amazon ECS (以下FireLens)という仕組みを利用しました。 この記事ではFireLensについて説明し、実際の要件にどのように対応し…

スタートアップのプロダクト成長の舞台裏とコンテナ化までの道のり

こんにちは。スタメンCTOの松谷です。 最近、弊社が提供している 「エンゲージメント経営プラットフォーム TUNAG」 と 「オンラインサロンプラットフォーム FANTS」 のアプリケーション環境をECS上のDockerコンテナへ移行しました。約5年間、EC2で本番運用し…

Ruby on Rails 5.1から6.1へのバージョンアップをカナリアリリースしました

こんにちは、スタメンのエンジニア、津田です。最近、弊社のサービスで、Ruby on Rails を 5.1 から 6.1 へバージョンアップした際、社内ユーザーからのリクエストのみを6.1環境へ送るカナリアリリースを実施したため、対応をまとめました。 今回は、Railsバ…

2021年上半期 社内勉強会レポート

こんにちは。株式会社スタメンの井本です。Railsによるバックエンド開発、およびSRE業務を担当しています。 弊社では頻繁に社内勉強会が開催されています。書籍をテキストとして使用するものや、ハンズオンがメインのものなど、形式は様々ですが、有志が週に…

スキーマ駆動開発、はじめました

目次 はじめに スキーマ駆動開発とは 導入背景 課題 実現したい状態 スキーマ定義 ドキュメントの閲覧 バックエンド APIのテストに利用 フロントエンド モックサーバとしての利用 導入してどのように変わったか? おわりに はじめに スタメンでエンジニアを…

Reactive variables【Apollo Client】による local state 管理

はじめに はじめまして、株式会社スタメンのミツモトです。 普段は、REST API をベースに React + Redux で開発しています。 最近になり開発者体験の向上、プロジェクトのスピードアップという観点から、社内でスキーマファーストな開発に関心が集まっていま…

Next.js + NextAuth.js + Prismaで認証付きアプリケーションの作成

こんにちは。フロントエンドエンジニアの渡邉です。 普段はReactとTypeScriptを書いています。 今回は自分がNext.js + NextAuth.js + Prismaを使って認証付きアプリケーションを作成する際の土台を紹介をしようと思います。 フロントエンドエンジニアとして…

All set for Jetpack Compose?

モバイルアプリグループでおもにAndroidアプリ開発している@sokumeです。 Android エンジニアの皆さん、Jetpack Composeへの準備はバッチリでしょうか。 2019年にJetpack Composeの発表があり、2021年7月にはJetpack Composeバージョン1.0がリリースされると…

プロダクト部の社内勉強会を刷新しました

TL;DR (概要) スタメン モバイルアプリGでAndroid・iOSアプリを開発してるカーキです! 昨年から、プロダクト部の勉強会の主催を担当させてもらっています。 突然ですが、皆さんの会社ではどのように社内勉強会を実施されているでしょうか? スタメンではこ…

Redux/Storeのデータを正規化しパフォーマンスの向上を狙う

はじめに こんにちは、スタメンでエンジニアをしている手嶋です。普段は、React+TypeScriptでフロントエンドメインで開発をしています。 弊社のプロジェクトではフロントエンドの状態管理ライブラリとしてReduxを使用していますが、直近のプロジェクトにおい…

Storybookについて調べてみました。

目次 はじめに Storybookとは メリット 導入方法 サンプルの解説 アドオンの紹介 おわりに はじめに 初めまして。 株式会社スタメンのフロントエンドグループでエンジニアをしている神尾です。 普段は弊社が運営しているエンゲージメントプラットフォームTUN…

【MySQL】トランザクションの実行時間を調査する

はじめに こんにちは、スタメンの松谷(@uuushiro)です。この記事では、MySQLのパフォーマンススキーマを利用し、トランザクションの実行時間を調査する方法を紹介します。なお、検証に利用した実行環境は Amazon Aurora MySQL5.7互換 です。 なぜトランザク…

CIでのiOSアプリ依存パッケージビルド時間を削減する

iOS

mohamed HassanによるPixabayからの画像 こんにちは、スタメンでモバイルアプリ開発を担当している @temoki です。 2月に Mobile Act ONLINE #3 というオンライン勉強会に参加し、iOSパッケージマネージャー奮闘記 というテーマで発表しました(詳しくは以下…

React Hook Formとは?煩雑なフォームのstate管理を楽に実装する!

目次 はじめに Reactを使用したフォーム設計パターンについて React Hook Formとは ? React Hook Formの基本機能の紹介 React Hook Formのユースケース 最後に はじめに こんにちは、株式会社スタメンでエンジニアをしています、ワカゾノです。 Rails、React…

RailsのActiveRecord::AttributeMethods::Dirtyを使ってみた

ActiveRecordのattributeの変更状況を確認できるRailsのActiveRecord::AttributeMethods::Dirtyモジュールの使い方の検証結果と活用例を紹介します。

Reactでコンポーネントを実装する際に意識している4つの話

こんにちは。フロントエンドエンジニアの渡邉です。 普段はReactとTypeScriptを書いています。 今回は自分がコンポーネントを実装する際に意識していることについていくつか紹介できればなとおもいます。 ※ スタイリングに関して話すときはstyled-components…

Ruby on RailsとCypress

https://www.cypress.io 目次 はじめに Cypress cypress-on-rails おわりに 1. はじめに はじめまして、株式会社スタメンでエンジニアをしています伊藤です。普段はRuby on Railsを使っているサーバー側の人間なのですが、重要な機能を守るためにE2Eテストを…

実務未経験の文系大学生がエンジニアインターンをしてみて

はじめに こんにちは!スタメンでエンジニアインターンをしている松山です。約半年間インターンをしてきました。今回はインターンの振り返りを書いていこうと思います。 自己紹介 私は現在、愛知県の大学2年生です。大学では社会福祉を専攻していてその中で…

社内勉強会レポート(コンピュータ・サイエンス)

スタメンエンジニアの井本です。 普段の業務ではRuby on Railsを用いた機能開発を担当しています。 前職である電気回路の設計エンジニアからWebエンジニアに転身し、11月から働いています。 スタメンでは、エンジニアの技術力向上に力を入れており、社内勉強…

HTTPヘッダーのContent-Typeを自在に扱う

目次 はじめに HTTPヘッダーとは Content-Typeの概要 検証内容 おわりに はじめに こんにちは、スタメンでエンジニアをしている手嶋です。普段はReact+TypeScriptでフロントエンドを開発したり、RailsでAPIを作成しています。クライアントサイドからサーバー…

新卒1年目の終わりに「達人プログラマー」を読んでみた

はじめに こんにちは、スタメンでエンジニアをしている梅村です。20卒として昨年の4月から正式に入社し、もうすぐ1年が経とうとしています。そんな自分が「達人プログラマー」を読んでみた感想と、自分にどの部分が活用できるかを紹介していこうと思います。…

2021 & Android 12

モバイルアプリグループでおもにAndroidアプリの開発を行っている @sokume です。 Android開発者の方であれば興味関心の尽きない、Android OS 12 Developer Preview 1 が2/18日に公開されましたね。 毎年の事ではありますが、2021年の新OS Android 12への対…

Reactでメモ化によるパフォーマンス改善を狙う

はじめに はじめまして。株式会社スタメンでエンジニアをしております永井です。 今回の記事ではReactでメモ化によるパフォーマンスを意識した実装方法について書きたいと思います。 なぜパフォーマンスを意識した実装が大切なのでしょうか。 なぜなら、ユー…