強制力から身につける技術 | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

それが良いかどうかという議論は置いといて、きっかけとして技術っていうのはそれを身につけざるを得ないという状況に追い込まれた方が習得しやすかったりします。

次の仕事で使うからとか。


一方で新しい技術を使うというのは当然リスクもあったりするわけですから、その仕事でそれを使うかどうか判断が難しい場合もあります。

そして、社内のシステム開発なんかをする情報システム部門にとっては、そういったリスクを回避する意味も含め、新しい技術というものを取り入れようとするメリットが少ないケースもしばしばあります。



強制的に身に着ける技術


エンジニアをやっている場合、仕事からその技術を学んだということは最も多いケースでしょう。

自己学習するということも考えられますが、そこまでのモチベーションがあがらなかったり、それを職場で活かせなかったりして、思いとどまることもあると思います。


こういう場合、「次の案件はJavaだから勉強しといて」とか「今後のサービスの拡大を狙ってRubyの開発ノウハウを溜めておきたいから使おう」という方針を打ち出して、強制的にその技術を使わざるを得ない状況に追い込まれたら、身に着けるという観点では楽なものです。

もちろん初めてその技術に触れるというところでは大変な場合が多いでしょうが、結果としてそのプロジェクトが終了した頃には一通りのことは理解できているという状況を生み出すこともできます。


これは組織としての方針の流れに身を任せれば、それを習得できるということになります。

そして、組織としてその技術を使うことへの協力体制を作ってくれたりもします

自分でこの技術は凄いと思った場合、その流れを作り出すためには、そのメリットをわからせて納得させる必要があり、多くはそのメリットを感じ取れない人がいるわけで、しかもその技術を理解するためには独学となるケースがあります。

そこまでのモチベーションと豊富な知識がある人であれば成し遂げられるかもしれませんが、単に「この技術使ってみたいな」ぐらいの漠然な考えを持っているだけではそこまで到達することは難しかったりします。


そんな中途半端な気持ちで学んでも仕方ないという考えももちろんあると思いが、一つの技術を身につけるきっかけとしては、そうせざるを得ない環境に追い込まれた場合と、自ら切り開いていく場合とでは、前者の方が圧倒的に身に着けやすいわけです。

誰しもそこまで強い意志を持ってやれるわけではないので、追い込む環境に持っていくことがその契機にしやすいのだろうと感じます。



レガシー化された環境で身に着ける技術


一方でなかなか、そういった新しい技術に出会わない職場というものもあります。

「その技術を使って予期せぬ問題が出たら誰がどうやって対応するんだ」とか「その技術って安定してるの?」とか「他社の事例が無い」とかネガティブな言葉を並べて、いつまでも後ろ向きな判断をしないケースもよく見かけます。


社内のシステムの場合は、安定第一志向のようなところがあり、わざわざ新しい技術を持ち込まなくても十分に要件を満たすシステムを構築することができると考える人も多くいます

または、新しい技術を取り込む場合は、実績のあるベンダーに任せ充実した保守体制の元で導入に踏み切るとか。


何れにせよ、そういった新しい技術というものを社内メンバーが触れるという機会を奪っているところもあるのかなと。

社内にある例えレガシーでも技術は技術で、ある一定のレベルまでその環境でエンジニアを育て上げることはできるのだと思います。

しかし、それ以上その中での進化が無い以上、それを越えるエンジニアが育つ機会もまた無かったりします。


先ほど言ったような独学で社内に持ち込もうとしても、そのメリットが理解されなかったり、協力体制を仰ぐことができなかったりで、最終的なゴールに結びつかず、またそのエンジニアも中途半端な知識を持つにとどまるようなこともあるのではないでしょうか。


社内で最新の技術動向を察知し、常にそれを検証し実践してみるラボのようなチームがあれば、そこから新しい技術を学ぶということもできるでしょう。

しかし、そうでもない環境でエンジニア個人に「技術は自分で学び自分で身に着けていくものだ」という方針を考えている組織では、なかなか一線を越えるエンジニアも育っていかないのではなかろうかなと。


繰り返しになりますが、それを身に着けざるを得ない環境に持っていってしまうことも教育の一環としてはありなんじゃなかろうかと思ったりします。