先日、エンジニアとしてキツイなと思う瞬間を記事にいたしました。
その記事にも少し書きましたが、やはり時間がない中、至急、実装しないといけないときは、エンジニアとしてのスキルを試される気がします。
先週は、クライアントからユーザーIDのリストを渡されて、
そのIDに紐付くユーザー情報をDBから引っ張ってきて、新たにCSVファイルを更新するというようなタスクを急に任されました。
実装内容はあまり難しいことではないと思うのですが、
とにかく時間がなく、1時間以内にはクライアントに提出しないといけない状況でした。
このようなときに、
「あれ、ファイルってどのようにコードを書いて操作すればいいんだっけ?」
と、いちいちググっていたら、おそらく間に合わないかなと思います。
ほんと、急かされる仕事ほど、テンパるものはありません。
ソーシャルゲームの案件にいたときは、年末時は、クリスマスやら、大晦日のイベントなどで鬼のようにタスクが飛んできます。
全く時間に余裕がないので、短時間に大量のタスクをこなさないといけないのですが、これもまた、ものすごく大変でした。
その当時はスキルも低く、完全にキャパオーバーで、毎日胃をキリキリしながら働いてました。
お正月も家族はお祝いムードでしたが、自分はアプリがちゃんと動いているのか不安で何度も何度もゲーム画面を開いたり、仕事のチャットグループを確認していたことを思い出します。
去年の年末も、リリースラッシュだったのですが、
一番ひどかったのが、リリース前日にクライアント先のコードチェックが入り、仕様変更ともいえるレベルの内容を大量に指摘され、
明日の朝までにすべての修正と、テストを完了してこいと命令されたときです。
当然、徹夜コースでしたが、ある程度、基礎力がないと対応できないかなと思います。
頭の中で理解しているだけでは、土壇場のときに対応できないことも多いと思うので、やはりある程度の基礎力はプログラミングにも必要と考えています。
今回のCSVのタスクに関しても、スキルがある人は、そもそもプログラムを書かずとも、Linuxコマンドだけで完結してしまうそうです。
自分にはそれを思いつくことができず、まだまだLinuxコマンドが弱いなと思いました。
プログラミングは数ヶ月程度ではできるようになるものではなく、経験を重ねることで、少しずつできるようになるものなので、
周りと比較せず、自分のできることを頑張っていきましょ