未経験の文系エンジニアが新卒1年目を終えて思うこと５選

[1]:https://qiita.com/wadakatu/items/d63dbf3c3c31ee797ff0
[2]:https://www.deepl.com/ja/translator

#自己紹介

皆様、初めまして。
文系プログラマーの和田カツです。
私は、社会人になるまでプログラムのプの字も知りませんでした。
つまり未経験で、この業界に入りました。
そろそろ新卒2年目になるので、この激動の1年を終えて思うこと５選を書いていこうと思います。
## 1. 質問は、しすぎくらいでちょうど良い。

先輩に、質問をするという行為は、新卒にとってかなり気が引ける行為だと思います。
「先輩の仕事の邪魔をしないか」
「仕事ができないやつだと思われるんじゃないか」などなど。。
色んな不安のせいで、質問することをためらい、自力で解決しようと奔走します。

しかし、最初のうちは、自力で解決できないことばかりです。
私のように未経験でこの業界に入った方なら尚更です。

**質問はしましょう。**

質問をせずに自分で何時間も悩んでも、大抵は答えが出ず、その数時間が無駄になります。
その数時間が、たった２、３回の質問をするだけで、**数十分に短縮**されることはよくあることです。

その余った時間で、先輩が抱えている他のタスクを手伝ったり、自分の学習の時間に当てることができます。

つまり、質問をすることは、誰かの邪魔をする行為ではなく、
自分と他の人の手助けをする行為です。

最初は、わからないのが当たり前です。
そのことは、先輩方もみんな承知の上です。
もし、それで上司、先輩に「質問するな！」と言われてしまった場合は
「器のちいせえ先輩だなぁ」とでも思って、他の先輩に頼る様にしましょう。
きっとあなたを助けてくれる先輩がいるはずです。

## 2. 機材にはこだわるべし。

どんな職業でも、適切な機材選びというのは仕事の効率、モチベーションを上げるのにとても大切です。

プログラマーも例外ではありません。
キーボード・モニター・マウスなど色んな機材に囲まれて、
毎日業務をこなします。
もちろん、機能に問題がなければ、安かろうが高かろうが、
どんな機材でも業務はできます。

しかしながら、やはり自分の手に馴染むもの、使ってて満足感が得られるもので
仕事をすることは様々な面でプラスの効果をもたらしてくれます。

私の場合、新卒一年目の３ヶ月目くらいに思い切って、HHKBのキーボード(3万円くらい)と
LGのモニター(4万円くらい)を買いました。
新卒１年目でそれほど給料も多くないので、かなりお財布事情的には厳しいものがありましたが、
買って後悔はしていません。むしろ、あの時購入に踏み切った自分に拍手を送りたい気分です。

**良い機材は、良い循環を生む。**

キーボードに関しては、打鍵感が素晴らしく、1日に何回タイピングしても飽きることがありません。
むしろ、身体がもっとそのキーボードの打鍵感を欲しているような錯覚にすら囚われます。
このキーボードは10年以上使い続けられる高耐久のモデルなので、減価償却のことを考えると
新卒１年目に買ったのは正解だと思いました。

モニターは、ノートパソコンの画面より遥かにインチが大きいモデルを買ったので、
業務で使うIDE、Google Chrome、terminalなど
複数のソフトウェア、ページを１画面内で収めることができるようになりました。
おかげで、一々ウィンドウを切り替えて、お目当てのページを探す
という無駄な作業を減らすことができました。

キーボードとモニター、その他機材のより詳細なレビューに関しては、[こちら][1]をどうそ。

「弘法筆を選ばす」という言葉もありますが、
弘法大師も、きっと自分によりフィットする筆を使用した方が
文字を書く効率、モチベーションも上がったと思います。
あなたも自分に合う道具を見つけてみませんか？　

## 3. 毎日、最低７時間睡眠は必要。
エンジニアになってから、睡眠の大切さを痛感するようになりました。
新卒１年目は研修、業務以外にもやることが多く、睡眠時間を削りがちです。
私もプログラミング研修中は、学んだことの復習がてら自分で何かとプログラムを組んだりしていたので、
毎日４、５時間睡眠とかザラでした。

しかし、そんな生活を１ヶ月強続けていると、身体と精神に必ずガタがきます。
私の場合、まず脳の機能がうまく働かないことが多くなりました。
簡単なロジックでも、時間をかけないと出てこない。
変数、メソッド名に指定する適切な英単語が出てこないなどです。

こういう現象が起こったとき、新卒１年目だと自分の実力不足を疑いがちです。
そして、もっと頑張らねばと夜通し作業を続けてしまう、そんな人も多いのではないでしょうか。
私はその一人でした。

しかし、大抵の場合、夜通し作業を続けても何も解決しません。
実力も向上しません。

こういう時、するべきことは１つです。

**寝ましょう！　何はともあれ、最低７時間の睡眠時間を確保しましょう！**

適切な睡眠時間をとっていれば、実力だったり、結果は後から付いてきます。
深夜にこの記事を見ているそこのあなた、今すぐお布団にダイブしましょう。

## 4. 完璧主義にならない様にする。

完璧主義。
万全を期すために努力し、過度に高い目標基準を設定し、
自分に厳しい自己評価を課し、他人からの評価を気にする性格を特徴とする人のこと(wikipedia参照)

**完璧主義はやめましょう。
世の中に完璧なことはありません。
プログラミングの世界では特にそうです。**

プログラミング言語、その他テクノロジーは日々進化していきます。
その進化の過程で、１日前はエラーなく動いていたコードが、次の日突如エラーの嵐になることも
可能性としては無きにしもあらずです。

そこで、もし完璧主義を貫いたままだと、
**「自分のミスでこのエラーが起こった」「自分がもっとしっかりしていれば。。」**など
自分を責めてしまうことになってしまいがちです。(実際、自分とは全く関係なくても)
自分を責めても、モチベーションが低下するだけで、良いこと１つもないです。

私も、入社当初はバグが一切ない完璧なwebsiteを作るぞ！とか
今思えば、当時は途方もなく高い目標設定をしては、その目標をクリアできず、何度も悩んでいました。

もちろん、適度に高い目標を掲げることは悪いことではないので、
最初は低めの目標から初めて、自分の力量・自身を基に徐々に目標のハードルを上げていきましょう。

## 5. 英語は読めた方が良い。

エンジニアは、英語が読めるだけでとても有利だと感じました。
英語を聞く、書く、話す。以上の３つは、できなくても有利不利は無いように思います。

ただ、英語を読むことに関しては、業務中、常に貴方に付き纏ってきます。

例えば...
・エラーメッセージを読む。（業務中、これに費やす時間一番長そう（小並感））
・エラーメッセージに対する解決策を海外サイトから探す。（stack overflowさん、お世話になってます）
・各プログラミング言語の公式レファレンスを読む。（入社当初はQiitaばっかり読んでました。）

上記以外にも、英語に触れる機会は意外とたくさんあると思います。

特に未経験からプログラマーになる方は、最初は数多くのエラーメッセージに出会うことになります。
エラーメッセージが日本語なら、問題ないのですが、残念ながら、十中八九英語です。
なので、少し英語が読めるだけで、だいぶ業務の効率化ができると思います。

例えば、英語を読むのが苦手な場合、
研修講師・上司の方にエラー内容の解読をしてもらう・翻訳ツールを使用して概要把握
などが選択肢として挙がると思います。

最近だと、[DeepL][2]などの高性能な翻訳機能を持つツールもあるので、
それで問題ないと考える方もいらっしゃると思います。
しかし、たまにニュアンスが適切で無い場合もあると聞きます。
それに、ただコピー＆ペーストをするにしても、貴方の貴重な時間を使用していることには変わりません。

英語が少しでも読めるとこれらの質問時間、翻訳にかける時間を短縮できます。
そして、その時間をエラーの解決策検索にあてることができます。
これだけで、業務の効率化に繋がると思います。
チリも積もればなんとやらです。。

**英語が読めるだけで、１つの武器になります。**

私は、運よく大学で外国語専攻していたので、この恩恵を存分に受けることができました。
今、学生でこれからエンジニアを目指そうと考えている方、英語の学習にも力を入れてみては
いかがでしょうか？

私は、大学在学中、英単語帳などでの勉強が本当に嫌で、自分に合っていなかったので
自分が興味のある分野のニュース、ブログ記事を英語で読むようにしていました。
参考までに。。

## 最後に

以上が私が新卒１年目を終えて思うこと５選です。
最後までお読みいただき、ありがとうございます。

どれもこれも、ありきたりな考えばかりかもしれません。
しかし、これからエンジニアになろうかと考えている方の目に触れて、
何か刺激を与えられたなら、嬉しいです。

一緒にお仕事できる日を楽しみにしています。