指摘にも傷つきます。
どうしたらいいですか?
今回はこのような疑問に答えていきます。
【この記事でわかること】
【この記事の信頼性】
この記事を書いているのは現役のWEBエンジニアです。
これまでコードレビューも多く経験してきました。(レビューする側も、される側も経験あり)
コードレビューが怖い場合などの対処法なども熟知しています。
そもそもコードレビューという文化は必要なのか
コードレビューが嫌いなあなた。
おそらく「コードレビューなんて要らない」なんて思っているのではないでしょうか?
そこで本題の「怖い」「傷つく」場合の対処法の説明の前に、そもそもコードレビューという文化が必要なのかについて話したいと思います。
結論から話すと、コードレビュー自体は必要です。
絶対と言えるぐらいの必要性があります。
そう言い切る主な理由は以下の3つ。
・理由1:システムやアプリのバグを防ぐことができる
・理由2:保守性の高いコードを作成できる
・理由3:あなた自身の成長につながる
各理由について話していきます。
理由1:システムやアプリのバグを防ぐことができる
理由の1つ目がシステムやアプリのバグを未然に防ぐことができることです。
1人で開発を進めていると、チェック漏れが発生しやすいです。
思い込みでとんでもないミスをしていることも多い。
コードレビューをしてもらわないでリリースすることは、後からバグが発見されることに繋がります。
一方でコードレビューをしてもらうことで、そのようなミスを発見してもらうことが可能。
冷静な第三者なら、あなたが発見できないミスを発見したり、より良いコードの書き方を考えたりできるのです。
結果的にリリース後のバグも防ぐことができます。
バグを発生させてしまうと、当然に企業にダメージが生じます。
あなたも怒られたりすることもあるでしょう。
そういう事態を起こさないためにも、コードレビューは必要だと言えます。
理由2:保守性の高いコードを作成できる
2つ目が保守性の高いコードを作成できることです。
コードレビューは単にミスを発見するための作業ではありません。
「より良いコード」にするための作業です。
コードレビューを通して保守性の高いコードを作成することができます。
保守性の高いコードということは、今後の管理者や共同開発者にとっても扱いやすいコードということ。
企業にとってもメリットが大きいです。
開発者にとって、グチャグチャのコードほど嫌いなものはないでしょう。
(いわゆる「スパゲッティコード」ってやつですね)
そういう今後混乱を招くようなコードが生まれないようにするためにも、第三者にコードを見てもらうコードレビューは必要です。
理由3:あなた自身の成長につながる
3つ目があなた自身の成長につながることです。
コードレビューは正直、絶好の成長の機会。
実力のある先輩エンジニアなどに、あなたのコードの改善点を教えてもらえます。
それに、どういう意図でコードを書いたのかを整理する必要もあるので思考能力も鍛えられます。
あなたのエンジニアとしての能力を伸ばすために非常に大事な機会です。
「成長なんていらない」と思うかもしれないですが、エンジニアにとっては成長は大事。
もしコードレビューに向き合わないで、ずっと低レベルのコードを書き続けた場合何年経っても成長はしません。
4~5年経っても低品質なコードを書き続けるエンジニアをあなたはどう思うでしょうか?
おそらく「まじか、こいつ5年もエンジニアやっててこのコードかよ」と思うはず。
逆にあなたがこのコードレビューを避け続けた場合、そう思われてしまう可能性も高いです。
年数に応じた成長度を得るためにも、コードレビューはしたほうがいいです。
できる先輩がどのような視点でコードを書いているのかも理解できたので勉強になりましたね。
以上、コードレビューが必要だと言い切ることができる3つの理由でした。
なぜコードレビューが怖い・指摘に傷つくという事態が起きるのか
ここまでの話だと、一見良い面しかないコードレビュー。
しかしながら「怖い」「傷つく」と感じる方が一定数生まれてしまうのも事実。
そのような事態が起きるのには、次のような要因が考えられます。
・自分が頑張って書いたコードが否定されているように感じるから
・淡々としすぎて相手がキレているように感じるから
・全体チャットでレビュー結果がわかってしまって恥ずかしいから
各要因について話していきます。
自分が頑張って書いたコードが否定されているように感じるから
コードレビューでは容赦なく指摘が飛んできます。
「これは完璧だ」と思って提出したあなたのコードにも以下のような指摘が次々と飛んでくるでしょう。
・〇〇のパターンの条件分岐足りないです
・マジックナンバー直してください
・変数名を修正してください
・スペル間違ってます
こういう指摘が大量に飛んでくると、萎える方も多い。
どうしても自分のコードが否定されているような気がしてしまうからです。
僕もエンジニアになりたての頃は大量の指摘コメントにげんなりしてました...。
淡々としすぎて相手がキレているように感じるから
コードレビュー上のコメントが明るくて、かつあなたを励ますようなコメントならまだ恐怖を感じることも少ないはず。
しかし実際のところ、どの現場でもそんな明るいレビューはありません。
(もしかしたらあるかもですが、少なくとも僕は見たことがない)
ほとんどの現場では淡々とレビューが行われます。
・事実についての指摘のみ
・単語だけのコメント(例:変数名)
・ストレートな質問(例:なぜこの書き方をしたのですか?)
↑こういうコードレビューが来ると、慣れていない方は「もしかして相手キレてる...?」「なんか怖い...」と思いがちです。
メンタルが弱いやHSP気質の方にとっては辛いかも。
この淡々レビューが多くのエンジニアを悩ませていることは間違いないですね。
全体チャットでレビュー結果がわかってしまって恥ずかしいから
ほとんどの現場において、レビュー依頼は公開チャット上で行われます。
Slack上だと「開発」のようなチャンネルで行われることが多いはず。
なので、あなたの提出したプルリクエストが一発でApprove(承認)されないと、何回もレビュー提出の連絡をしないといけないことになる。
繊細な方は他の人に「あーまた再提出になってるよ(笑)」と思われているのでは?と思ってしまい、恥ずかしくなることもあるでしょう。
実際のところ僕を含め第三者は他人のレビュー状態なんて気にしてなかった。
しかし本人にとっては恥ずかしいことだったのでしょう。
以上、コードレビューが「怖い」「傷つく」と感じてしまう主な要因でした。
コードレビューが怖い・指摘に傷つくエンジニアのあなたのために解決策を提示
ではコードレビューに恐怖心を抱くあなたはどうすればいいのか。
結論、次の3つが解決策になります。
・解決策1:あくまでコードに対する評価でしかないことを意識する
・解決策2:より良いコードを書くための作業だと考える
・解決策3:実装時に予め相談しておく
各解決策ごとに解説します。
解決策1:あくまでコードに対する評価でしかないことを意識する
1つ目の解決策が「あくまでコードに対する評価でしかないことを意識する」ことです。
コードレビューで大量の指摘コメントをもらうと、どうしても自分が否定されている気分になります。
しかしほとんどの場合、相手はあなたを否定するつもりはない。
あくまでコードに対して改善を求めているだけです。
なので感情的にならないで冷静に「コード」だけを見つめましょう。
「こんなに指摘が来るなんて私はダメだ」「きっと嫌われている」とか考えなくていいです。
感情的にならないで、冷静にコードを見ることができれば恐怖の気持ちを抱かないですみます。
解決策2:より良いコードを書くための作業だと考える
2つ目が「より良いコードを書くための作業だと考える」ことです。
あなたはコードレビューは、単に評価される機会としか思っていないのでは?
もちろんその側面もあります。
しかしどっちかというとコードレビューは「より良いコードにするための共同作業」です。
レビューの担当者とあなたで協力してより良いコードを作り上げているのです。
そういう風に考えると、コードレビューにも前向きに向き合うことができる。
単純に受け身になって指摘を受け入れるのではなく、あなたの意見も表示してみましょう。
「こういう意図で書いた」とレビュー担当者に伝えてみて、議論を展開してみるのもありです。
解決策3:実装時に予め相談しておく
3つ目が「実装時に予め相談しておく」ことです。
なるべくコードレビューで指摘をもらいたくないあなた。
もしそうなら、実装時に指摘されそうな箇所についてコーディング方法を相談しましょう。
実装時に予め相談しておくことで、コードレビュー時の指摘も回避できます。
何回もプルリクエストを提出しなくても良くなるのでわりとオススメ。
そうすることでレビューの指摘も最小限にすることができた。
指摘されること自体が怖いと感じる方や、傷つくと感じる方にとっては有効的な手段かと。
以上、解決策3つでした。
コードレビューではなくただの「攻撃」になっている職場なら離れましょう
先程、コードレビューは単にコードを評価する機会でしかないと言いました。
しかし現場によってはコードレビューが人格攻撃になっていることがあるのも事実。
ハッキリ言いますが、そういう現場からは逃げましょう。
あなたが今コードレビューが怖くなったり、指摘に傷つくのは当たり前。
これ以上今の現場にとどまるべきではないです。
少し深堀りして話します。
【当てはまる?】コードレビュー時の人格攻撃例
具体的にコードレビュー時の人格攻撃の例をまとめてみました。
・「こんなこともわからないの?」とコメントをもらう
・全然ダメなど書かれる
・バカだのアホだの書かれる
・「〇〇なんですが....」と呆れる感じで指摘される
いかがでしょうか?
もし当てはまるのであれば、あなたは良くない現場(会社)にいる可能性が高いです。
このまま働き続けても精神衛生上デメリットしかありません。
(100%病むはず)
繰り返しますが逃げましょう。
これ以上、今の会社にいる意味はありません。
逃げる手段→転職
逃げるための手段ですが、やっぱり転職が1番ですね。
レビューの担当者を変えてもらうとかは難しい話なので、環境ごと変えてしまうのが手っ取り早いです。
転職時に利用した転職サービスは以下にまとめていますので参考にどうぞ。
転職サービスランキング【転職を考えている方向け】
あなた今の仕事をやめようと思ってます。けど次の仕事の探し方がわかりません。転職に失敗したくないので良いサービスを教えて下さい。 この画面を目の前にしているあなたはもう今の職 ...
続きを見る
フリーランスになるのもあり
なお、あなたが1年以上実務経験があるならフリーランスエンジニアになってみるのもありです。
・自由に働くことができる
・年収が高い
・現場を選びやすい
上記のようなメリットがあります。
実際、フリーランスエンジニアになることができれば月に60万円以上稼ぐこともできる。
【誰でも目指せる】「フリーランスエンジニアは稼げる」はマジです【1年で月収60万円達成】
あなたフリーランスエンジニアは稼げるって本当ですか? 本当ですよ。 僕は「高卒」+「パソコン初心者」からプログラミングを勉強し始めましたが、エンジニアになって1年後には月収 ...
続きを見る
フリーランスエンジニアになる際に利用するといいフリーランスエンジニアエージェントは以下にまとめています。
【徹底比較】フリーランスエンジニアエージェントおすすめランキング【実際に使用して評価しました】
あなたおすすめのフリーランスエンジニアエージェントってありますか? こんな疑問を持つ方のために、現役のフリーランスエンジニアが答えていきます。 結論から話すとフリーランスエンジニアエージェ ...
続きを見る
以上、人格攻撃を行ってくる現場からの逃避手段の紹介でした。
場所を変えるだけで働き方も大きく改善させることができますよ【知ってましたか?】
ということで今回はコードレビューの必要性を話しつつ、怖い場合や傷つく場合の対処方法も紹介しました。
コードレビューに対する向き合い方についても整理できたのではないでしょうか。
おそらく今のあなたはコードレビューについてすごい悩んでいるはず。
この記事を通して少しでも気持ちが楽になれば嬉しいです。
どうしても今の現場のコードレビューが苦手なら、先程話したとおり、働く環境を変えてみるのもあり。
場所を変えるだけで働き方も大きく改善させることができますよ。
会社によって雰囲気とか待遇はマジで違う
エンジニアを雇う会社は千差万別。
クソみたいな会社もあれば、神みたいな会社もあります。
なのであなたが気に入らない会社は離れてしまうのが吉。
エンジニアを募集している企業は多いですし、スキルさえあれば転職はそこまで難しくないです。
なぜか嫌な会社には嫌な人間が集まるもの。
そういう場所を避けることで働き方も改善できます。
エンジニア自体は続けることをオススメする
ひょっとするとあなたは「エンジニア自体を辞めたい」と感じているかもしれません。
まぁコードレビューで嫌がらせされたりしたら、エンジニアを辞めたくなる気持ちもわかります。
しかし、一時の感情でエンジニアを辞めるのはオススメしません。
エンジニアという仕事には将来性もある。
しかも年収も悪くない。
リモートワークなどの働き方もできる。
ぶっちゃけ、他の仕事よりも良い点が多い。
辞めてしまうのはもったいないです。
冷静に気持ちを整理してみるとエンジニアという仕事ではなく、今の現場が嫌いということに気づく方も多い。
もしあなたがそうなら、別の場所でエンジニアとして働いてみてはいかがでしょうか?
エンジニア転職などに関してはこちらにノウハウや体験談をまとめていますので、目を通してみると良いかもです。
今回は以上です。
最後までお付き合いいただきありがとうございました。