日本語話せるなら、英語余裕でしょう。
【結論】
「日本語話せるなら、英語余裕でしょう。」と考える日本人はあまりいない。
しかし、「C書けるなら、Java余裕でしょう。」と考えるITエンジニアは多い。
私もそのように考えていた時期があったが、今なら「そんなことは無い。」と断言できる。
【目次】
はじめに
現在、転職先での研修でSpringを使ったWebアプリ開発の仕方を学んでいます。
私のプログラミング経験は、C言語7年、Ruby on Rails3ヶ月、Java1ヶ月です。
組み込み系からWeb系への転職です。
Webアプリ開発に関しては未経験ですが、Ruby on Railsはプログラミングスクールに3ヶ月通ってみっちり学んだので多少の自信はありました。
多少の自信を持って転職した会社での研修も2週間が経過しました。
Springが理解できずに苦しむ自分。
未経験からスタートアップ系の企業に転職し、実践を積みまくっている駆け出しエンジニア。
両者のギャップに、とてつもない焦りを感じています。
焦りを感じる理由
「未経験でも活躍できる人はいる」
ITエンジニアは頭脳労働なのだから、未経験でも地頭がいい人はすぐに活躍できることは分かっていたのでスルーします。
私が焦る一番の理由は以下が原因です。
「C言語7年もやってたんだからら、JavaやSpringくらいすぐに理解できるでしょ。」
By:大多数の声
本質的なところはどの言語も同じなので、言いたいことは理解できます。
私も、Cができるんだから他の言語に変えてもそこまで苦労はしないだろう。
と思っていた時期もありました。
しかし、現実はそうではありませんでした。
「すんなり理解できるはずなのに、なかなか理解できない自分。」
そのギャップに焦りを感じました。
考え方を変えてみた
コンピューターが使うプログラミング言語を、人間が使う言語に置き換えてみました。
日本語、英語、中国語、etc全ての言語は、人間がコミュニケーションを取るための言語という本質は変わりません。
日本語喋れるんだから、英語も中国語もすんなり理解できるでしょ。
といって、賛同できる人は少ないと思います。
中国語は厳しくても、義務教育で学んでいる英語に関しては全ての日本人が使えて当然のはずなのに、英語に対して苦手意識を持っている日本人は多いです。
人とコミュニケーションを取るために使う言語ですらこの惨状です。
にも関わらず、コンピューター制御に特化したプログラミング言語に同じことを期待するのは馬鹿げています。
対策
新しいプログラミング言語をすんなり理解できないことを嘆くこと自体が自惚れであることはわかりました。
すんなり理解できない言語を理解するためにどうすべきか?
考えた結果、「別の言語で培ったプライド捨てて、一歩一歩着実に新しい言語の知識を身につけていく」という結論に達しました。
第3者から見れば大したことないと思えるスキルレベルの開発経験を一歩一歩着実に積んで、アウトプットしていくしかないのかなと。
最後に
Springの名前の由来は、開発環境が混沌として冬の時代に陥っているJavaによるアプリ開発の春を迎えるためのフレームワークになる。という願いが込められているそうです。
しかし、Webアプリ開発エンジニアとしての道を歩み始めた私には、Springが冬将軍に思えてなりません。