yigarashiのブログ

学んだことや考えていることを書きます

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

エンジニアを増員するロジックについて考える

ソフトウェア開発で、より早くより多く価値を届けたいと考えた時、エンジニアの増員は有力な選択肢です。もちろん、人月の神話などで語られるように、人を増やしただけ線形に生産力が向上するというシンプルな世界ではありません。それでも多くの現場でエン…

EMキャリアを切り拓く「最強の現場リーダー」という働き方

このエントリはEngineering Manager Advent Calendar 202213日目の記事です。 まえがき このエントリは、以下のPodcastで話した内容を掘り下げて整理したものです。Podcastの方では本エントリで触れていないチームの具体的な様子等についても話しているので…

スクラムチームを3年リードして得た学びと目線

この記事ははてなエンジニア Advent Calendar 20227日目の記事です。 昨日は id:utgwkk さんでした。 さて、今日はスクラムの話です。スクラムの導入とリードは自分のキャリアにおける重要な仕事のひとつで、気づけば3年ほどスクラムと取っ組み合ってきまし…

段取りとマイクロマネジメントとスクラム

仕事ができるエンジニアはだいたい段取りがうまい。達成したいゴールがあるときに、AとBとCをやる必要があって、Bはわからないことが多いから先にやろうとか、AとCは並行してできるからCを誰かにお願いしようとか、とにかく目標を達成するための道のりをうま…

プロダクトの非機能的な改善の工数をどう確保するか

プロダクトの非機能的な改善をビジネスの中でどのように進めるかは、多くのチームが頭を悩ませる課題であると思います。本記事では私が最近考えていることをまとめてみようと思います。主に自社プロダクトの継続開発を想定した議論をします。 前提 まず非機…

User Agent文字列を使ったブラウザ判定の事例 2022年版

やむを得ず、User Agent文字列を使って特定のブラウザ向けにJavaScriptの処理を分岐する必要が生まれてしまったので、調査・検討のログを記事にまとめます。 基本的にはバッドプラクティスである ユーザーエージェント文字列を用いたブラウザーの判定 - HTTP…

Four Keysがなぜ重要なのか - 開発チームのパフォーマンスを改善する方法について

ソフトウェアエンジニアとして働き始めて以来、ずっとソフトウェアデリバリーのパフォーマンスに興味を持って、さまざまな改善活動をしてきた。当初はスクラムを中心としたプロセスの改善に注力したが、最近はチームの成熟に伴って技術的なプラクティスに興…

スキルマップに採用する予定の技術も書いてみている

スキルマップとは スキルマップは、チームで使っている技術を各メンバーがどのくらい習得しているかを集計したものです。スプレッドシートで表を書いてメンテナンスしているチームが多いのではないかと思います。このアクティビティのメリットは以下のような…

「職能横断チーム」の実践におけるアンチパターンと対策

近年のアジャイルムーブメントにおいて「職能横断チーム」は当たり前の概念になっています。ユーザーに価値を届けるのに必要なあらゆる機能をチームが備え自律的にコントロールすることで、リードタイムを短縮するとともに、イノベーションが起こりやすい環…

チームのベロシティを上げる vs. 安定させる

タイトルの議論はよく見られるもので、スクラムコーチの間ですら(一見すると)意見が分かれることがあるようです。自分は「安定させる」派だったのですが、CSPO研修を受講したチームのPOが「上げる」派のコーチングを受けてきて、改めてチームとしてどうい…

チームが重要な目標にリソースを使えているか可視化する

リソースを集中させるのは難しい プロダクト作りにおいては、一番効果が高いところにリソースを集中しリードタイムを縮めるのが良いとされています。スクラムをやっているなら、ただひとつのプロダクトゴールが掲げられていて、そのためのプロダクトバックロ…

がんばりすぎないふりかえりのススメ

がんばりすぎてふりかえりを嫌いになった 自分たちのやりかたを検査して改善するふりかえり。巷には様々な思想やフレークワークが出回っています。チームからうまく情報を引き出したり、教訓に昇華したり、SMARTなアクションを設定することも大事です。そう…

高すぎる認知負荷が生むサービスの袋小路とエンジニアリングマネージャーの役割

最近流行りの「チームトポロジー」では、フローが改善するようにチームの認知負荷をコントロールすることが述べられています。そのためには組織とアーキテクチャをうまく変化させていく必要があり、いくつか主要な考え方やパターンが紹介されています。詳し…

「エラスティックリーダーシップ」でソフトウェア開発をうまくリードする方法を考える

僕にはリーダーシップがわからない。しかし無策で取り組むべきでないことだけはわかる。 ということで、自分の周囲で共通言語としてよく参照されている「エラスティックリーダーシップ」を読むことにした。自分は新米リーダーとして困りをたくさん抱えている…

テックリードとしてシステムの未来を示して品質の期待を合わせる

最近チームのテックリードを拝命して、テクノロジーマネジメント領域もリードすることになりました。興味の中心は開発プロセスやデリバリーで、エンジニアリングはまだまだひよっこなので苦労の日々が続いています。この記事では新米テックリードとしての取…

Scrapboxの献立リストから食べるものを自動で決める

今日は豚の味噌漬けを食べた。コロナ禍に入ってから食事のほとんどを自炊でまかなっている。週に2回スーパーに買い出しに行くのだが、そんなに長居したいご時世でもないので、買い出し前夜に献立を計画して何を買うかメモするようにしている。 しかしこの計…

上司とのシンクロ率を高める

最近、指揮系統ツリーの真ん中くらいでリーダーシップを発揮することが増えてきました。つまり自分に上司も部下もいるという状態です(業界的には上司、部下という雰囲気ではないですが便宜上)。そこでうまくやる方法を色々と考えているのですが、そのひと…

計画は総量を増やす! - プロジェクト進行と計画の量のイメージ

※本記事では継続開発をしているスクラムチームがまとまった機能をリリースする状況を想像してください。関係者は多くとも10人程度で、期間は3ヶ月程度のシンプルなものです。 プロジェクトのフェーズごとに適切な計画の量をイメージして共有できると上手くい…

エンジニアの異動は推奨すべきなのか? - 組織の成長について考える

最近エンジニアの異動について軽く議論することがありました。自分はチームの安定性の側面からやや否定的な立場だったのですが、その議論で刺激を受けて周辺領域も含めて考え直したところ、組織の成長という軸で色々な知識がつながって面白かったのでまとめ…

「Measure What Matters」を読んで思うOKR導入の困難さ

ここ半年でメンティーを2名持ち、1on1によるメンタリングと評価プロセスの一部を担っています。その過程で、目標設定や評価をもっと良くしたいと思うようになりました。せっかく時間を使うなら、成長を支援する、パフォーマンスを引き出す、上位の目標を意識…

「チームトポロジー」を読んで組織とシステムを設計するための知見を得た

チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計を読みました。チームの形やインタラクション、担当プロダクトの認知負荷について悩んでいたので、何かまとまった知識をインプットしたいと思って手に取りました。内容は期待以上で、組…