知識は狭く深く?広く浅く?

現在の仕事では色々なプロジェクトをあっちへこっちへせわしなく動いています。一人で設計から開発を任されることもあったり、スポットで一画面作ってまた次のプロジェクトへという感じです。期間も2週間~2カ月で転々としています。

今週はVBでツールを作ったと思ったら次の週にはC#で改修をして、また次の週は1カ月くらいPHPで腰を据えて(?)開発…。そういう感じで1年ほど働いているのでとりあえず浅くても広い知識をつけて「この言語できる?」と言われても大丈夫と言えるようにしようと思っていました。でも最近その考えが変わりました。

きっかけはとある大きなプロジェクト


ちょっと炎上しているということで7~8人くらいのプロジェクトにアサインされることになりました。言語はC#。1カ月くらいつかったことがある言語です。

Gitで管理されており、担当機能を実装したらマージリクエストをして、レビュアーがOKを出せばマージされる流れですが、レビュアーにけちょんけちょんにされました。

「2重ループしているところはLinqでもっと簡潔に」「画面側なのにこの機能がModel側に書いてあるのはおかしい」「マウスオーバーすればメソッドのコメントが出るからコメントは書くな。今後改修時にコメントなんて直さないから」などなど。今までは「まぁ時間がないしこれでいっか」という感じで通っていたレビューも徹底して突き返されます。自分としてはとても勉強になるのですが、いかんせんC#の知識がほぼない中で指摘されるので修正にも時間がかかってしまいます。そこで思いました。「自分は全然勉強不足じゃん」と…。

C#の知識もそうだけど…


動くものを作れと言われたら普通に作れています。ただそこからさらに進み、力業ではないスマートな書き方が出来ていません。C#独自の書き方をすることで解決されることもあるため、そこは勉強するしかないのですがそもそもオブジェクト指向の知識が不足しているように感じています。

基礎の部分がまだまだ未熟なため事態をさらに悪化させているように感じております。さらに今実装しようとしている機能がなかなかややこしいので思うように進まず焦っています。

そして久しぶりに気持ちが沈む


そういうわけでここ数日は気持ちが沈んでいます。まぁ長くても来月いっぱいのプロジェクトなのでそれまでやりきるしかないのですが、GW辺りは途中まで読んでいる「リファクタリング」本とかオブジェクト指向系の勉強をしないといけないと感じています(今はC#の本を読みつつ来月末に受験予定のLPIC102の勉強中)。

来月は新型のiMacを購入予定なのでそれをモチベーションに頑張ろうと思います。

 

スポンサーリンク

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です