isyumi_netブログ

isyumi_netがプログラミングのこととかを書くブログ

プログラミング中級者の伸び悩み

流石にもう僕はプログラミング初心者ではないと思う。多分中級者くらいだ。
これまで初心者向けの教材や切磋琢磨の場にたくさんお世話になってきた。ありがとう。

さて、それ以降の人って何をしたら伸びるんだろうね。

Twitterやブログを見ていると、自分より優秀そうな人はたくさん見つかる。
でも、自分とその人の間にどういう差があってどうすれば近づけるのか分からない。
僕はそんなことを5年位悩んでる。

まず、初心者を脱するとどうなるか。

初心者の頃は、とりあえずプログラミングが好きなら勝手に伸びる。
作りたいものを作りたいように作ってるだけでどんどん成長していく。
会社に入らないと身につかないスキルがあるという意見もある。コードを整理整頓する技術などだ。しかし、僕は幸いなことに生まれつき脳のワーキングメモリが極めて乏しかったため、ちょっとでもコードが散らかると頭が爆発するので、その手の技能も趣味開発で身につけることができた。
この段階であれば、自分の足りない知識が何かを自分で検知できる。開発をしていて困ることはたくさんあるからだ。
本屋さんに行けば自分に必要な本が必ず10冊くらい見つかる。
ところが、そのうちただコードを書いているだけでは全然成長しなくなってくる。
だいたいのものは一通り作れるようになってるからだ。
既に持っている知識と適宜のググりで困ることはほとんど無い。
もちろん本当は知らないことがいっぱいあるんだと思う。でも、苦手なことを無意識に回避する方法を覚えてしまっている。だから、自力で自分の苦手分野に気づくことができなくなってくる。

また、初心者のうちは新しい言語を覚えたりフレームワークを使ってみたりする度に成長していく。新しい世界観に出会えるからだ。
でも、徐々に新しい技術を身につける時の負荷が落ちてくる。

初心者を脱した僕が何をしたのか。
まず、本屋さんでいわゆる名著の類を読み始めた。プログラミング原論とか型システム入門とか。
頑張って読んだけど難しすぎて全然アレだった。
多分僕はまだこの次元には達してないようだ。

次に、資格を取り始めた。TOEICと数学検定とAtCoderIPA
ここ数年間は毎月100時間くらい勉強している。
AtCoderと数検は一応それなりに難関と言えるところまで到達した。

他にも、mozaic bootcampに参加させてもらった。
これは大変良かった。
ただ、365日誰かにこうやって教えてもらうわけにも行かなそうである。

何より、会社での仕事を一生懸命やってきた。

そんな僕は、なぜ伸び悩んでいると思うのか。
実は先日いわゆる転職活動というものをした。
その結果、あんまり自分の評価が高くないということを思い知った。
初心者を卒業してから何年間もずっと精進して生きてきた。だから当然それなりの評価があるものだろうと思っていた。ショックだった。

確かに、コーディングテストや知識を問う系のテストは上手く行った。
『○○なアプリを作りたいからどんなインフラにするか考えて』系も大丈夫だった。
でも、その次のステップでほぼ落ちた。

伸び悩みながらも頑張ってやってきたつもりだったが、実は全然伸びていなかったんだろうなと。
自分が技術力だと思っていたものとみんなが技術力だと思っているものは全然違うんだろうなと。
しかも、今僕は何が理由で落ちたのかよくわからないでいる。
これは困った。

今後僕はどうするか。
とにかく自分よりもっとレベルの高い人に色々教えてもらえるようにならないといけない。

二つ目標を決めた。自分よりレベルの高い人がたくさんいる会社で働くこと。もう一つはもっとコミュニティに関わる。

自分よりレベルの高い人がたくさんいる会社で働くというは、かなり難しい目標だ。だって、普通に考えて受からないからね。
これは煽りじゃないんだけど、その会社で一番技術力低い技術者って、どうやって会社に入ったんだろうね。
それってある意味一番難易度が高いハードルを突破した人ってことじゃん。
だれかレベルが高い会社の受かり方教えてください。

もう一つはコミュニティに関わるということ。
そうすれば色んな人が自分にいろんなことを教えてくれるようになると思う。
具体的にはこれをやろうと思っている。QiitaのQ&Aやteratailで質問に答える。みんなの技術ブログにちょっとコメントする(自分も試してみましたとか)。趣味でアプリを作ってる人がいたらちょっと使ってコメントをいう。
なぜそう思ったかというと、昨日中田敦彦Youtube大学でオンラインサロンについて見たからだ。
オンラインサロンには興味がないが、オンラインサロンの活用術でこんなことを言っていた。『一番興味を持たれるのは一番みんなに興味を持ってる人。一番発信力があるのは一番人の話を聞いている人。一番手助けされるのは一番手助けしてる人』
これは確かにと思った。だから、僕はこのIT界隈にもっと貢献しようと思う。