なになれ

IT系のことを記録していきます

Terraform1.5で追加されたimportブロックを試す

importブロックは宣言的に既存のリソースをTerraform管理下にできるTerraformの構文です。今まではterraform import で既存のリソースをTerraform管理下にできましたが、一つ一つのリソースしかインポートできずに面倒でした。また、今まではできなかったHCL…

ローカル上のAWS LambdaのコードをTerraform化する

ローカル上のAWS LambdaのコードをTerraform化する方法について説明します。 ローカルにあるコードをTerraform化するにあたってはコードのzipファイル化が必要など、そのあたりのポイントを説明します。 説明 以下が全体のコードになります。 lambda.tf reso…

Amazon ECS 入門ハンズオンの環境をTerraformで作成する

本記事では、以下のAmazon ECS 入門ハンズオンの環境をTerraformで作成する具体的な手順を紹介します。 catalog.us-east-1.prod.workshops.aws AWSでコンテナを用いたシステムを構築する際にはECSが有力な選択肢であるため、有用なハンズオンになっていると…

Firebase Authenticationを使ったNestJSでの認証機能の作成方法

この記事では、Firebase Authenticationを使ったNestJSでの認証機能を作成する方法を解説します。 要約 Passportを利用する Firebase Admin SDKをインストールする Firebaseの認証ロジックを実装したPassportの実装を行う コントローラーにPassportによるGua…

NestJSでSentryを使う方法

最近はNestJSでWeb APIを作ってます。NestJSでは、大体以下の公式サイトにWeb APIを作成する際に必要となる機能の実装が書かれています。DBへの問い合わせやロギング処理など Documentation | NestJS - A progressive Node.js framework ただSentryの使い方…

『エンジニアリングマネージャーのしごと』を読んだ

ITエンジニア本大賞2023のベスト10にも選ばれた『エンジニアリングマネージャーのしごと』を読んだ感想です。 www.oreilly.co.jp www.shoeisha.co.jp ITエンジニア本大賞2023の結果を見て、全く知らなかった書籍もあれば、自分が観測しているソフトウェアエ…

2022年で学んだ技術

2022年を何を学んだかで振り返ります。仕事としてはエンジニアリングマネージャー業や各種ソフトウェア開発などを行いました。 マネージャー業 1on1を通じてメンバーへのサポート方法を学びました。人によってやり方を変えるなど効果的に行うために工夫しま…

スタートアップにおけるモメンタムを実感した話

スタートアップ界隈の端くれにいるのでスタートアップにまつわる情報を目にします。一例としてスタートアップ界隈ではモメンタムという言葉があります。 モメンタムから生まれる社内の活力は「きっと次のチャレンジでも勝てる」という思いを生み、更なる大き…

AWS CDKでLambdaをいい感じにIaC化する

AWS Lambdaに対してのIaCのやり方を模索していて、AWS CDKが今のところ一番いい感じだと思ったので試してみた記録です。 各種方法との比較 AWS LambdaをIaC化するやり方は主に以下のやり方があると思います。 他にもいろいろあると思いますが、自分が経験し…

FlutterのGet startedをRiverpodでやってみたのでStatefulWidgetの場合と比較してみる

FlutterのGet startedを一通りやってみたのでその備忘録です。 docs.flutter.dev Flutterではstate管理にRiverpodが使われることが多いようなのでこちらも試してみました。 Riverpod版と通常のStatefulWidget版で比較をしつつ説明します。 Riverpodでやって…

Redshift Serverlessを用いてdbtのGetting startedを実施する

本投稿では、Redshift Serverlessを用いてdbtのGetting startedを実施します。 dbtだとBigQueryを使っている事例が多い印象です。Redshiftでもできるということを確認してみたく実施してみました。 実施するのはdbtの公式ページにある下記の内容です。異なる…

Terraform AWS Cloud Control Providerを用いてAWS Chatbotを作成する

AWSとSlackを使っている場合、AWS上でのイベントをSlackに通知したいことが多々あると思います。最近ではAWS Chatbotを使うとコーディングなしでSlackに通知できるので、よっぽどのことがない限りはAWS Chatbotを使うのではないかと思います。 ただ自分の知…

いつの間にかデータ基盤が使えなくなるのを防ぐ GitHub ActionsによるDBマイグレーションに気づく仕組み

データエンジニアリングにおいて、初手の処理として、各システムからデータを抽出する処理があります。よく言われるETLやELTと呼ばれる最初のExtractの処理です。 そこから始まり、利用者にデータを使ってもらえるように可視化や分析のプロセスを構成するか…

クラスタマイグレーション方式を用いてAmazon EKSの複数マイナーバージョンを一度に更新する

この頃はEKSのバージョン更新を1年に1回くらいを目処に実施しています。今回、EKSのバージョンを1.19から1.22に更新しました。 1.19は2022年6月にサポート終了するので、ギリギリのタイミングでした。。。 複数のマイナーバージョンを一度に更新する場合には…

A Philosophy of Software Designの20章要約

本内容は「A Philosophy of Software Design」の20章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

A Philosophy of Software Designの19章要約

本内容は「A Philosophy of Software Design」の19章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

A Philosophy of Software Designの17章要約

本内容は「A Philosophy of Software Design」の17章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

A Philosophy of Software Designの15章要約

本内容は「A Philosophy of Software Design」の15章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

A Philosophy of Software Designの13章要約

本内容は「A Philosophy of Software Design」の13章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

チームの進捗管理にJira Software Cloudを使っている

チームの進捗管理について、ここ1年くらい取り組んできて、一時期Trelloを使ってましたが、最近はJira Software Cloudを使うようになりました。 この理由などについて紹介します。 進捗管理をする必要があるチームリーダーやマネージャーの役割の方への参考…

A Philosophy of Software Designの11章要約

本内容は「A Philosophy of Software Design」の11章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ A Ph…

A Philosophy of Software Designの9章要約

本内容は「A Philosophy of Software Design」の9章を要約する記事です。 過去記事 A Philosophy of Software Designの3章要約 - なになれ A Philosophy of Software Designの5章要約 - なになれ A Philosophy of Software Designの7章要約 - なになれ 8章の…

1on1の進め方と注意点について

ソフトウェアエンジニアのチームを率いて1年ほど経過して、その間1on1を継続的に実施しました。 この記事では1on1についての諸々を書きます。 要約 1on1には種類があるので、得たい結果に応じて、1on1の進め方を使い分ける 1on1の時間を効果的に使えている人…

A Philosophy of Software Designの7章要約

本内容は「A Philosophy of Software Design」の7章を要約する記事です。 過去記事 hi1280.hatenablog.com hi1280.hatenablog.com 6章の紹介 他担当の方が要約した6章の内容を引用します。 6章 汎用モジュールはより深く 筆者の経験では特化することは複雑性…

A Philosophy of Software Designの5章要約

本内容は「A Philosophy of Software Design」の5章を要約する記事です。 過去記事 hi1280.hatenablog.com 4章の紹介 他担当の方が要約した4章の内容を引用します。 4章 モジュールは深くあるべき moduleの増加により相互依存が生まれる、これによりアプリケ…

A Philosophy of Software Designの3章要約

内輪で「A Philosophy of Software Design」の輪読会を始めました。 本内容は、1章、2章を紹介するとともに自分の担当である3章を要約する記事です。 今後も定期的に要約記事を投稿します。 www.amazon.co.jp 著者の意図としては設計の哲学を教える薄い本と…

Aurora MySQL version2からversion3への更新方法まとめ

Aurora MySQL version2からversion3に更新する機会があったので、やったことをまとめます。 事前情報の把握 AWSのドキュメントの以下に事前情報と大まかな手順が記載されています。こちらを一読しておくと良いです。 docs.aws.amazon.com ポイントとしては、…

AWS SSOを導入したら色々やることがあったので情報をまとめる

AWS SSOを導入したところ、色々やることがあり、なかなか大変だったので、その情報をまとめます。 AWS SSOとは 名前の通り、AWSの認証をシングルサインオン化できるサービスです。 認証方法として、外部のIDプロバイダーを利用できます。 マルチアカウントに…

RenovateでKubernetesエコシステムのバージョン追従を試した

背景 CloudNative Days Tokyo 2021の下記を視聴し、Kubernetesエコシステムのバージョン追従を自動化せねばと思った次第です。 event.cloudnativedays.jp 発表の中では独自の仕組みで実現されているということで、Renovateで同じようなことができないかを試…

2021年で学んだ技術

2021年を何を学んだかで振り返ります。仕事としてはインフラ、データエンジニアリング領域に関わりました。 ポジションとしてはチームリード的な立場でソフトスキル的な面も向上できた1年でした。 AWS 2021年はAWS Well-Architectedフレームワークに則り、会…