IntelliJ IDEA Code With Meでペア・プログラミングする

こんにちは。スタメンで開発者をしている津田です。IntelliJ IDEA系のIDEでリモート共同開発と、ペア・プログラミング行うためのツール、Code With Meが9月末にEAPリリースされたため、同僚と試用してみました。 Ruby on Railsアプリケーション開発のペア・…

プロジェクトマネジメント入門ちょっとだけ

こんにちは。スタメンでエンジニアリングマネージャーをしている @temoki です。 前回、プロジェクトマネジメント入門以前という記事でプロジェクトマネジメントとは何なのか?について次のようにまとめました。 プロジェクトとは 独自の目標を達成するため…

useSelectorとuseDispatchでcontainer componentを排除する

はじめに こんにちは。株式会社スタメンでフロントエンドエンジニアをしております@0906kokiです。 React Hooksが2019年にリリースされてから、Reduxの実装でコンポーネントがstoreと接続する方法に選択肢が増えました。 具体的に言うと、今までconnect関数…

Reactでページネーションを実装

目次 はじめに ライブラリ(react-paginate)の導入 ページネーションの実装 おわりに はじめに こんにちは、スタメンでエンジニアをしている手嶋です。今回は「react-paginate」というライブラリを使用し、Reactでページネーションを実装する方法を紹介したい…

Update to Android 11

スタメン、プロダクト部で主にモバイルアプリ開発(Android/iOS)を行っている @sokume です。 早速ですが、皆さんスマートフォンつかっていますか?スマートフォンは年に1度位、大きなアップデートが実施されています。アップデートが来たらできるだけ更新…

プロジェクトマネジメント入門以前

こんにちは。スタメンでエンジニアリングマネージャーをしている @temoki です。 私がスタメンに入社した2年前、プロダクト部のエンジニアは10人くらいでしたが、現在はその倍以上のメンバーとなりました。 その中にはエンジニアだけではなく、ディレクター…

Lighthouseを使ってパフォーマンス監視する

こんにちは。フロントエンドエンジニアの渡邉です。 普段ReactとTypeScriptを書いています。 目次 Lighthouseとは Lighthouseを導入しようとした経緯 使ってみる 最後に Lighthouseとは Lighthouse is an open-source, automated tool for improving the per…

【Stripe】サブスクリプションの支払いタイミングが特定日時においてズレる問題について

スタメンでエンジニアをしている田中です。 今回は決済プラットフォームであるStripeのサブスクリプションを扱う際に遭遇した問題について、発生した事象とその原因、および対策方法についてご紹介します。 なお、本記事ではStripeのサブスクリプションにつ…

Microsoft Teams連携機能を実装する

目次 はじめに 「Incoming Webhook」を使用したMicrosoft Teams (以下、Teams) 側の設定 Railsアプリケーションの実装 おわりに はじめに こんにちは、スタメンでエンジニアをしているワカゾノです。 TUNAGでは、タイムラインへの投稿が作成される際に、Team…

Redux Style Guide に学ぶ

はじめに こんにちは、スタメンでエンジニアをしているミツモトです。 スタメンでは、Web アプリのクライアント側の状態管理に Redux というライブラリを採用しています。 Redux によって API のレスポンスやローカルで扱う値を自由に状態管理できますが、デ…

rbs_rails & steep で型のある Rails 開発を体験しよう

こんにちは。スタメンの河井です。 RubyKaigi Takeout 2020 が楽しみですね。 Ruby 3.0 から型定義 & 型検査ができるようになると言われていますが、今の段階でもそれに関連した gem は公開されています。 今回は型のある Rails 開発を体験してみようという…

モバイルアプリとデザインガイドライン

はじめに スタメン、プロダクト部で主にモバイルアプリ開発(Android/iOS)を行っている @sokume です。 先月に弊社のブログでプロダクト部の個人モバイルアプリたちという、記事が投稿されましたがお読みいただけましたでしょうか? プロダクト部メンバーが…

ConstraintLayout2.0で追加されるFlowを使ってタグを実装する

みなさんこんにちは! スタメン プロダクト部 モバイルアプリチームでiOSとAndroidのアプリ開発を行っているカーキです。 先月の29日に ConstraintLayout2.0-rc1がリリースされましたね! リリースノートには「安定版前の最後のリリース」とあるので、Constr…

システム思考でアラート運用に関する問題を考える

スタメンの松谷(@uuushiro)です。この記事ではアプリケーションのアラート(エラー通知)運用に関する問題を「システム思考」で構造的に捉え、どのように改善していこうとしているのか、ということを紹介します。「システム思考」についても記事内で簡単に説明…

プロダクト部の個人モバイルアプリたち

目次 概要 はじめに 各サービスの紹介 まとめ 概要 こんにちは。スタメンでエンジニアをしている梅村です。今回は、スタメンのプロダクト部のエンジニアが個人開発しているモバイルアプリについての紹介を行っていこうと思います。 はじめに スタメンのプロ…

Star Code: プロダクトチームの VISION (目指している姿) と VALUE (価値観や行動指針) を改定しました

こんにちは、スタメン VPoE(開発部門の責任者) の小林です。 2020年7月に、スタメンのプロダクトを作っているプロダクト部の全員で合宿を行い、Star Code の改定を行いました。今回は改定した Star Code とその背景をご紹介したいと思います。 なお、はじめ…

Dynamic Reducerの実装方法

はじめまして。株式会社スタメンでフロントエンドエンジニアをしている永井です。週5で筋トレをしています。 弊社のプロダクトであるTUNAGでは、フロントエンドをReact、Redux、TypeScript、サーバーサイドをRuby on Railsで実装しています。 今回の記事では…

iOSアプリ開発においてSwiftのErrorを巧く活用するには

iOS

モバイルアプリ開発に限らずソフトウェアの実装においては必ずエラーハンドリングが必要になりますよね。Swiftのエラーハンドリングでエラーとして取り回されるのが `Error` です。今回はこの `Error` について深堀りし、巧く活用することを考えてみようと思…

【Ruby on Rails】Stripeのサブスクリプションで試したことをまとめてみた

スタメンでエンジニアをしている田中です。 今回は決済プラットフォームであるStripeのサブスクリプションについて、Rubyで実際にコードを書きながら調査をしたので、そのまとめを記述していこうと思います。 目次 Stripeのサブスクリプションについて 準備 …

Utility Typesで楽に、Type Transformしよう

こんにちは。フロントエンドエンジニアの渡邉です。 普段ReactとTypeScriptを書いています。 今回はTypeScriptのUtility Typesについて紹介します。 記事のタイトルが某 大柴さんみたいになっていますが、この記事を読んだ方の力に少しでもなれたら幸いです…

Amazon Athenaでのパフォーマンスログ分析

Amazon Kinesis Firehose 概要 こんにちは。スタメンで開発者をしている津田です。今回は、Amazon Athenaを利用しアプリケーションのリクエスト処理時間をセグメント別に計測することで、パフォーマンスの低下を検知しやすくしたことについて紹介します。 動…

こんな時こそ社内ネットワークを見直そう

こんにちは、モバイルアプリグループでモバイルアプリの開発をしている @sokumeです。 実は日々の開発の傍ら、社内の情シス担当として社内のネットワーク環境の検討や改善に取り組んでいます。 今年の4月〜6月までの間、弊社も新型コロナウィルスに関しての…

Recoil触ってみた

Recoil入門 こんにちは。フロントエンドエンジニアの渡邉です。 最近フロントエンド界隈で盛り上がっているRecoilについて学びました。 本記事は自分のRecoil入門のついでに記事にしたので、初級者向けになっています。 目次 Recoilとは 使ってみる API Refe…

【Ruby/Rails】Firebase Cloud Messaging を利用してプッシュ通知を一括送信する

こんにちは。スタメンで主にバックエンドの開発を担当している河井です。 今回は Firebase Cloud Messaging(以下 FCM)を利用したプッシュ通知の一括送信について書いてみます。 背景 実は以前にも FCM を利用した通知の記事を書いていて、そこでは各デバイ…

GatsbyJS で みそかつウェブ の採用イベントサイトを作る

はじめに こんにちは。スタメン エンジニアのミツモトです。 普段は弊社のプロダクトである「TUNAG」、「TERAS」の開発を行っており、プライベートではみそかつWeb(@misokatsu_web)というグループで活動しています。 みそかつウェブの活動として、5/30(土)…

redux-sagaと仲良くなろう!

概要 はじめまして。スタメンでフロントエンドエンジニアをしている@0906kokiです。筋トレを週5でする筋肉エンジニアです。 普段はReactとTypeScriptで開発をしていますが、サーバーサイドのRailsもAPIを作成するタイミングで触ります。 弊社のプロダクトで…

リモートワークでのプロダクト部の取り組み

はじめに 20卒の新卒で入社したモバイルアプリチームのカーキです. スタメンでは昨今の新型コロナウイルスの感染状況を鑑みて4月から原則リモートで業務を行なっています. リモートでの業務ではZOOMを使用し、インターン生も含めた全17名が同じ部屋でカメ…

仕様やUIの決定は戦略的に

こんにちは、スタメンでディレクターをしている@nicka0001です! 普段は主にTUNAGの改善施策の企画、設計やプロジェクトマネジメントを行なっています。 今回は、サービスを運用していくにあたっての戦略的な機能企画について書いていきます。 戦略の必要性 …

useEffectを理解する

こんにちは。フロントエンドエンジニアの渡邉です。 スタメンで開発しているサービスの新機能は、React v16.8で追加されたhooks等を使って開発しています。 その中でも本記事ではuseEffectについて触れていこうと思います。 目次 hooksとは useEffectの第二…

AWS 認定ソリューションアーキテクト-アソシエイトに合格したので振り返ってみる

こんにちは、スタメンでバックエンドのエンジニアをしている河井です。 今年の3月に AWS 認定ソリューションアーキテクト-アソシエイト(SAA-C01)を受験し、合格したので勉強した内容や受けて良かったことについて振り返りをしてみます。 ※現在は SAA-C02 …