僕がruby on railsで開発したシステムがバグったようです。
製造物責任法に則って対処したのですが、せっかくプロのエンジニアが質問を受ける時のスピリットについて書けそうな問い合わせだったので記事にしました。
上記のキャプチャのチャットだけでは何のことかまったくわかりませんよね!
だからこそ、初手でどうやって返答するかでプロかアマチュアかわかるのですが
皆さんならどのように返答しますか?
ここで「どういうこと?」だけ聴くのはど素人の回答だと思うんです。
「もうちょっと詳しく状況を教えてください」って聞いても良いですが、エンジニアとしては20点ぐらいの回答だと思っています。
医者が「体がだるいです」って尋ねてきた患者さんに「どういうこと?」とは聞きませんよね。
「もうちょっと詳しく教えてください。」もあまり聞いたことないです。
っていうかそんな問診票(「あなたの体調はどこが悪いか詳しく書いてください」と書かれた問診票)存在してたまるかって思います。
「公開できないっていうのはlocalhost以外から繋がらないっていうことですか?」と答えるとちょっとプロっぽくなりませんか?
医者の例で言うならば「身体がだるいです」って聞いてきた患者さんに対して「熱はありますか?」って答える感じです。
これはプロとしてイケている回答だと思います。
ただ40点ぐらいですね!
これだけだと何も解決しないのでまだ回答としては不十分です。
「http://localhost:3000 にアクセスするとどんな画面が表示されますか?画面のキャプチャをください!」
「ちなみに他のPCから該当のサービスにアクセスしたときはどんな画面になりますか?画面のキャプチャをください!」
だいぶプロっぽくなってきました。
railsの知識があるならば正しい状態の画面もわかっているはずです。
ならば意図した画面が出ているか、または出ていないとしたらどんな画面がでているのか、そこから状況をつかめますよね!
ここまでくれば60点だと思います!
エンジニアならではの知識からお客さんの状況を察して次にとるべきアクションを案内できるのはプロっぽいですよね!
「起動時のオプションで外部からのアクセスが許可されていない可能性が高いです。rails s -b 0.0.0.0 を試してみてください。」
これはプロの回答だと思います。
rails起動時によくありがちなミスやrailsそもそもの仕様をしっかりと把握しているプロだからこそ、原因を予測できますし、その予測した原因に対する解決策を提示することもできますよね!
それでダメならばより詳細な調査をすれば良いですし、逆にこれで直ればコミュニケーションコストは最小で済みます。
これは80点の回答だと思います!
※残りの20点は伸び代です。
エンジニアとして働いていると知らぬ間に、「状況を詳しく教えてもらわないと解決できない」と言うバイアスにかかっていたり、「システムログがないと原因なんてわからない」と言うバイアスにかかっていたりします。
もちろん時と場合によってはそれらの情報はマストですが、必ずしも常に自分が欲しい情報が全て手元にあるとは限りません。
不足している情報を自分の経験とノウハウで補完して目の前の問題を解決できて初めてプロだと僕は思っています。
システムに関する問い合わせは自分が医者になりきったつもりで捌いてみるのがオススメです。
医者(プロ)は原因不明の病気でも「◯○の可能性が高いから1週間この薬を試してみましょう!」って解決策の提示と問題の切り分けを同時にこなしますよね!
エンジニアもおなじですぞ!
最後まで読んでいただきありがとうございます。もしこの記事を気に入って頂けたようであればシェアをお願い致します。非常に励みになります。