未経験エンジニアが1年で心がけた5つのこと

こんにちは、2018年度新卒入社の佐土原です。

2018年4月1日に入社した僕ですが、早いものであと2週間ほどで入社して丸1年となります。長いようであっという間の1年間でした!

ちょうど節目も迎えますので、入社当初はWebでの開発未経験だった僕がWebエンジニアとして働き始めて心がけるようになったことについてまとめてみようと思います。

1. 短期目標と長期目標を区別する

そして短期目標は具体的な内容を設定する、という社会人としてごくごく初歩的なお話です。

思えば入社当初は「成長」という言葉に気を取られすぎていたように思います。「もっと成長しないと…!」「早く一人前にならなきゃ…!」と気持ちばかりが急き、肝心の「成長」や「一人前」という言葉がどういう状態を指すのかを考えられていませんでした。

結果として、
とりあえず闇雲に頑張る → 思ったほどの成果が得られない → 成長実感が湧かない → さらに闇雲に頑張る
という報われない負の連鎖にとらわれていくことになります。事実、振り返ってみると僕もこの連鎖にハマっていた時期がありました。

ここで学んだのは、短期的な目標では「成長」や「一人前」などといった抽象的な言葉を使うとワケが分からなくなる(そしてしんどい)ということでした。

そこで意識するようになったのが以下の3点です。

  • 短期目標と長期目標は区別して考える
  • 長期目標を細分化、具体化したものを短期目標にする
  • 短期目標は定量的で具体的な内容にする

とても基本的なことではありますが、本当に成長するためにはとても重要なことだと思います。

2. サービスや技術の全体像から把握する

入社当初はWeb開発未経験という右も左も分からない状態だったので、「とにかくプログラムの勉強をすればオールOKでしょ!」くらいの軽いノリでプログラムの勉強にばかり意識が向いていました。しかし、実際にWebエンジニアにとって一番大切なことは「サービスを作る」ことです。

たしかにWebエンジニアにプログラム能力は必須ですがプログラムはあくまでツールであり、一番大切な「サービスを作る」ことに当時の僕はあまり意識が向いていませんでした。

この時の僕は、いわば見習い大工がひたすらトンカチの振り方だけを練習している状態です。大工は建物を立てるのがお仕事なのに、トンカチを使う目的や建物の全体像を理解していないのでせっかくのトンカチも大して役に立っていなかったわけです。

そのことに気づいて以降は、サービスや使われている技術の全体像を捉えることにできるだけ意識を割くよう気をつけました。すると自然とRailsのMVCモデルやサービスのアーキテクチャへの理解が深まり、結果的に手を加えたいコードの影響範囲などを想像しながら開発業務を進めることができるようになりました。

3. 困ったらググる

今ではすっかり普通になりましたが、入社当初は意識しないとできなかったことの一つに「困ったらググる」があります。開発業務に着手し始めた当初は僕のような素人エンジニアだと業務中はわからないことだらけで常に悩まされていました。

しかしそれらの悩みもググれば9割方解決します。

やばい、こういう場合の書き方がわからない! → ググる → 解決
やばい、よくわからないエラーが出た!    → ググる → 解決
やばい、煩雑だ!もっと効率よく書きたい!  → ググる → 解決

これらのパターンのいかに多いことか。

エンジニアにとっては常識のようなことですが、ググリ癖がついて以降は1人で解決できることも増え、何より先輩方の手を煩わせることが少なくなりました。

4. 本当に行き詰まったら即刻質問する

  • 10分ほどググってみても答えが見つからない
  • 自社の環境でしか起こりえない問題が発生した
  • サービスそのものに対する疑問が湧いた

などの時はできるだけ早く先輩方に質問するようにしています。

これも入社当初は勝手に(迷惑じゃないかな…)などと考えてしまい苦手だったのですが、「説明に時間を取られることよりも分からないことを放置されることの方がチームにとっての問題が大きい」と言っていただけたことで気にせず質問できるようになりました。

これも基本的なことですが、できるのとできないのとでは大きな差があるように感じます。

5. 広く浅くアンテナを張っておく

これは「困ったらググる」の話にも繋がることなのですが、「困ったらググる」というメソッドには知らない言葉や概念はググれないという穴があります。問題を解決できる有効な手段がネット上に存在していたとしても、その存在を知らないことには見つけだすことができないというジレンマです。

それを回避するための方法の一つとして、常々広く浅くアンテナを張っておくということを心がけています。具体的な方法は以下のような感じです。

  • エンジニア界隈で有名な人のTwitterアカウントをフォローする
  • RSSリーダを利用する
  • 外部の勉強会やセミナーに参加する

幸い東京では活発にセミナーが開かれており、かつ社内にも外部セミナー情報を共有してくれる方も多くいるのでこの1年間で結構な数の勉強会やセミナーにも参加することができました。

内容を詳しく知らなくても頭の片隅に入っているだけで役に立つ場面は多くあるので、情報収拾の力は侮れないです。

まとめ

改めて整理してみるとどれもエンジニア(社会人)としては基本的な話ばかりですが、一人の学生から一人の社会人エンジニアへと成長していくためにはどれも重要な意識改革だったように思います。

あと2週間で社会人生活2年目がスタートしますが、今後も初心を忘れずに業務に取り組んでいこうと思います!