$shibayu36->blog;

株式会社アンドパッドでエンジニアをしています。プログラミングや読書のことなどについて書いています。

tech

マイクロサービス化や大規模リファクタリングの手順を学ぶ - モノリスからマイクロサービスへを読んだ

本当に最高の本でした。マイクロサービス化に取り組んでなかったとしても、規模が一定以上大きいプログラムのリファクタリング手法としても勉強になるので、みんな読みましょう!少なくともマイクロサービス化をしていきたいと思っていて、この本を読んでな…

before_actionなどのCallbacksに登録されているものを知る方法

Railsのbefore_actionとかが何が実行されたか知る方法はあるのだろうか— 柴崎優季 (@shiba_yu36) 2021年11月12日 と悩んでいたが、方法を教えてもらえたり、便利なツールを発見したりしたのでメモ。方法は二つ。 特定アクションアクセス時に登録されているCa…

Auth0でユーザーがMFAの設定をしている時のみMFA検証フォームを出す

ユーザー設定画面にMFAの設定画面があり、それが設定されているときだけログイン後にMFAのフォームを出したいという要求はよくある。これをAuth0を使っている場合に達成したかった。しかし、Enable Multi-Factor Authenticationなどを見ても、全体に有効/無…

git grepの結果に、その行を書いたAuthorを表示する

あまり知らないコードを触るときに、周りのコードを参考にしたいことが多い。しかし、そのコードの技術スタックに詳しくない場合、どのコードは筋が良いかというのが全く分からないことがある。そういう時に、その分野に知見がある人が書いたコードを参考に…

「価値が最低の段階で問題発見し解決すべき」と「ソフトウェア開発のプラクティス」

最近「HIGH OUTPUT MANAGEMENT」を読んでいて、製造工程では「価値が最低の段階で問題発見し解決すべき」という話が出てきた。この言葉を見て、ソフトウェア開発のプラクティスも結局こういう話だなと思った。例えば リーン開発は、価値最小の段階でユーザー…

rubocopでの自動フォーマットを高速化する

VSCodeでrubocopを使って自動フォーマットをしているのだが、フォーマットが本当に遅くてめちゃ困っていたのが完全に解決して感動したので記事だけ共有。 dev.to formatに3秒くらいかかっててマジつらい...って感じだったのが1秒未満とかになったので本当に…

今いるレポジトリのPR一覧をpecoで絞り込んでcheckoutする便利コマンド作った

OSS活動とか仕事をしてる時に、PRをチェックアウトするのだるいなと思っていた。そこで「今いるレポジトリのPR一覧をmodified順に出力し、pecoで選択したものをcheckout」出来たら便利だろうということで作った。 できたもの やり方 まずhubとpecoをインスト…

Auth0を試した

自分でサービス作るときにもう認証を自前実装するのは嫌だよなあと思っていてAuth0が気になっていたので試してみた。 Auth0のコンソールでアプリケーションの新規作成をした後、とりあえず使えるようにするだけのコードは https://github.com/shibayu36/type…

開発組織をスケールする方法を学びたい - 「ユニコーン企業のひみつ」を読んだ

開発組織が拡大しても、一人当たりの生産性を落とさずに、かつ顧客にとって本当に必要なものを作り続けるにはどうしたら良いのか考えている。その一環として「ユニコーン企業のひみつ」を読んだ。 ユニコーン企業のひみつ ―Spotifyで学んだソフトウェアづく…

ペア制度を導入して、開発チーム内の相談しやすさ向上・知見展開・透明性向上を狙う

最近プロジェクトマネジャーを担当していた仕事で、開発チーム内の相談しやすさ向上・知見展開・透明性向上・WIPタスク数減少を狙ってペア制度というのを導入した。今回は導入した背景、導入した仕組み、そしてその振り返りについてブログに書いておきたい。…

開発パフォーマンス指標とバリューストリームマップでチーム改善をする

以前Pull Requestから社内全チームの開発パフォーマンス指標を可視化し、開発チーム改善に活かそう - Hatena Developer Blogの記事で、開発パフォーマンスを可視化する話を書いた。その後、バリューストリームマップを作り開発フローの課題を洗い出して、チ…

リモートワークに必要なスキルの言語化を試みる

最近リモートワークでしばらく暮らしたところ、オフィスの時より人によって成果の差が出やすいと感じている。また昔からリモートワークしてきた人の様子を見ていると、仕事の進め方がうまいと感じることが多い。このことから、リモートワークに重要なスキル…

Next.js + GraphQL Nexus + graphql-codegenを試した

2分コーディングで、Next.js + GraphQL Nexus + graphql-codegenを試したのでメモ。 yuyao.me 試した様子は こちらに残しているので参考にしてください。 今回の構成でできること Next.jsのAPI RoutesでGraphQL Serverを実装 GraphQLのサーバ側のSchemaや型…

「プロフェッショナルSSL/TLS」を読んだ

プロフェッショナルSSL/TLS作者:Ivan Ristić発売日: 2018/06/04メディア: 単行本(ソフトカバー) 最近ふとSSL/TLSの仕組みについて知りたくなったので、「プロフェッショナルSSL/TLS」を読んだ。 かなりいろんな話題を網羅していて、かつ具体的な設定例など…

継続的に学習するために効いたやり方3つ

育児していて時間があまり取れない状況下で継続的に学習するために色々な方法を取り入れているんだけど、その中で最近めちゃくちゃ効いた3つのやり方を紹介。 やりたいことリストを作っておく 今日のTODOリストを作る 2分間コーディング やりたいことリスト…

Next.js + Prisma + NextAuth.js + React Queryを試した

2分コーディングの一環でNext.js + Prisma + NextAuth.js + React Query で作るフルスタックアプリケーションの新時代をやった。とにかく簡単に認証 + DBアクセスがあるアプリケーションを作ってvercelにデプロイできるサンプルが出来て非常に良かった。趣味…

PostgreSQLのSSL接続の様子を観察する

遊びでNode.jsのprismaからherokuのPostgreSQLのDBへ接続しようとしたら、error: no pg_hba.conf entryというエラーが出て困ってしまった。ちょっと調べてみると、herokuのPostgreSQLのFreeなプランはSSL通信を自己署名証明書を使っているためエラーになって…

オフィスでの仕事で何が生まれていたか a.k.a リモートワーク時代でも取り戻したいもの

この一年、オフィスのオフラインでの仕事から、一気にリモートワークのオンラインでの仕事に切り替わった。その中で色々困っていることが共有されているが、特に雑談がしづらくなったというデメリットを見かけることが多い。 そこで今回は、リモートワーク時…

TypeScriptで「Reactを自作しよう」をやってみた

最近2分間コーディングのすすめ、コードを書く習慣のハードルを下げるに触発されて2分間コーディングをやってみている。まずは昔興味が出ていたReactを自作しようをやってみたのでメモ。 やった様子は https://github.com/shibayu36/building-own-react に置…

AirPods ProとKrispでリモートミーティングの音声を快適に

最近家族と同室でリモートワークをしている。自分と家族は別々で仕事をしているので、家族が電話中の時に自分はミーティングをしていることがよくある。その時、家族の声によってミーティングの声が聞き取りにくくなったり、家族の声がミーティングに入って…

プロジェクト初期は理想日見積もりし、徐々に相対見積もりへ移行する

プロジェクトマネジメントにおいて、見積もりをどのように行うかは結構難しい。僕は理想日見積もりの形式も、相対見積もり(ストーリーポイント)の形式も試したことがあるが、どちらも一長一短であった。 最近色々試す中で、プロジェクト初期は理想日見積もり…

タスクの依存関係とリソースの両方を考慮してプロジェクトマネジメントをするCCPM理論を学んだ

自分のプロジェクトマネジメントのスキルをもう一つ伸ばしたくて、タスクの依存関係とリソースの両方を考慮してプロジェクトマネジメントをするCCPM(クリティカルチェーンプロジェクトマネジメント)理論を学んだ。この理論を学んだおかげで、よりプロジェ…

読書のやり方を変えてみたら知識の吸収速度・引き出し速度が上がった話

最近以下のような記事や本を読み読書法を変えてみたところ、知識の吸収速度・引き出し速度が上がったと感じるので紹介。 kentarokuribayashi.com 知的戦闘力を高める 独学の技法作者:山口周発売日: 2017/11/17メディア: Kindle版 やり方 以下のような流れで…

リモートワークでは自己主張スキルが大事な気がしてきた

リモートワークをしていると特定のスキルを保有しているか否かで自分の成果や成長が大きく変わってくると感じてきている。その中の一つとして最近感じているのが自己主張スキル。 なぜそう感じるか。それは最近ローカルでの開発からリモートの開発になったこ…

puppeteerを使って最近の自分のブログのサマリーを出す

評価時期で自分のアウトプットの様子を出す必要があり、この機会にTypeScript + puppeteerでシュッとスクレイピングするの試してみるかと思い、やってみた。 完成したもの https://github.com/shibayu36/tools/blob/a7156bc03620700105cc52e54d69cac38b13f40…

他人を動かすコミュニケーション手法を学ぶ - 「人を動かす」読んだ

最近どのようにすればチーム内や組織内に良い変化を与えることが出来るのか悩んでいた。とにかく自分でやったら良い系だと簡単なのだけど、他の人にも積極的に協力してもらう必要があるものについては難しい。そのような時にも、うまくやる手法を学ぶために…

「リモートワークの達人」読んだ

リモートワークの達人 (ハヤカワ文庫NF)作者:ジェイソン フリード,デイヴィッド ハイネマイヤー ハンソン発売日: 2020/07/02メディア: Kindle版 最近ほとんど全員がリモートで働くことになり、今までのやり方ではそこそこ困っているので読んだ。 「いやな言…

部下の困りごとをマネジャーが解決しすぎない方が良い

マネジャーをやっていると、1on1でいろいろな困りごとを相談されたり、雰囲気を感じ取ったりで、部下が困っていることがよく見える。その時「頑張ってマネジャーの自分が解決しないと!」と思い、全部自分で解決してしまうことがある。しかしこのようなやり…

「プロジェクトマネジメントの基本」読んだ

プロジェクトマネジメントをちゃんと学ぼうシリーズ。今回はプロジェクトマネジメントの全体像を知るために、「プロジェクトマネジメントの基本」を読んだ。 プロジェクトマネジメントの基本 この1冊ですべてわかる作者:好川哲人発売日: 2014/05/30メディア…

「デッドライン」読んだ

最近プロジェクトマネジメントをちゃんと学ぼうと思って色々読んでいる。今回はデッドラインを読んだ。 デッドライン作者:トム デマルコ発売日: 2013/08/23メディア: Kindle版 読み物として普通に面白かった。また「チームの結束については、既存のチームを…