🏃‍♂️

こんな駆け出しエンジニアと一緒に仕事がしたい

2021/01/11に公開

何の因果かわからないが、一時期スタートアップ企業でエンジニアの採用に関わっていた事があり、その中でスクール出身のいわゆる駆け出しエンジニアと言われるような人を評価するという機会が何度かあったので、その際に思ったことを記録しておく。

採用者は何を見ているか

多くのスクールではポートフォリオを作成することを推奨しており、企業に応募する際にはそれを成果物として提出することが多い。
採用者(企業側)はポートフォリオの何を見ているのだろうか。

何を作ったか

言語やフレームワークは何でも良い。
大事なのは最終的に何を作れたかである。
TwitterライクなSNSでもいいし、Instagram風でも構わない。
何かしら1個のサービスが成果物があるのは最低条件である。

どう作ったか

Gitのログを見て「チュートリアル Chapter. xx の実装」とだけ書かれたコミットが連続してそれで終わってしまっていると、実装力があるかどうかの判断が難しい。
スクールのチュートリアルどおりに実装を行うのは、もちろんエンジニアリングのスタートとしては悪くないのだが、なぞっているだけだと誰でも同じ成果物になってしまうので、評価ができないのである。

なぞったコードの見抜き方

特徴的な命名があればグーグルで検索すると既存のチュートリアルが見つかることが多い。
またスクール独自のチュートリアルも、大抵の場合スクール生が就活のためにGitHubに似たようなコードを公開状態で置いているので、オリジナルでないコードはわかりやすい。
例えそれらが見つからなくても、ある程度経験を積んだエンジニアであれば、初学者の書けるコードかどうかは割と簡単に見抜ける。

何を加えたか

スタートアップでは、書き込まれた仕様書が渡されて「はい、この通りに実装してね」となることはないので、大抵は軽い要件(与件)だけ渡されて、じゃあ実装をどうしようかなというところから始まる。
もちろん優しい先輩たちがフォローしてくれることもあるが、基本的には「機能追加の要望をいかに実装に落とし込んでいくか」ということを考えることから始めることになる。
その際に、ただチュートリアルの範疇の実装で収まることがなく、その先に何かしらの独自の新機能を追加した経験があると非常に仕事を任せやすくなる。
ぜひともチュートリアルに、自分で勝手に考えた機能をたくさん追加してほしい。
チュートリアルで終わってしまったらすべてが他人のコードでしかないが、1つでも機能を加えられたらそれはあなたのコードになる。
そうして機能を加える際には、ぜひとも実装に迷ったことや間違ったこともも含めてコミットログに残してほしい。
それは問題が解決できた証明でもあるから。

何を調べたか

エンジニアとして仕事をするうちの多くの時間は調べ物で費やされる。
コードを書けるのも重要だが、正しく情報を検索して収集して判断してコードをより良くするサイクルはそれと同じくらい大事である。
正しくグーグルを使い、正しく良書を読んで知識を得た経験があるのならぜひ教えてほしい。

まとめ

最低限、

  • 作れること
  • 加えられること
  • 調べられること

の3つができる駆け出しエンジニアと一緒に仕事がしたい。
いや、私はすでにその企業にいないので「したかった」という表現が適切だろうか。

Discussion