mongolyyのブログ

開発(Javascript, Typescript, React, Next.js)や開発手法(スクラム, アジャイル)、勉強したことについて色々書ければと。

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

今までの失敗を乗り越えて、チーム運営で大事にしている価値観とプラクティス

この記事は、Engineering Manager Advent Calendar 2022 #2の12日目の記事です。 はじめに メーカーでソフトウェアエンジニアとして働いているmongolyyです。 普段はテックリードやスクラムマスター的な立ち位置で働いています。 現在の会社に転職してチーム…

「「技術書」の読書術」を読んだ

はじめに メーカーのコーポレート部門でソフトウェアエンジニア兼スクラムマスターとして働いているモンゴルです。 今回は最近発売されて気になっていた「「技術書」の読書術」を読みました。 感想を書いていこうと思います。 「技術書」の読書術 達人が教え…

「進化的アーキテクチャ」を読んだ

はじめに メーカーのコーポレート部門でソフトウェアエンジニアをしているモンゴルです。 「進化的アーキテクチャ」という本として知人から勧められたので、読んでみました。 感想を書いていこうと思います。 進化的アーキテクチャ ―絶え間ない変化を支える…

「初めてのGraphQL」を読んだ

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 業務でGraphQLを触る機会があり、より知識をつけたいと思って本書を読みました。感想を書いていきます。 初めてのGraphQL ―Webサービスを作って学ぶ新世代API作…

Microsoft Certified: DevOps Engineer Expert(AZ-400)の合格体験記

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 この度、「Microsoft Certified: DevOps Engineer Expert」の資格を取得したのでその合格体験記を書いていこうと思います。 Microsoft Certified…

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

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 今回、「エンジニアリングマネージャーのしごと」という本を読んだので感想を書こうと思います。 エンジニアリングマネージャーのしごと ―チーム…

Developing Solutions for Microsoft Azure(AZ-204)の合格体験記

はじめに 今回、Developing Solutions for Microsoft Azure(AZ-204)に合格したので、その体験記を共有します。 私の情報 AWS認定DevOps Engineer ProfessionalとAZ-900は取得済み。 業務ではAzureのとあるサービスを半年ほど利用しているので、全体感は何…

【スクラムの実験カタログ】毎日レビュー

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 スクラムでの実験の中で良さそうなものを紹介していきたいと思います。 第4回目は毎日レビューです。 毎日レビューとは? 通常1スプリントで最後…

【スクラムの実験カタログ】WIP制限を加えてみる

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 スクラムでの実験の中で良さそうなものを紹介していきたいと思います。 第3回目はWIP数に制限を加えるです。 WIP制限とは? カンバンのプラクテ…

【TypeScript】2つの型システムが混在することを意識すべしという話

TypeScriptを使っているなかで、気になった挙動に遭遇したので備忘録として残しておきます。 例えば、標準のErrorクラスを拡張して、InvalidError というカスタムエラーのクラスを作るとします。 class InvalidError extends Error { constructor(message: s…

TypeScriptで共通なstaticプロパティを定義する

最初にやろうとしたこと interfaceでstaticプロパティを宣言して、その実装クラスで初期化しようとしました。 interface MoneyIF { static readonly CurrencyUnit: string readonly amount: number } class JPY implements MoneyIF { static readonly Curren…

【スクラムの実験カタログ】ふりかえりを変えてみる

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 スクラムでの実験の中で良さそうなものを紹介していきたいと思います。 第二回目はふりかえりを変えるです。 ふりかえりを変えるって、何を変え…

【スクラムの実験カタログ】1dayスプリント

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとスクラムマスターをやっているモンゴルです。 スクラムでの実験の中で良さそうなものを紹介していきたいと思います。 第一回目は1dayスプリントです。 1dayスプリントって何? その名の通り、…

チームに新規参画のソフトウェア開発者を受け入れる時にやると良いこと 5つ

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 新人を受け入れるときにやるといいと思ったことがいくつかあったので紹介したいと思います。 アクティビティ 個性によって効果は異なりますが、万人におすすめ…

Next.js + TypeScript + NextAuth + AzureAD B2Cの組み合わせを試す

はじめに 認証基盤といえば手軽に使えるAuth0が好きですが、会社の状況によっては使えないことがあると思います。 NextAuthを使いつつ、色々なIdPを試してみようと思いますが、今回はナレッジが少なそうなAzureAD B2Cを試してみようと思います。 まずはいつ…

「プロを目指す人のためのTypeScript入門」を読んだ

はじめに こんにちは。mongolyyです。 近頃TypeScriptを触っているのですが、先月、次の本が出版されたので読んでみました。 感想を書いていこうと思います。 プロを目指す人のためのTypeScript入門 安全なコードの書き方から高度な型の使い方まで Software …

「良いコード/悪いコードで学ぶ設計入門-保守しやすい 成長し続けるコードの書き方」を読んだら、次の日からその知識が役に立った

はじめに 「良いコード/悪いコードで学ぶ設計入門-保守しやすい 成長し続けるコードの書き方」が先日出版されたので、GWに読みました。 その感想を書いていこうと思います。 良いコード/悪いコードで学ぶ設計入門―保守しやすい 成長し続けるコードの書き方…

「入門!論理学」を読んだら、論理学の考え方が少しわかった

はじめに きしださんのこちらの記事を参考に、型理論を理解したいと考え、まずは「入門!論理学」を読んでみました。 感想を書いていこうと思います。 nowokay.hatenablog.com 入門!論理学 (中公新書)作者:野矢茂樹中央公論新社Amazon 読んでみてどうだった…

テストも書かずにリファクタリングとは何事か

はじめに 知人と話していて、「レガシーコードをメンテナンスしており、リファクタリングをしているが、テストは書いていない」という話を聞いて、それは違うのではないか?と思ったので、ポエムを書こうと思います 書いていることは、大体「リファクタリン…

React系のライブラリにおいて、ts/tsxをトランスパイラーとして、何が使用されているのか調査してみた

はじめに 「Reactを使っている場合はjsxをトランスフォームするためにbabelを使用するのはわかるが、React + TypeScriptの組み合わせを使っている場合、tscでトランスパイルすれば、tsxのトランスフォームもtscがしくてれて、babel使わなくていいんじゃない…

「オブジェクト指向 JavaScriptの原則」を読んだ

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 今回、3連休に次の書籍を読んだので、その感想を書いていこうと思います。 オブジェクト指向JavaScriptの原則作者:Nicholas C. ZakasオライリージャパンAmazon …

「Real World HTTP」を読んだ

はじめに こんにちは。メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 前々から気になっていた「Real World HTTP」を読んだので感想を書いていこうと思います。 感想 読み物として面白かった Cookieの細かい仕様や、HTT…

令和3年度 技術士一次試験(情報工学)の合格体験記

はじめに 今回、技術士の情報工学部門で合格できたので、その体験記を共有します。 どのくらい勉強したか? 勉強時間は合計20時間くらい 期間は1ヶ月くらい 何を使用して勉強したか? 次の本を一通り読みました。 よくわからなかったり、忘れそうなところはN…

TypeScriptにおいて、とある型の一部のプロパティのみを必須にする型エイリアスを定義する

何がしたいか? TypeScriptにおいて、とある型の一部のプロパティのみを必須にした型を作りたいとします。 次の例で言うと、とある型(User)を元に、一部のプロパティ(age)を必須にした新たな型(AdultUser)を作りたいとします。 type User = { name: st…

「レガシーコードからの脱却」を読んだ

はじめに こんにちは。メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 最近David Bernsteinさんの研修を受ける機会があり、これをきっかけに、積んでいた「レガシーコードからの脱却」を読みました。 本の感想を残して…

ドメイン駆動設計における「エンティティ」と「値オブジェクト」の違いについて

はじめに 同僚と「ドメインオブジェクトが~~」みたいな話をしていて、「ドメイン駆動におけるドメインオブジェクトの扱いってなんだったっけ?」と思ったことをきっかけに、調べたり、考えたりしました。 また忘れるので書き留めておこうと思います。 本題…

2ヶ月でUMTP L1~L3 を取得したので、その合格体験記

はじめに メーカーのコーポレート部門でソフトウェアエンジニアとして働いているモンゴルです。 11月中旬頃から勉強を初めて、1月中旬に無事UMTP L1~L3まで取得することができたので、その記録を残しておこうと思います。 UMTPに興味を持たれている方のお役…

「エンジニアのためのマネジメントキャリアパス」を読んだ。そしたら、キャリアについて少しスッキリした

はじめに メーカーでコーポレート部門でソフトウェアエンジニアをやっているモンゴルです。 最近、自分のキャリアであったり、自分の周囲の体制について考えることがあり、なにか参考にしたいと思い、次の本を読みました。 エンジニアのためのマネジメントキ…

「UMLモデリングのエッセンス 第3版」を読んだ

はじめに Clean Architecture 達人に学ぶソフトウェアの構造と設計 (アスキードワンゴ)やエリック・エヴァンスのドメイン駆動設計を読んでいて、UMLが当たり前のように出てくるので、この機会にちゃんと学んでおこうと思い、下の本を読んでみました。 UML モ…

私のスキルマップ作成の進め方

はじめに mongolyy.hatenablog.com に続き、スキルマップ作成の進め方についてここに整理してまとめておこうと思います。 進行役としてやること 事前準備 スプレッドシート、miro、notion等で表を作っておく 説明資料をwiki等に書いておき、参加メンバーに事…