タグ

ブックマーク / note.com/simplearchitect (11)

  • ウォータフォールはやめて2024年の開発をやろう!|牛尾 剛

    今回の記事は特に私の意見であり、所属会社の意見ではないことをお断りしておきます。 最近になってまたウォータフォール vs アジャイルの議論を見かけることが多くなってきたので、私が勤務する米国の世界規模のクラウドプロバイダーでは2024年現在どんな開発をしているのかをご紹介したいと思います。私はこれが「正解」といいたいのではなく、何らかのポイントが皆さんの何らかの参考になったらいいなと思って筆をとりました。 ちなみに、2016年時点で私のウォータフォール開発に対する考え方は下記のブログの通りで今も変わっていません。ただ、2024年現在だからといってアジャイルをやるべきと思っているわけでもありません。 もし、今ウォータフォールをやっている人がいたら「そんなこと言ってもどうしたらええねん」となると思うので、自分なりの解決方法も考えてみました。 最初に自分的な結論を書いておくと「2024年の開発と

    ウォータフォールはやめて2024年の開発をやろう!|牛尾 剛
  • 世界一流エンジニアは自分と考えが真逆だった話|牛尾 剛

    今日はちょっと驚いたことがあったので、自分の記録のためにも書き残しておきたい。 ライブサイトの問題 自分のやっているプロジェクトで問題が起こって、その障害の復旧と調査にあたっていた。問題は大きいが、DividedByZero が起こっている。これはスポットしやすい。 自分の見慣れたコードパスをログを頼りに DividedByZero が起こりうるところを特定する。 実際にそれが起こるところは2点と特定する。 フロントエンドが0台になる アプリケーションの必須の設定が0になっている どちらも通常あり得ないが、どう考えても前者である可能性は低い。もし前者だとしたら、問題はここだけに収まらない。最近変更を他のチームが加えた後者が最も有力だろう。何せ今までそれは起こったことが無いから。調査に協力してくれた Cooper も同意見だった。 問題の特定に時間を使う 残念ながらログが出てないので、調査が

    世界一流エンジニアは自分と考えが真逆だった話|牛尾 剛
  • 科学的根拠に基づく最高の勉強法がガチで良かった話|牛尾 剛

    最近読んでめっちゃ良かったが下記のだ。現在Amazonを見たら総合で35位で、星の評価が5つと半端ない。著者の方は以前から YouTube 動画などで勉強させていただいてたが、が出たので速攻で買った。 勉強法とか大好物の自分としては読むしかないと思って買った。これは星5つは間違いない出来であった。さっそく自分も著者のメソッドを実施してみた。 実はこのは、こので紹介されている、そして私もそう思っている科学的に証明されたメソッドが効果の高い順から掲載されている。しかも、このの面白いところは、こののメソッドがを読みながら各テクニックを体験できるところなので、ぜひ紙と書くものを用意してを開いてほしい。 説明しないけど、多分こんな感じになる。わしは字が汚いので読めないだろう。 あんまし内容を書くとネタバレになったら申し訳ないので書かないけど、自分がめっちゃくちゃ嬉しかったことを書い

    科学的根拠に基づく最高の勉強法がガチで良かった話|牛尾 剛
  • 納期がなぜ生産性をぶち壊しにしているのか?|牛尾 剛

    昨年NewsPicks さんに取り上げてもらって最近動画が公開されました。そこでもお話させてもらっていることなのですが、アメリカで働きはじめると日人からすると「納期が無い」感覚が物凄く衝撃的だった。 最近、納期が無いことと生産性について頭の中で整理がついてきたのでシェアしておこうと思う。ちなみに、動画も含めて、私の発言は私の体験と意見であり、所属会社には全く関係が無いことを改めてお断りしておきます。 日米納期の感覚の違い アメリカで働いていると、日人からすると納期がほとんどないという感じを受ける。もちろん納期があるものもあるが「当に必要なもの」に限られる。例えば、大きなカンファレンスで何かの製品を発表するとかそんなのだと納期はもちろんある。そうでなれけばほとんど無いという感覚だ。私の所属会社だけではなく、北米の他の会社の人も同じような感覚らしいので文化によるものだと思う。 常に納期が

    納期がなぜ生産性をぶち壊しにしているのか?|牛尾 剛
  • プログラミングというより物事が出来る思考法~実践編|牛尾 剛

    大変多く読んでいただいた「プログラミングというより物事が出来る思考法」というポストや、世界一流エンジニアの思考法の書籍で紹介した内容がある。 私の職場でも、ものすごく出来る人が「実践」しているところを何回も目撃しているので「実践編」として皆さんにシェアしようと思って今回のポストを書いてみた。 タイトルにもある通り、私はエンジニアだが、ビジネス書である書籍と書かれた多くの思考法と同じく、あまりエンジニアリングというものに関係ない要素であると感じている。 上記のポストや書籍でシェアした内容を端的に言うと「理解には時間がかかるがかける価値が十分あり、それによって自分が物事をコントロールしている感覚を身につけることが出来る」という自分の小さな発見だ。私がこのことを最初に発見したのは、新卒の出来る人々との出来事がきっかけだが、今回その小さな自分なりの発見を後押しするような出来事がいくつかあった。それ

    プログラミングというより物事が出来る思考法~実践編|牛尾 剛
  • アメリカの職場ではなぜドキュメントも無いのに人が去っても問題ないのだろう?|牛尾 剛

    アメリカの職場にいると、日にいるときよりも身近でレイオフだとか、職を変えるというのを頻繁に見かける。先日もそういう場面があったのだが昔日で働いていた時のことを思い出した。 ドキュメントを書く理由 日のソフトウェア企業にいたときは、「納品物であるから」という理由以外にも、「人がいなくなったときに会社が困るから」という理由でもドキュメントを書くことが推奨されていた。しかし、少なくとも今の職場ではそんな理由でドキュメントを書くのは推奨されていないのに、なぜ問題にならないのだろうとふと思った。 うちのマネージャは、バディ制ににして、みんな休暇できるようにしようとは言っているが、多分当に退職対策ではないと思う。 チームのメンバーが抜けたときも、「とても残念で、ワークロードをどうしようという問題はあるけど、彼女の門出を祝福しよう」言っていた。つまり、こちらでも「工数」は問題になるけど、「引継ぎ

    アメリカの職場ではなぜドキュメントも無いのに人が去っても問題ないのだろう?|牛尾 剛
  • 仕事ができない感から完全脱却してみる|牛尾 剛

    わたしは未だに自分が「仕事ができない」感がある。いや、たぶん思い込みじゃなくて、当にそうだと思う。周りと比べても意味はないのだが、明らかにプログラミングのスピードが遅いし、ソリューションや思考の精緻さに欠ける。アメリカのテックカンパニーの人員削減が盛んだしいつ首になってもおかしくないと思う。 「向いていない」エンジニアへのあこがれアメリカで自分がしたかったことは、今度こそ胸を張って「エンジニアです」といえるようになること。何かを作れる人間になること。これは今までの人生で一度もかなっていないことだ。だから、正直なところ「向いていない」と自覚している。 だから、自分と一緒に働いているVincentに聞いてみた。彼は私よりずっと若いけど仕事をしっかりできる。私よりずっとプログラミングも素早いしロジックをよく覚えているし、複雑なリファクタリングもこなせる。 同僚の要領を得ない回答 彼にどうしたら

    仕事ができない感から完全脱却してみる|牛尾 剛
  • 生産性を上げようと思っていても無駄なこと|牛尾 剛

    今週、自分のメンターであるクリスから小さなアドバイスをもらって、それは自分が考えたこともなかった事だったので、忘れないようにメモしておきたい。 センスの正体クリスとのメンタリングセッションの日に、最近不思議に思っていることについて質問してみた。それは、自分の同僚に Vincent という人がいるのだが、彼もまた例にもれずセンスがとても良い。例えば、ログの分析も自分よりとてもうまい。それが自分がよく知らないエリアであっても、ログの分析が自分よりずっとうまい。 彼はとても若いけど、新卒ではない。そういう条件なので、もしそれがセンスだとすると一体何が影響しているのかを知りたかったのでクリスにそれを伝えてみた。 Patience が足りないクリスは、少し考えてこういった。「君には多分 patience (我慢みたいな意味)が必要だと思う。」 彼は、ここに来る前から「プロダクション(実際にアプリを多

    生産性を上げようと思っていても無駄なこと|牛尾 剛
  • プログラミングというより物事が出来るようになる思考法|牛尾 剛

    私が人生でずっと悩んで追い求めていたものがついに解決した。それは、なんでも良いから何かが「出来るようになる」ことだ。 昔からいくらその対象に時間をかけても、努力しても、人並みにすらならない。人にやってもらうとか自分がやらないことに関してはうまくいくのだが、自分が何かが出来るようになるということに関しては人生50年目だが、絶望的で、それが自分の自己肯定感や、人並みに生きることへの罪悪感を生んでいた。人生で解決したかった問題 No.1 だ。だからそれをずっと解決しようと頑張ってきた。 ギター演奏での解決方法私はクソ不器用で、なにやってもできないので、人生で出来たらいいことを2つだけ定めた。ギター演奏と、プログラミング。ギター演奏に関しては少し前に解決した。根的な問題を一つ上げるとすると、「ゆっくりから、メトロノームで練習する」これだけだ。 ギターはもう何十年も演奏しているのに弾ける感がなかっ

    プログラミングというより物事が出来るようになる思考法|牛尾 剛
  • コードリーディングのコツは極力コードを読まないこと|牛尾 剛

    私はクラウドのプロダクトチームで働いているが、何を隠そう一番苦手で克服できていないことが、コードリーディングだ。ものすごーく時間かかるし、時間かかったうえに読み間違えたりするし、しかもめっちゃ頭使うのに他の人はずっと速いので敗北感しか残らない。先日もマネージャの Pragna に相談したら、最初は2時間かかるけど、3か月もしたら5分で終わるわよ。って言われたけど、いや、そもそも俺4時間は最低かかるねんけどな、、、って感じ。 技術イケメンの皆さんのアドバイス よくよく私のキャリアを考えると、OSSにコントリビュートとかしていることはあったが、めっちゃくちゃ巨大でややこしいコードベースを読んで理解する必要が無いことが多かった。1からコードを書くのは得意だが、他の人のを読んでがっつり理解してとか、どうやったら出来るのかわからない。 当然自分の周りの技術イケメンの皆さんにコツを聞いていたのだが、ど

    コードリーディングのコツは極力コードを読まないこと|牛尾 剛
  • 技術者には試行錯誤は圧倒的に悪であると腹落ちした話|牛尾 剛

    私はシアトルのクラウドの中の人として、ソフトウェアの開発を行っているが、先日ある問題がきっかけで、技術者には試行錯誤がとても良くないということが腹落ちしたので、忘れないように書いておきたい。 先日起こった事先日起こった事は、私がシアトルから一時帰国して、普段使わないラップトップを使って日から仕事をしている。 Application Insights というログを管理するプラットフォームがあるのだが、とても不思議なことに、Application Insights のログファイルを見ると完全に正常に動いているようにしか見えないのだが、クラウドのポータルに行くと、テレメトリが来ていない。 Application Insights のチームのメンバーが助けてくれることになったので、彼女に、Teamsで画面共有をして、「ほら、出ないでしょ?」と見せると、なんとテレメトリがポータルに来ている。その後

    技術者には試行錯誤は圧倒的に悪であると腹落ちした話|牛尾 剛
  • 1