EmotionTechテックブログ

株式会社エモーションテックのProduct Teamのメンバーが、日々の取り組みや技術的なことを発信していくブログです。

Pythonプロジェクトにおけるディレクトリ構成と現状の課題について

はじめに エモーションテックでSREチームに所属しているsugawaraです。 前回書いたブログでは、Pythonプロジェクトで利用しているツールについてご紹介しましたが、 今回はPythonプロジェクトにおけるディレクトリ構成、コンテナのビルドをどのように行なっ…

Startup Angularのハンズオンに参加した話

こんにちは、フロントエンドエンジニアのねだです。 今回は Startup Angular にオンライン参加し、同イベントの新たな試みとして行われたハンズオンで新たな Angular を体感した話を書いてみたいと思います。 Startup Angular は Angular を採用しているスタ…

Angular の新しい制御フローにマイグレーションしてみた

はじめに こんにちは。フロントエンドエンジニアのすずきです。 Angular v17 で developer preview として提供された組み込み制御フロー(built-in control flow)皆さんは試してみましたか? 本記事では、今までの構造ディレクティブ(*ngIf や *ngFor など…

Cloud Runのコンテナインスタンスはいつまで起動するのか試してみた

はじめに こんにちは、エモーションテック SREのおかざきです。 今回は弊社プロダクトで利用しているGoogle CloudのCloud Runについて、実際に動かしてみた中で生じた疑問点を検証してみました。 疑問点 リクエストタイムアウトを超えた処理はどうなるのか …

プロダクトチームのランチ事情

はじめに こんにちは、QAエンジニアのもときです。 この記事はエモーションテック Advent Calendar 2023の25日目の記事です。 私はプロダクトチームに所属しております。今回はプロダクトチームメンバーのランチ事情について、お伝えしたいと思います。エモ…

Web エンジニアが使いたいギャル流行語2023 〜クリスマスイブ特別バージョン〜

聞こえてくるでしょ?鈴の音がすぐそこに。どうもこんばんは。サンタクロースです。 諸人こぞりて むかえ渋谷 ミニスカ サンタの ギャル来ませり ギャル来ませり みなさんも子供の頃から、こんな歌を歌っていたことでしょう。 そう、クリスマスはギャルの季…

エモーションテックの開発体制について(2023年編)

はじめに こんにちは、Product TeamのManagerのよしだです。今年も年末にエモーションテックの体制がどのように変化したかをご紹介します(いわゆる思い出話です)。チームに対する改善施策数が多く全ては書けないので、特に印象に残ったものだけとなります…

Angular Material の mat-paginator にページ指定を追加する

はじめに こんにちは、フロントエンドエンジニアのありまです。皆さんは Angular Material 使っていますか?弊社ではとてもお世話になっています。優秀なUIライブラリなのですが、時々あともう一歩かゆいところに手が届かないことがあります。今回はそんな A…

「フロントエンド開発のためのセキュリティ入門 知らなかったでは済まされない脆弱性対策の必須知識」を読んで

はじめに こんにちは。フロントエンドエンジニアのきぐれです。 今回は今年読んだ本の一冊である「フロントエンド開発のためのセキュリティ入門 知らなかったでは済まされない脆弱性対策の必須知識」について書こうと思います。 この記事はエモーションテッ…

エンジニア採用のキーワード 〜仲間、そして自身の職務経歴を豊かにするために〜

はじめに こんにちは。テックリードのかどたみです。 開発チームの採用では、キーワードの1つに「少しでも職務経歴が豊かになるように」という言葉があります。これは弊社で活動するうえで候補者が成長できる環境を用意できるかという意味とともに、採用担当…

tracing::info! の呼び出しのテストに用いる道具立て

はじめに こんにちは、バックエンドエンジニアのよしかわです。 今回の題材は Rust で tracing::info! などを呼び出すコードのテストです。Rust のプログラムで処理の進捗やエラーを出力するのに tracing の tracing::info! や tracing::error! を使うケース…

Angular に新しく追加された takeUntilDestroyed API について

こんにちはあるいはこんばんは。フロントエンドエンジニアの id:kasaharu です。 エモーションテックでは Angular を使ったフロントエンド開発をしています。 ちょうど 1 年ほど前に Angular に関する記事を書きました。 NgRx ComponentStore の lifecycle h…

Amazon RDS Blue/Green Deploymentsを用いてAurora MySQLテーブルのint型カラムをbigint型に切替してみた

はじめに こんにちは、エモーションテック SREのおかざきです。 弊社プロダクト「EmotionTech」で利用しているAWS Aurora MySQLで17億レコード規模のテーブルをAmazon RDS Blue/Green Deploymentsを用いてスキーマ変更を行ないました。 *本記事で触れるプロ…

Dataflowのエラーハンドリング四方山話

はじめに こんにちは!バックエンドエンジニアの谷口(@ravineport)です。 以前、「サンプルコードからざっくり理解するDataflowでストリーム処理」という記事を書きました。今回はDataflowでストリーム処理をする際のエラーハンドリングについて触れたいと思…

ただいまQA to AQ中

◯ はじめに エモーションテックに2ヶ月前にjoinしましたQAエンジニアの中島です。 私はウォーターフォール開発(以降、従来型開発)の現場に長くおり、アジャイル開発でのQA活動はエモーションテックが初めての経験となりました。 QAとしてのベース部分は変…

Productチームがドメイン知識を得るため始めた「biz勉強会」

はじめに この記事は、エモーションテックアドベントカレンダー14日目の記事になります。 こんにちは エモーションテックでPdMをしている “みねいつ” です。 「今年のアドベントカレンダーはなにを書こう?」 とネタについて毎年悩みますよね。 それと同時に…

エモーションテックのPythonプロジェクトで利用しているツールについて

はじめに エモーションテックでSREチームに所属しているsugawaraです。エモーションテックではPythonを利用しているプロジェクトがいくつかあります。そのプロジェクトで利用しているツールについて、今回はご紹介できればと思います。 この記事は エモーシ…

最近のフロントエンドチームの雰囲気とフロントエンド相談会について

こんにちは、フロントエンドエンジニアのねだです。 今回は弊社のフロントエンドチーム内で行われているフロントエンド相談会を紹介してみたいと思います。 フロントエンドチームの雰囲気を少しでもお伝え出来れば幸いです。 この記事はエモーションテックア…

エンジニアから見た、エモーションテックの開発チームってこんな感じ

はじめに こんにちは、バックエンドエンジニアのおおたわらです。 今回はエンジニア目線で、開発チームの特徴や雰囲気を紹介してみたいと思います。 個人の主観が含まれますが、なるべくそう感じた具体的な出来事も書いています。 開発チームについて気にな…

「フロントエンド開発のためのテスト入門」を読んで

はじめに こんにちは。フロントエンドエンジニアのすずきです。 今回は今年読んだ本の一冊である「フロントエンド開発のためのテスト入門 今からでも知っておきたい自動テスト戦略の必須知識」について書こうと思います。 この記事はエモーションテックアド…

脆弱性診断の動的スキャンを実施してみた

はじめに こんにちは、QAエンジニアのもときです。 エモテクにjoinして、まもなく1年になろうとしています。 今回はこの1年で活動してきたことの中から脆弱性診断について、お伝えしたいと思います。 この記事は エモーションテック Advent Calendar 2023 の…

生成AIを使って "売れるサービス" を作るために必要な「5つのC」

こんにちは、CXデータアナリスト&NLPエンジニアのイケガメです。 皆さんはChatGPT、使ってますか? 私が初めてこの技術に出会ったのは、GPT3と呼ばれていた頃。当時は本当に、衝撃を受けました。 我々エモーションテックは、「顧客の声」の重要性を知ってい…

Introducing Angular Material v17

こんにちは!フロントエンドエンジニアの高橋 a.k.a 黄色い人( @fusho_takahashi )です。エモーションテック Advent Calendar 2023 7 日目を担当させていただきます!エモーションテックのAdvent Calendar に書くのは 3 回目なのですが、技術系の記事を書…

FastAPIを使い始めたので、ContextVarsでログ内容をカスタマイズするよ

はじめに こんにちは、エモーションテックのテックリードのかどたみです。 エモーションテックではRustのactix-web、Node.jsのNestJSに続き、マイクロサービスを担う言語としてPython、フレームワークとしてFastAPIを利用しています。 今回はFastAPIを運用に…

Rustでテストでのみ必要なアトリビュートをプロダクトコードに含めない設定

はじめに こんにちは、バックエンドエンジニアのおおたわらです。 Rustで開発をする中で、以下のようなケースがあります。 テストコードで使いたいアトリビュートがある #[derive] アトリビュートによるトレイト実装(assert! に指定するメッセージに構造体…

社内勉強会を消滅させてしまったので反省してリニューアル!

はじめに こんにちは、テックリードのかどたみです エモーションテックのプロダクトチームでは、「自分や一緒に働く仲間の職務経歴書を豊かにする」という方針に沿って日々業務を行っていますが、プロダクト開発のタスクをこなす上でだけでなく、様々な取り…

Version-Incompatibility Hazards の検出

はじめに こんにちは、バックエンドエンジニアのよしかわです。 今回の記事は Rust のプログラムで利用する外部パッケージのバージョン管理についてです。Rust で書かれたあるプログラムが外部パッケージ A とB に依存しており、さらに A と B はどちらも別…

テスト自動化に取り組んだ結果

はじめに こんにちは、QAエンジニアのもときです。 エモテクにjoinして、まもなく1年になろうとしています。 「もう1年なのか……」と思えるぐらい、1日1日の経過が早く感じております。 今回はこの1年で活動してきたことをお伝えできたらと思います。 この記…

パソコン初心者がエンジニアインターンしてみた

はじめに こんにちは。開発チームでインターンをしている沼澤と申します。 本記事では、学部1年の2月下旬から行ってきたエモーションテックでの約9ヶ月間のインターン経験をもとに、今までの振り返りや、今後の展望について書きました。 この記事はエモーシ…

Tauriを使ってデスクトップアプリケーションを作ってみた

こんにちは、りーです。エモーションテックのバックエンドエンジニアです。 今回はRustを使用してデスクトップアプリケーションの開発に挑戦しました。このプロジェクトでは軽量なRustフレームワークであるTauriを利用しました。 私の目標は、多くのAPIを組…