ENECHANGE Developer Blog

ENECHANGE開発者ブログ

2024-01-01から1年間の記事一覧

CloudNative Days Winter 2024に実行委員として参加しました

CTO室の岩本 (iwamot) です。CTO室では、各事業部で開発しているアプリケーションのコンテナ化を横断的に支援しています。開始から1年半で、6割の環境がEC2からFargateに移行されました。今後も10割を目指して進めていきます。 CloudNative Days Winter 2024…

ECS化・パフォーマンス改善・チャットボット活用。全社的な技術基盤の根幹を支える、CTO室の改善事例

ENECHANGE株式会社において、全社的な技術基盤を支えている部署がCTO室です。各部署のインフラの計画・導入や情報セキュリティの教育、さらには全社的な技術戦略の策定など、多岐にわたるIT基盤の整備を担当しています。CTO室が存在することにより、各部署は…

テックベンチャー3社のインターン生が語る!学生エンジニアの本音とは【イベントレポート】

こんにちは、エンジニア採用担当の村上です! 先日、STORESさん、マネーフォワードさん、ENECHANGEの3社から学生インターンに登壇いただき、「【Ruby】テックベンチャー3社のインターン生が語る!学生エンジニアの本音トーク」というテーマのオンラインイベ…

日本にはAWS Community Builderが足りていない

日本にはAWS Community Builderが足りていないので、目指すなら今がお勧めです。 AWS Community Builderに選ばれると、AWSのクレジットやグッズがもらえたり、新サービスや新機能の情報が早く得られたりするなど、さまざまなメリットがあります。 背景 筆者…

初実施の「I/O DayオンラインLT大会」、その内容を大公開!

こんにちは。エンジニア採用担当の村上です! 先日、新しい技術の習得と活用を促進するために始まった社内イベント「I/O Day」のアウトプットの場としてオンラインLT大会が開催されましたのでレポートをお届けします。 I/O Dayの起案者岩本さんへ、起案の背…

ブルー/グリーンなAmazon ECSサービスのネットワーク設定を変える方法

AWS CodeDeployでブルー/グリーンデプロイしているAmazon ECSサービスについて、もしネットワーク設定を変えたくなったら、AppSpecを編集したうえで、新しいデプロイメントをトリガーしましょう。 この方法を知らないと、ECSサービスをわざわざ作り直すか、…

React 19 RC で、アンケート画面を作ってみた

ENECHANGEの Yuto Ono です。エンジニアリングマネージャーをしながら、フロントエンドの開発もしています。 2024年4月に、React 19 Beta がリリースされました。2024年9月現在、 React 19 はRC版となっており、正式リリース間近となっております。そこで、…

IPAとAWSのダブル全冠、鍵は体力とお金

すべての情報処理技術者試験に合格するには「体力」が、すべてのAWS認定資格を取得するには「お金」が、それぞれ最大の鍵です。 鍵が分かれば、効率よくダブル全冠が狙えます。相手を知らずに戦うのは非効率です。 ダブル全冠が達成できれば、エンジニアとし…

CloudTrailとCloudWatchLogsの統合

概要 CloudTrailはCloudWatchLogsと統合できるため、CloudWatchを利用して改ざんや不正アクセスに関連する疑わしいイベントを検出できます。 検知条件の策定 セキュリティと運用の観点から合理的かつ包括的なアプローチを取るためにターゲットは下記としまし…

「今さら聞けない!オフィス・開発でのAI活用」イベントレポート

こんにちは。人事室の村上です。 先日弊社オフィスにて「今さら聞けない!オフィス・開発でのAI活用」をテーマにイベントが開催されました! 主催は「うら原アジャイルコミュニティ」で、弊社は共催として参加しました。 オフライン・オンラインの同時開催で…

IPアドレス制限ありのURLをRoute 53ヘルスチェックで死活監視する

VPoT兼CTO室マネージャーの岩本 (iwamot) です。プレイヤーとしては、おもにクラウド運用を担当しています。 先日「IPアドレス制限のあるURLを死活監視したい」と同僚から相談され、Amazon Route 53ヘルスチェックによる監視を実装しました。 シンプルな実装…

Amazon S3 が条件付き書き込みのサポートを開始

Amazon S3における条件付きリクエストの活用 特定の条件が満たされた場合にのみオブジェクトのアップロードや更新を許可する機能です。競合の防止やデータの整合性を確保するために使用できます。 https://aws.amazon.com/jp/about-aws/whats-new/2024/08/am…

ALB脆弱性の影響と対策

結論 サービスがIdpと連携していたとしてもALBが認証プロバイダーと連携してトークンの検証を行っていない場合、ALBeast脆弱性の影響はありません。 概要 https://www.miggo.io/resources/uncovering-auth-vulnerability-in-aws-alb-albeast 攻撃者は正規の…

JAWS PANKRATION 2024に登壇して得られたもの

VPoTの岩本 (iwamot) です。 8月24日から25日にかけて、AWSタイトルホルダーやAWS内の方が登壇しつづける24時間オンラインイベント「JAWS PANKRATION 2024」が開催されました。 jawspankration2024.jaws-ug.jp ぼくは24日の23:20 (JST) から「Cost-Effective…

「Lambdaレス」な実装例:AWS WAFのIPセット自動更新

VPoTの岩本 (iwamot) です。 この記事では、AWS Lambdaを使わずにサーバーレスな処理を実装する、いわゆる「Lambdaレス」な実装の例をご紹介します。具体的には「AWSサービスのIPレンジ変更を検知し、AWS WAFのIPセットを自動更新してみた」例です。 Lambda…

スナップショットテストをやめて、ビジュアルリグレッションテストに移行した話

こんにちは、ENECHANGEの清水です。 普段の業務では主にフロントエンドの開発を担当していますが、最近はRailsでのバックエンドの開発にも参加しています。 今回は、スナップショットテストをビジュアルリグレッションテスト(以下 VRTと略)に移行した話に…

Terraformモジュール構成のベストプラクティス

VPoTの岩本 (iwamot) です。 この記事では、Terraformモジュール構成のベストプラクティスをご紹介します。Terraformドキュメントに書かれているものですが、従わずに時間を溶かした失敗談をまじえてお伝えすることで、同じ轍を踏む方が減ることを願っていま…

ENECHANGEの新たな取り組みI/O Dayとは? 技術革新の現場をインタビュー!

ENECHANGEのI/O Dayは、新しい技術の習得と活用を促進するための社内イベントです。参加者の目的は、未経験の技術や新しいツール、他事業部で採用されている技術について学び、それをアウトプットを通じて共有することです。 このインタビューでは、VPoTの岩…

最近遭遇した useEffect のアンチパターンを紹介 【React】

ENECHANGEの Yuto Ono です。エンジニアリングマネージャーをしながら、フロントエンドの開発もしています。 React を使った開発で悩むポイントの1つとしては、 useEffect の使い方だと思います。何でもできる魔法のようなフックですが、それゆえに、間違っ…

インターン生として半年間ENECHANGEで働いてみて

はじめに 初めまして! 2024年2月からWebエンジニアとしてENECHANGEの就業型インターンに参加している植月です。 現在は大学院修士2年生で計量経済学系の研究室に所属しており、普段は主に一人、チーム問わずWeb開発をしています。 約半年間、インターン生と…

事業譲渡を受けたアプリとの統合で失敗、 そしてユーザーからの評価回復に至るまで

こんにちは、EV充電サービス事業部でFlutterエンジニアをしている小林です。 2023年12月に弊社とSmart Shopping様と共同で「IoT系のプロダクト開発の裏側」というテーマのオフライン勉強会を開催いたしました。その中で「事業譲渡を受けたアプリとの統合で失…

AIレビューツールであるCodeRabbitを試してみました【設定ファイルあり】

こんにちは、ENECHANGEの園木です。 弊社ではI/O Day という制度を試験的にに実施しています。 I/O Dayとは、エンジニアが通常業務の時間を使って技術的なインプット・アウトプットすることができる制度となっております。 今回はその制度を使い、AIレビュー…

メリットだらけなので、AWSパートナーになりました

VPoTの岩本 (iwamot) です。 ENECHANGEは、2024年3月にAWSパートナーになりました。パートナーパスとして「ソフトウェアパス」を選択しており、将来的にファンデーショナルテクニカルレビュー (FTR) の通過を目指します。 aws.amazon.com 今回は、ENECHANGE…

Rails + Hotwire を試してみて、使いどころを考えてみた

ENECHANGEの Yuto Ono です。 最近はエンジニアリングマネージャーに任命され、引き続き手を動かして開発しながら、メンバーの育成などにも取り組むようになり、マネジメントの面白さと難しさを実感しています。 今回は、前から気になっていた Rails + Hotwi…

100以上のLLMが使えるSlackbot OSS、Collmboを公開しました

VPoTの岩本 (iwamot) です。 100以上のLLMが使えるSlackbot OSS、Collmboを公開したのでご紹介します。 github.com 要点: ENECHANGEではChatGPT-in-Slackを便利に使ってきた ChatGPT-in-SlackでチャットできるLLMはGPTのみ 他のLLMも使えるよう、forkしてLi…

JaSST'24 Tohokuに参加してきました!〜テスト技法編〜

はじめに JaSST Tohokuについて 参加目的 セッションについて 10:30-12:00 (90分) 説明できるテストをつくるためにできることを考える 13:50-15:10 (80分) 同値分割法と境界値分析 15:20-17:10 (110分) クラシフィケーションツリー技法 スポンサーライトニン…

RubyKaigi 2024 に参加してきました!

ENECHANGEの園木です。 今年も ENECHANGE は2024年5月15日〜5月17日に開催された「RubyKaigi 2024」に、ゴールドスポンサーとして協賛しました! そして私園木は RubyKaigi 2024 に会社代表として参加してきました! 本記事では、一部のセッションの内容やRu…

MySQLパフォーマンス向上のためのプロビジョニングIOPSの活用とその結果

概要 最近、最新のアクションカメラを購入してYoutube用に動画編集してるCTO室のKazです 今回、MySQLのマイグレーション時、Index有効クエリを高速化するため、ボトルネックを特定してそれを解消しました。 結果 Index有効化において 適切なメモリ量を確保し…

Amazon AppFlowをGA4に接続し、人気記事ランキングをSlackに自動投稿する

こんにちは、ENECHANGE株式会社でVPoTを務めている岩本 (iwamot) です。 このブログの人気記事ランキングをSlackに自動投稿するよう実装したので、事例としてご紹介します。Google Analytics 4 (GA4) のレポートを見に行かなくても、どんな記事が読まれてい…

カスタマーサービスセンターの新拠点のネットワーク調査

Wi−Fiネットワーク調査報告 カスタマーサービスセンターの新拠点におけるネットワークを調査し、スケジュール遅滞なく業務を開始できることを目的としました。新拠点では既存の通信速度と安定性を担保する必要があり、特にインターネット接続とAWSに構築して…