サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
tech.emotion-tech.co.jp
はじめに こんにちは。バックエンドエンジニアのよしかわです。本記事では GitHub Actions のワークフローを少し安全に書くコツを一つご紹介いたします。 この記事はエモーションテック Advent Calendar 2024の10日目の記事です。 脆弱性を含むワークフローの例 今回取り上げるのはスクリプトインジェクション対策です。例として公式ドキュメントで脆弱性を含むとして挙げられているコードを見てみます。これはプルリクエストのタイトルが octocat で始まっていれば「PR title starts with 'octocat'」を出力して成功し、そうでなければ「PR title did not start with 'octocat'」を出力して失敗するというものです。 - name: Check PR title run: | title="${{ github.event
はじめに こんにちは、バックエンドエンジニアのおおたわらです。 弊社のプロダクトの一部に、顧客企業の行いたい調査(例えば、企業が顧客のニーズを理解し、最適なサービスを提供をするためのユーザー向け調査)に応じてアンケートを作成し、回答を集めることができる「アンケート機能」があります。 この機能はコンシューマ向けの大規模な調査(具体的にはメールやプッシュ通知等で数十万〜数百万人にアンケート回答を依頼するような調査)での利用も想定しており、大量アクセスに対応できることが求められます。更に、集めた回答に対し分析を実施し、すぐに結果を確認できることも求められます。 このためのアーキテクチャを構築したので、紹介します。 求められる要件 アーキテクチャに求められる主な要件は以下です。 大規模調査における大量のリクエスト(具体的には秒間 1000〜回答を想定)を処理できるスケーラビリティ 回答サーバーは可
こんにちはあるいはこんばんは。フロントエンドエンジニアの id:kasaharu です。 エモーションテックでは、今年の初めに Angular (+ NX) ベースのリポジトリに Renovate を導入し、半年以上継続して運用してきました。そこで今回は弊社の Renovate 活用について紹介します。 Renovate とは Renovate は依存関係の更新を自動化するためのツールです。 詳細は 公式ドキュメント を参照していただければと思いますが、簡単に説明すると外部ライブラリバージョンアップのための Pull Request(以下、PR) を自動で作成してくれます。 開発をしていると、使っているすべてのライブラリのバージョンアップを逐一確認できず、気づいたときにはかなりの変更があり、バージョンアップに時間がかかってしまうという経験はないでしょうか? そんな悩みの解消を手助けするツー
はじめに こんにちは、テックリードのかどたみです。 弊社では以前の記事でも紹介したとおりマイクロサービス開発にNestJSを利用しています。今回はNestJSでマイクロサービス開発をする際のログの出力についてご紹介します。 この記事はエモーションテック Advent Calendar 2022の6日目の記事です。 背景 マイクロサービスのメリットの一つとして、サービスごとに開発するドメインの範囲を狭め、機能追加や改修の影響範囲を最小限にできることが挙げられます。 しかし、いざ運用しようとするとユーザーからのアクセス一つにおいて複数のサービスで処理が走ることから、どのサービスで障害になっているのか、どのユーザーがどこまでアクセスできているのかなどバグ発生時の原因や影響範囲の特定に時間がかかることもあります。 そこで、マイクロサービス間でログに出力する内容を揃えることで分析をしやすくなるように
こんにちは、Emotion TechでSREチームに属している菅原です。 Pythonで実装されたデータ処理のテストを書く際に、まとまったテストデータが必要ということはあるかと思います。 今まではテスト用のCSVファイルを用意する or 適当な値を入れたPandasのデータフレームを用意する、で対応していました。 今回は、簡単にテストデータを用意する手段として、panderaの機能が使えないか試してみました。 panderaとは panderaは、データフレームでデータバリデーションを実行して、データ処理パイプラインをより読みやすくロバストにするためのライブラリです。 公式ドキュメントの例をみてみましょう。 import pandas as pd import pandera as pa # data to validate df = pd.DataFrame({ "column1": [
はじめに こんにちは、フロントエンドエンジニアのねだです。 いきなりですが、タイトルの通りです。 弊社は元々フロントエンド環境に主にAngularを利用しており、Reactでの採用の募集も行っていましたが、当面Angularに一本化する方針に転換しました。 この事はもちろん他のライブラリについて否定的な意図があることを意味するわけではありません。現状のGitHub Star数などを確認しても、より新しいフロントエンドでの設計や開発について知るためにはReactを追い続ける必要がある現状がありますし、いわゆる通常のWEBサイトをカジュアルにSPA化する場合にはVueが入りやすいです。ですが、それを理解した上での判断になります。 JavaScript ライジングスター 2021 Angularのメリット Angularはもともと、2009年にAngularJSとしてスタートし、その後、後方互換
はじめに こんにちは、テックリードのかどたみです。 「冷やし〇〇はじめました」の幟が街を彩って久しくも、まだまだ暑い日が続きますね。 突然ですが、皆さんは今夏新しくはじめたことはありますか? 弊社ではタイトルの通りRustでマイクロサービスの開発をはじめました。 この記事では、マイクロサービス化やRustに至った考えとRustで開発をしてみた感想を述べたいと思います。 なぜマイクロサービス化するのか? 弊社ではサービス開始当初からRuby on Railsを用いて開発が進められ、現在でも機能の追加が続いています。モノリスとしてどんどん大きくなっているのですが、大きくなることによって以下のような課題が出てきています。 新しいメンバーがコードを把握するのにかなり時間を要する 改修の影響範囲が大きくなり、見積もり難度が上がっている テストやビルドに時間がかかり、細かな修正でもリリースのコストが高
このページを最初にブックマークしてみませんか?
『tech.emotion-tech.co.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く