Yappli Tech Blog

株式会社ヤプリの開発メンバーによるブログです。最新の技術情報からチーム・働き方に関するテーマまで、日々の熱い想いを持って発信していきます。

huskyの仕組みを調べてみた

サーバーサイドエンジニアの田実です! ヤプリのフロントエンドの開発では、huskyを使ってコミット前にlint-stagedを実行し、eslintやprettierでフォーマットしています。 huskyがどのようにして動いているのか興味があったので調べてみました。確認したhusk…

クエリ実行エラー予防に便利な関数3選【Sexy Tech for You #7】

データサイエンティストの阿部です。読書の秋ですね。今年読んだ教養書では『統計学を哲学する』、『サピエンスの未来』の2冊が印象深いです。 さて、明日から使いたくなるデータハンドリング術を紹介する "Sexy Tech for You" の第7話を配信しました。魂を…

Webフロントエンドのパフォーマンス改善の取り組み

フロントエンドエンジニアの小林です。 Yappliでは「Yappdate Day(ヤップデートデイ)」という取り組みがあります。Yappdate Dayとは、「改善する日」のことで、その日は改善案件のみ実施し、プロダクト開発本部メンバーが1日がかりでプロダクトや業務に関…

ヤプリの開発本部マネージャーになってみたよ

こんにちわ、サーバサイドエンジニアの山田です。 冬も近づき急に寒くなりましたが、ヤプリの筋肉CFO角田は変わらずコンプラ違反丈の半ズボンで社内をうろついてます。 「ツノダさんってTwitterで半袖短パンのキャラ作っちゃったから、長袖着たくても着れな…

ファイルの埋め込みをstatikからgo:embedに置き換えた

Go

サーバーサイドエンジニアの田実です! Yappliではメールテンプレートや多言語化の設定ファイルをGoに埋め込んで使うためにstatikを使っていました。Go 1.16から導入されたgo:embedによってビルド時にファイルコンテンツを埋め込めるようになったので、stati…

事業譲渡によるサービス統合をした話

こんにちは。サーバーサイドエンジニアの武井です。他社で稼働していたサービスをYappliのサービスに統合いたしました。統合から1年以上経過しましたので当時を振り返っての経験をお話ししたいと思います。 何を統合したか これは会社の沿革にも書いてあるこ…

PHP Conference Japan 2021でYappliの改善事例を紹介しました!

PHP

サーバーサイドエンジニアの田実です! PHP Conference Japan 2021でYappliの改善事例を紹介してきました! 今回はその登壇・参加レポートになります。 セッションの内容 独自フレームワークPHPアプリケーションの改善戦略というタイトルで発表しました!*1 …

DroidKaigi 2021にプラチナスポンサーとして協賛しています!

こんにちは。ヤプリの林です。もうすぐDroidKaigi 2021が始まりますね!【DroidKaigi 2021 概要】(DroidKaigi 2021) 日時:2021年10月19日(火)、20日(水)、21日(木) 参加費:無料 対象:Android及び関連技術のエンジニア 場所:ONLINE 主催:DroidKaigi実…

Amazon DetectiveでDNSの検知結果を調査できるようになったらしいので検知させてみた!

はじめに こんにちは、ヤプリで1ヶ月間SREでインターンをさせていただいた静岡大学の鈴木(@otyamura)と申します。 昨日GuardDutyの通知についての記事を書いたのですが、インターンの業務終了日に書きたい内容があったので全力でこの記事をこしらえています…

インターン生がGuardDutyのSlack通知を改善してみた!

はじめに 行ったこと 使用技術 背景 結果 New Relicはどうだったのか 実装方法 EventBridge + SNS + Chatbot New Relicへのログ取り込み S3 export設定 Lambda設定 通知サンプル生成のTips 通知のサンプルを指定して作成する方法 おわりに はじめに 長袖と半…

Yappli プロダクト開発本部 LT大会#5を開催しました

こんにちは。サーバーサイドエンジニアの加納です。 先日、Yappliプロダクト開発本部でLT大会が開催されました。 プロダクト開発本部のエンジニアを始めとして、開発企画部やコネクト部の方々、更には部署の垣根を超えてカスタマーサクセス本部や経営管理本…

iOSDC Japan 2021にダイアモンドスポンサーとして協賛しています!

こんにちは、 YappliのiOSエンジニアの古賀です。 いよいよ本日からiOSDC Japan 2021がスタートします! iOSDC Japan 2021はiOS関連技術をコアのテーマとしたソフトウェア技術者のためのオンラインカンファレンスです。 言うまでもなく、iOSアプリの技術や知…

Yappliエンジニアの素敵な環境について紹介してみた

どうもこんにちわ、Yappliのサーバーサイドエンジニアの山田です。 昨今弊社ではAndroidエンジニアは絶滅したと叫ばれてますが↓私は市場に潤沢に溢れかえる筋肉エンジニアです。 「このご飯美味しそうだね」を栄養価でフィードバックしてよく嫌われてます。 …

テックブログを盛り上げるために始めたことを紹介する

ヤプリの望月です。 最近は自宅のFire TV Stickが起動ロゴから先に進まず、72時間ほど起動待ちしています。(壊れている) 本題となりますが、テックブログが続かない問題は多くの企業で抱えているかと思います。 ヤプリも例外ではなく、2018年に開設したも…

Goで異なる構造体を1つのsliceで扱う

Go

サーバーサイドエンジニアの森谷です。 先日、開発中に面白い実装を見つけたため小ネタとしてご紹介します。 例として駐輪場に駐められている自転車とバイクを管理するsliceを考えます。 以下の構造体を定義したとして、これらを1つのsliceで扱いたいとした…

Googleスプレッドシートで定型クエリ運用【Sexy Tech for You #6】

データサイエンティストの阿部です。最近、職場でオッドタクシーが話題です。シルバーウィークに一気見したいと思います。 さて、明日から使いたくなるデータハンドリング術を紹介する "Sexy Tech for You" の第6話を配信しました。データ活用推進に際して、…

Yappliにおけるマルチテナントアーキテクチャと課題

サーバーサイドエンジニアの田実です! Yappliはノーコードでネイティブアプリを作れるプラットフォームで、システム構成としてマルチテナントアーキテクチャを採用しています。 一言にマルチテナントアーキテクチャと言っても様々な実装方式があり、各プラ…

Google Cloud 主催の招待制特別トレーニングプログラムでバキバキに鍛えた件

Google Cloud Japan様主催の G.I.G. Japan というトレーニングプログラムに参加し、Google Cloud Professional Cloud Architect 認定試験に挑んだ記録です。

Androidウィジェットを触ってみる

Androidエンジニアの白井です。 Android 12 Beta4がリリースされて正式版リリースが目前と迫った今、Android 12で更新された内容を見ているとウィジェットの改善がありまして、今までなかなか触る機会のなかったウィジェットについてまとめてみました。

Googleスプレッドシートでお手軽ダッシュボード運用【Sexy Tech for You #5】

データサイエンティストの阿部です。最近のマイブームは、COTEN RADIOです。高校で世界史を勉強したとき一緒に聞いてたら、何倍も身になっていたろうなと思えるコンテンツです。 さて、明日から使いたくなるデータハンドリング術を紹介する "Sexy Tech for Y…

Zapierを活用してZoomレコーディングデータをチームで共有する

ITグループの原口です。 ITグループでは、現場の業務効率化を支援し、よりコアな業務に集中できる環境作りが重要なミッションとなっています。 今回は Zoomのレコーディングデータをチームで共有したいという相談を受け、調査した結果どのような方式があるの…

Goで多言語化を実装してみた

Go

サーバーサイドエンジニアの田実です! Yappliでは多言語に対応したアプリを公開できます。 ネイティブ向けのAPIでは一部Go言語を使っており、エラーメッセージなどの多言語化の機構が実装されています。 本記事では、Goで多言語化を実装する方法を紹介した…

ログ発生パターンをSTRING_AGG関数で集計【Sexy Tech for You #4】

データサイエンティストの阿部です。先日、会社の仲間たちとAmong Usをプレイして盛り上がりました。ある種の極限状況をロールプレイできるのが面白かったです。リモートワークにおける懇親コンテンツとして便利そうだと感じました。 さて、明日から使いたく…

gRPC-GatewayのAPIドキュメントを自動生成する

サーバーサイドエンジニアの田実です! Yappliのネイティブアプリ向けのAPIは一部gRPC-Gatewayで実装されています。 インターフェース仕様の共有・確認はprotoファイルやwiki*1、Slackを使って行っていましたが、protoファイルだとリクエスト・レスポンスの…

improbable-eng/grpc-webの挙動とProtocol Buffersの仕様について

サーバーサイドエンジニアの田実です! Yappliのコンテンツ管理画面はSPAで実装されています。フロントエンド・サーバーサイド間の通信方式として gRPC-Web を採用しており、ライブラリは improbable-eng/grpc-web を使っています。

AWSのリソースをRedashのPythonデータソースで表示する

サーバーサイドエンジニアの田実です! ヤプリではデータ分析・監視のツールとしてRedashを活用しています。 Redashは様々なデータソースを一元的に表示・監視ができる開発・運用には欠かせないツールなのですが、デフォルトのデータソースが一部のAWSのリソ…

BigQueryのCROSS JOINとwindow関数で移動統計量算出【Sexy Tech for You #3】

データサイエンティストの阿部です。東京五輪開会式の選手入場を何度か見返してしまいました。冒頭とカザフスタン入場のシーンは胸が高鳴りました。 さて、明日から使いたくなるデータハンドリング術を紹介する "Sexy Tech for You" の第3話を配信しました。…

BigQueryで確率乱数を生成【Sexy Tech for You #2】

データサイエンティストの阿部です。最近来てくれたインターン生と10歳違いなことに驚きました。光陰矢の如し! さて、明日から使いたくなるデータハンドリング術を紹介する "Sexy Tech for You" の第2話を配信しました。動画中に記載したクエリや補足事項を…

Googleスプレッドシートの表をBigQueryに連携して縦持ちテーブルに動的変換【Sexy Tech for You #1】

データサイエンティストの阿部です。今後不定期に、データ分析のためのデータハンドリングTipsを、Youtubeで発信します。各回3分でBigQueryに関する話題が中心です。"Sexy Tech for You" と題して、思わず使いたくなるような魅力的なTipsを紹介していきたい…

コンテンツデータをEC2からAWS Fargate+Amazon EFSに移行した話

どうも、ヤプリ SREチームのはぶちんです。久しぶりのブログ投稿です。 今回はEC2上に保管されたコンテンツデータをAWS Fargate(以下Fargate)+Amazon EFS(以下EFS)に移行したので、困ったことや結果的にどう実現したかをご紹介したいと思います。 ヤプリって…

Copyright © 2021 Yappli, Inc. All rights reserved