なぜコード品質を上げられないのか? スキルと方針の欠如が招く惨状
開発現場において「コード品質を向上させよう」という号令がかかることは珍しくありません。リファクタリングの時間を確保したり、テスト駆動開発(TDD)の勉強会を開いたり。しかし、実際にそれが定着し、息をするように高品質なコードが生産されるチームは驚くほど少ないのが現実ですよね。 誰もが「保守しやすく、変更に強いコード」を書きたいと願っているはずなのに、なぜコードの無秩序化は止まらないのでしょうか。 現…
開発現場において「コード品質を向上させよう」という号令がかかることは珍しくありません。リファクタリングの時間を確保したり、テスト駆動開発(TDD)の勉強会を開いたり。しかし、実際にそれが定着し、息をするように高品質なコードが生産されるチームは驚くほど少ないのが現実ですよね。 誰もが「保守しやすく、変更に強いコード」を書きたいと願っているはずなのに、なぜコードの無秩序化は止まらないのでしょうか。 現…
プロダクト開発の現場で「WHY・WHAT・HOWを意識しよう」という言葉、よく耳にしますよね。 エンジニアとして経験を積み、ただ目の前のコードを書くだけのフェーズを抜けてくると、自然とこういったレイヤーの違いを意識する場面が増えてくるはずです。 しかし、実際のミーティングでは「この機能はReactで書き直すべきか?」というHOWの議論と、「そもそもユーザーはこの機能を求めているのか?」というWHY…
「早くリリースしたいから、今回はちょっと品質を目を瞑って進めよう」 開発現場で耳にタコができるほど繰り返されるこのセリフ。皆さんも一度は言ったり、言われたりした経験がありますよね。そして、そのたびに「開発スピードと品質はトレードオフだから仕方ない」と、妙に納得したような諦めを感じていないでしょうか。 でも、ちょっと待ってください。この議論、そもそも「品質」という言葉の定義がガバガバなせいで、不毛な…
最近、PCをSnapdragon搭載のマシンに変更しました。 従来のインテルなどのCPU(x64)とは少し勝手が違うため、自分用の備忘録として、「ここだけは気をつけるべき」というポイントをまとめます。 Docker Desktop は「Arm版」が必須 Docker Desktopなんですが、いつもの感覚でMicrosoft Storeから取得したり、適当なインストーラーを使うと起動しません。 S…
IT系のシステムエンジニアは、世の中にたくさん増えているが、会社内にまだまだ体制自体が整っていないことが多いです。 ぼく自身もそういった会社でたくさん働いています。 その時に、どういうことをしないといけないと思ったのかを残しておきます。 今回は現場についてです。 想定される状況 ぼくが置かれていた状況ともいえるが、大体、正規のエンジニアひとりか二人なのではないかと思います。 それ以外は、必要に応じ…
ある程度成長したサービスが次のフェーズに移るとき。例えば、0→10を目指すとき(0→10の中でも5以降かな)の壁を、素早く突破するためには、データの活用が必要になってくると考えている。 そのために、データ基盤を作成が必要になってくる。 世の中の情報を確認する際、ググってみたりすると、基盤の仕組みはたくさん出てくるが、どのような組織を構築すればよいかが出てこない。私自身はこうしたらよいのではないかと…