なになれ

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

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

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フレームワークに則り、会…

GitHub Actionsを使ったECSのデプロイメントパイプライン構築

AWS Advent Calendar 2021 カレンダー2の6日目の記事です。 ここでは、GitHub Actionsを使ったECSのデプロイメントパイプラインを構築する方法を紹介します。 ECSのデプロイにおいて、GitHub Actionsを使う理由は以下のとおりです。 環境構築、コンテナイメ…

AWSにおけるSQLを使ったデータ基盤の監視

本投稿では、AWSを前提にして、SQLを使ってデータ基盤の監視を行う方法について紹介します。 以下のBigQueryを使用した事例をかなり参考にさせてもらっています。 tech-blog.monotaro.com データ基盤を運用していると、データ処理後に生成されるデータの中身…

分かりにくいAmazon Athenaでのデータ型の変更方法をまとめる

背景 Amazon Athenaにおいて、既存テーブルのカラムのデータ型を変更する場合、単純に変更できないことがあります。 本内容では、Athenaにおけるデータ型の変更方法について説明します。 また、データの形式としてParquetでデータを扱っていることを前提とし…

AWS Lambdaのコンテナイメージサポートを前提としたローカルでの環境構築・テストを考えた

データエンジニアリングの文脈で、AWS Lambdaを使ってデータ処理を実装することが最近多くなってきました。 Lambdaでは、コンテナイメージサポートを利用することで、ローカルでのテストがやりやすくなっています。 これを踏まえて、Lambdaのローカルでの環…

ISUCON11予選に参加した

8月21日(土)に開催されたISUCON11予選に参加しました。ISUCONへの参加はISUCON9の参加以来、2年ぶりになります。 isucon.net 今回は会社の同僚と3人チームで参加しました。私以外の他2名はISUCON初参加というメンバー構成でした。 結果は予選敗退という形で…