相手に時間を作ってもらうための手段
SES先(常駐先)では関係性が薄いことも多く、相手の時間を奪うことに余計に気を遣ってしまいます。メールやチャット(Slack, Teamsなど)で、相手のスケジュールや空き時間をスマートに確認するための具体的な文面とテクニックをまとめました。
1. 「いつ、どうやって質問していいかわからない」
チャットツール(Slack / Teams等)での確認テンプレチャットで聞く
「要件(何分かかるか)」を最初に見せ、相手が「Yes / No」または「〇時なら」
と一言で返せる状態にするのが鉄則です。
基本パターン(当日中に少し時間が欲しい時)
お疲れ様です、[自分の名前]です。[案件名/タスク名]の実装方針について、
5分ほどご相談したいことがございます。
本日、どこかでお時間をいただくことは可能でしょうか?もしよろしければ、
ご都合の良い時間帯(例:15時以降など)を教えていただけますと幸いです。
スケジュールが詰まっていそうな先輩へのパターン
お疲れ様です、[自分の名前]です。
[機能名]のエラー解消についてアドバイスをいただきたく、
10分ほどお時間をいただきたいです。
カレンダーを拝見したところ[○時〜○時]のあたり
が空いていそうに見えたのですが、その時間帯にチャット、
または通話のお時間をいただくことは可能でしょうか?
もし他のお時間がよろしければ、ご指定いただけますと幸いです。
メールの文面テンプレ(少し硬めの現場や他部署向け)メールの場合は、相手が予定を調整しやすいようにこちらから候補日時を3つほど提示するのがマナーです。
[相手の会社名] [相手の部署名][相手の役職/お名前]お疲れ様です。
[自分の会社名]の[自分の名前]です。
現在担当しております「[タスク名]」の仕様につきまして、
確認させていただきたい点が数点ございます。つきましては、[相手のお名前]様
のご都合の良いタイミングで、10分〜15分ほどお時間をいただくことは
可能でしょうか。私の方では、以下の時間帯であればいつでも調整可能です。
【候補日時】
・○月○日(水)13:00 〜 15:00
・○月○日(木)10:00 〜 12:00
・○月○日(金)16:00 〜 18:00
上記でご都合が悪い場合は、
お手数ですがご都合の良い日時を2〜3お聞かせいただけますと幸いです。
お忙しいところ恐縮ですが、よろしくお願いいたします。
気軽に聞ける関係性や環境であれば、デスクに直接行って声をかけるのが一番早くて確実
文字だけでは伝わりにくいニュアンスも、対面(または画面共有)なら一瞬で解決します。現場の雰囲気や相手との関係性が良好なら、これほど強力な方法はありません。もし対面でフラッと声をかける(デスクに行く)場合は、以下の「3つのプチ・テクニック」を意識すると、相手に嫌がられず、さらに「配慮ができるエンジニア」として好印象を持たれます。
デスクで声をかける時の3つのプチ・テクニック
1.「今、キリのいいところですか?」と聞く
エンジニアは「集中力のゾーン」に入っている時、話しかけられるとコードの思考がリセットされてしまいます。「今お時間大丈夫ですか?」よりも、「今、キリのいいところ(または、脳のメモリに余裕がある状態)ですか?」と聞くと、エンジニア特有の作業リズムに配慮してくれていると感じて嬉しくなります。
2.画面(エラー画面やソースコード)をすぐ見せられる状態で行く
「〇〇のエラーが出ちゃって…」と口頭だけで説明されると、相手は頭の中でコードを再現しなければならず疲れてしまいます。ノートPCを持っていくか、相手を自分のデスクに呼ぶ準備をして、「1秒でエラー画面を見せられる状態」にしてから声をかけるのが鉄則です。
3.「〇分だけ」と最初に宣言する
チャットと同様に、対面でも「5分だけ、実装の方向性を見ていただけないでしょうか?」と時間を区切ります。終わりが見えていると、相手も「それくらいなら今見ちゃおう」と快諾しやすくなります。
2. 「どこまで丁寧に仕様を確認していいかわからない」
「作成するとき(実装前)」の仕様確認の本質は、自分が手を動かす段階になって、
迷ったり手が止まったりして困らないように、あらかじめ障害物を取り除いておくこと」にあります。
① 「何を以て『テスト合格』とするか」の基準(期待値)
プログラムが動くのは大前提として、「画面の見た目の微調整まで完璧に合わせる必要があるのか」「まずは機能(ロジック)が動けばOKなのか」という「クオリティの合格ライン」を確認します。
② 「どの環境・どの端末」で確認すべきか(テスト環境・スコープ)
テストを行うステージ(検証環境、ステージング環境など)と、
対象となるデバイスを明確にします。
③ 「誰の、どんなテストデータ」を使うべきか(データ条件)
本番に近い複雑なデータ
(例:過去の購入履歴が100件以上あるユーザー、特殊な記号が含まれる名前など)
でテストする必要があるか確認します。
3. 「レビューで指摘された内容に反論していいかわからない」
最も大切なのは「自分が正しいと思う理由(意図)を伝えること」と、「なぜダメなのかという相手の理由(背景)を正しく理解すること」です。
コードレビューは「どちらが偉いか」を決める勝ち負けの場ではなく、「プロダクトにとって最高のコードは何か」をチームで探るディスカッションの場だからです。
特にSES先などでは遠慮してしまいがちですが、理由を曖昧にしたまま「言われた通り直すだけ」にすると、自身の成長に繋がりません。角を立てずに「自身の意図」を伝え、かつ「相手の理由」を引き出すための具体的なステップとフレーズをご紹介します。
1. まずは「自身の正しいと思う理由」を伝える
(意図の提示)感情的に「いや、こっちの方が良いです」と反論するのではなく、「なぜ自分がこのコードを書いたのか」という客観的な理由(エビデンス)を添えて伝えます。
伝える時のポイント:
・パフォーマンス(処理速度)の向上
・可読性(他の人が読んだときのわかりやすさ)
・既存のコード(他パーツ)との統一感
・拡張性(将来機能を追加しやすい)
2. 「これではいけない理由」を正しく聞き出す
聞き出す時のポイント
「自分の無知」を責めるスタンスではなく、「プロジェクトの思想を理解したい」というスタンスで聞く。「なぜですか?」と短く聞くと攻撃的に聞こえるため、「今後のために理由を学びたい」というニュアンスを含める。
ご指摘いただいた修正案、勉強になります。
1点、今後のコーディングの参考にさせていただきたいため質問させてください。私が書いていた従来の書き方だと、「パフォーマンス面や、今後の保守運用の観点で、どのような問題(懸念)が発生する可能性」がありますでしょうか?今回のプロジェクトにおける最適な書き方の基準を正しく理解したいため、お時間のある際にご教示いただけますと幸いです。
4. 「バグや、怪しい部分を見つけたときに指摘しづらい」
他人のコードにバグや怪しい部分を見つけたとき、特に相手が「SES先の生え抜き社員(プロパー)」「大先輩」「気難しい職人肌のエンジニア」だと、どう指摘すべきか本当に気を揉みますよね。この問題の解決策は、相手のプライドを傷つけないように「主語を人ではなく『コードの挙動』にする」こと、そして「相手の立場(役職や関係性)に合わせて伝え方を変える」ことです。
タイプ1:大先輩・プロパー社員(目上の人)の場合
【スタンス】自分の勘違いかもしれない、という体(てい)で質問する目上の人に対して「ここ間違ってますよ」と上から目線で指摘するのは絶対にNGです。
「私の勉強不足かもしれないので教えてほしい」という姿勢で聞くと、相手のプライドを守りつつ、自発的に気づいてもらえます。
お疲れ様です、[自分の名前]です。
すみません、現在コードを読み進めている中で、1点私の理解が追いついていない部分があり、勉強のために質問させてください。[ファイル名]の[〇行目]あたりで〇〇の処理を行っている箇所ですが、もし[特定の条件(例:ユーザー名が未入力の場合など)]のデータが流入した際、ここの挙動はどうなる仕様でしょうか?もしかするとエラーや予期せぬ挙動になる可能性がないか気になり、認識合わせのためにお聞きいたしました。お時間ある際にご教示いただけますと幸いです。
タイプ2:同僚・他のSESメンバー(対等な関係)の場合
【スタンス】一緒にバグを未然に防ぐ「仲間」としてフラットに伝える
距離が近い相手であれば、過剰にへりくだる必要はありません。ただし、「バグを見つけたぞ」と責めるのではなく、「リリース前に一緒に気づけて良かったね」という協力的なスタンスで伝えます。
[相手の名前]さん、お疲れ様です!
今さっき[機能名]のコードをパッと見ていて気になったところがあったので、念のため共有です。[〇行目]の条件分岐のところ、もしかして[バグが起きる条件]のパターンのときに考慮が漏れちゃったりするかな?と見えました。もしリリース後にここでエラーが出ると[相手の名前]さんも対応が大変になっちゃうと思うので、一度一緒に挙動を確認させてもらってもいいですか?
3:後輩・打たれ弱い新人エンジニアの場合
【スタンス】心理的安全性に配慮し、答えを押し付けず「気づき」を促す
経験の浅い人に対して厳しく指摘すると、萎縮してしまい「次からコードを書くのが怖い」となってしまいます。「誰でも最初は見落とすよね」という優しい空気感を作りつつ、自分で気づけるように誘導します。
5. 「わからないところが、わからない場合」
「何がわからないのか、自分でも分からない」という状態は、エンジニアなら誰もが一度は経験する最も苦しい瞬間です。この状態を放置すると時間だけが過ぎてしまいます。
「会議」「プログラム」「仕様」の3つのシチュエーション別に、その場を切り抜け、周囲にうまく頼るための具体策をまとめました。
1. 【会議の場合】話の流れに置いていかれたとき
専門用語の連発や、前提知識の不足で「何について議論しているかさえ不明」という状態です。
やるべきこと: その場で話を止めずに「キーワード」だけをメモし、会議の終盤か終了直後に「自分の理解の現在地」を伝えて確認します。
NGな行動: わかったフリをして相槌を打ち、タスクを振られてから「実は分かりません」と言うこと。
2. 【プログラムの場合】エラーや実装で行き詰まったとき
コードが動かないのに、エラー文の意味も分からず、どこを触れば直るのか見当もつかない状態です。
やるべきこと: 15分だけ調べたら諦めて、「今の自分の状況(やったこと・やりたいこと・起きたこと)」をそのまま先輩に見せます。プログラムの場合は、口頭よりも画面を一緒に見てもらうのが最速です。
NGな行動: 闇雲にコードを書き換えて、さらにバグを複雑にすること。
3. 【仕様の場合】指示されたタスクの内容が理解できないとき
「これ作っておいて」と言われたものの、システム全体の動きやビジネス上の目的が見えず、何から手を付ければいいか困惑している状態です。
やるべきこと: 自分で10分だけ「こういう画面(機能)かな?」という想像の箇条書きやポンチ絵(図)を作り、「私の解釈と合っていますか?」とぶつけます。「ここが分からない」と言えなくても、「私の予想はこれです」と言うことで、相手が間違いを訂正してくれます。
NGな行動: 「分かりました」と言って自席に戻り、手が止まったまま数日過ごすこと。
「分からないことが、わからない」ときの共通マインド
周囲のエンジニアが一番困るのは、「何に困っているのか見えないまま、進捗が遅れること」です。完璧な質問をしようとせず、「今、何が分からなくて溺れそうなのか」という現状を素直にシェアすること自体が、エンジニアとしての立派な報連相(ほうれんそう)になります。
