夏休みインターンに行きました

経緯

特に能動的にインターンシップに行こうなんて思っていませんでした。が、大学の先生と食事をする機会があり、友人が先生に「バイトを紹介してくださいよ~」って話をしていて隣にいた僕にも「きみもどうだい」といって誘っていただきました。

面接

自治体向けにwebアプリケーションを提供している企業を紹介していただき、面接をしていただけるようなので、アポをとって面接へ行きました。面接というよりも会社説明と雑談?のような感じでした。学校が毎日あるのと、距離が遠い旨をお伝えしたところ、夏休み1ヶ月間のインターンシップということになりました。 面接の時期など全く明記していませんでしたが、5月くらいに面接してもらいました。「夏休みの時期に連絡します。」ということで終了しました。

最悪のスタート

最悪のスタートになる原因は2つあります。1つは夏休みの直前に連絡し相手方に迷惑をかけたかもしれないことです。もう1つは 「バイトを紹介してくださいよ~」と言っていた友人がドタキャンしたことです。自分が悪いけど、のっけからかなり印象が悪いですよね。

インターン1~4日

初めに「なにしたい?」と聞かれました。「逆に何が出来ますか?」と聞いてみたが、「何でもいいよ」と言わて結構困りました。特にないなら、地図を使用したウェブアプリケーションのルート検索してほしいと言われ、それをすることにしました。 jsとgolangの経験を聞かれました。goは皆無で、jsはyuta-nakamura.comのメインページで少し使ってるくらいです。goのチュートリアルのA Tour of Goをやってと言われ2日位かけて6割くらい勧めましたが、問題が難しくなってきたのと、飽きてきたので、「 全部やりますか 」って聞いたら、環境構築していこうと言われました。ここまででだいたい4日位かかりました。

1~3週目

最初はずっとコードを読んでいました。
goでは地図会社のAPIを クライアント側の要求どおりに叩くAPIを書きました。jsでは自社APIを叩き、返ってきたjsonから必要な情報を取り出し画面に表示させる処理を書きました。jsのフレームワークはsenchaでした。ライブラリはopenlayersとか使いました。結構苦労しました。MVCやMVVMという概念を全く知らない僕にとってすでに動いている部分のコードは何がなんだかわかりませんでした。特に、senchaはほんとにしんどかったです。聞いたこともないフレームワークだし、日本語の情報がほぼないです。
地図会社のAPIのマニュアルを頂いたけど、どうも叩けないコマンドがいくつかあることに気づき相談してみたら、APIのバージョンが上がっていたようです。新しいマニュアルをもらい読み込んでみると結構仕様が変わってました。そんなことってあるんですね…

4周目

完全理解とまではいかないものの、だいぶ書けるようになってきている感覚はありました。ですが、課題であるルート検索が完成がギリギリっぽくて焦ってました。大まかな機能としては完全に動いてはいますが、クライアント側の細かな機能の実装が終わっていませんでした。ルート検索窓の出発地点と到着地点を入れ替えるやつとかそういうの。 また、エンジニアの方にコードをレビューしてもらったりしました。関数とか変数の命名規則を盛大に破っていたのでそこを指摘されました。

最終日

最終日の就業30分前に完成し、みてもらったところ速攻でバグを発見してもらいました。就業後30分くらい粘っていたんですが、直しきれずタイムオーバーでした。それが非常に心残りです。

まとめ

ひとつの機能を作るだけで1ヶ月もかかってしまいましたが、社員の方とどういうふうにすれば使いやすいか、どういう記述がより良いかなど一緒に考えて頂いた時間は非常に楽しかったです。考えたものを開発する大変さがわかりました。そして、動いたとき、できたとき、ものすごく嬉しかったです。
webアプリケーションを自社開発してる会社がすごくいいなと思いました。就職はその方向で考えていきたいです。 触った技術
git、docker、go、js、sencha、RESTAPI

コメントを残す