文系出身でIT企業でシステム開発の会社に入社した結果
私の場合、生物系の大学を卒業して販売員を経てIT企業に入社し、SE見習いとしてプログラミングを勉強しながら働いていた経験があるのでちょっとその話を語ってみる。
ちなみに生物系の大学ではあるが入試は英語は必須、あとは国語と数学の選択制、更に地理と物理と化学と生物のどれかを選択ということだったので国語と地理と英語で入れる不思議なシステムだったため理系っぽいけど文系の人間です。
IT企業は常に人手不足なので間口は広い
私の場合、販売員を辞めた後、Webデザイナーを学ぶために職業訓練校に行き、その後派遣で1年2ヶ月ほど社内Webデザイナーをやってシステム開発会社に入った。
後から考えるとぶっちゃけそのレベルの人間は実務経験が全く足りておらず即戦力としてはまず使えないレベル。そのため中途採用ではあるがほとんど新卒採用(第二新卒)のような形での入社となった。
面接は本当に軽く今までやってきたことを聞かれたり社風がどうとかクライアントが厳しくても耐えられるかみたいな話しかし無かったような気がする。とてもゆるい。
2度目の面接では社長が登場して最終意思確認の面談みたいな形だった。面接で文系か理系かについて聞かれたが生物系で文系と理系の中間ぐらいの分野ですって答えたような気がする。
まぁぶっちゃけあの面接なら相当変なやつじゃなければ誰でも通りそうな感じがする。他に来て落とされた人がどんなだったかの話をあとから聞いたがかなり不潔な人とかはさすがに落とされたとか。
他にはスキルのところに「デフラグ」と書かれていた人も意味がわからないので落とされたらしい。変わったところで言うと自己アピールで夏のコミケに対する情熱を語った人も落とされたらしい。
相当変な人じゃなければ多分誰でも入れる。IT業界はやる気次第だろう。
OJTによるプログラミングの勉強
入社した後はまず単体テストというプログラマーが作ったシステムの一部の機能をテスト仕様書に従ってひたすらテストしていく仕事を任される。
とにかく面倒な作業で入力フォームに変な記号とか入れたらちゃんとエラーが返るかどうかみたいなのを何十個も試していく。
社内システムなのにこんなテスト項目いるのかよってぐらい細かいことをする。ラジオボタンやチェックボックスに無理やり変な記号を入れたりする作業がとにかく面倒くさい。
そんな仕事をしながら手が空いた時にプログラミングの課題を出されてそれをやっていく。
例えばテキストボックスに任意の数字を入れて計算結果を次の画面で表示するとかhiddenで値を持たせて前の画面に戻った時にちゃんと項目を引き継げるかとかそういう奴。
課題は段々難しくなっていってPHPとMySQLを使って会議室予約システムを作るとかコールドフュージョンを使って同じシステムを作りなおすとか実務でも使えそうなレベルに達する。
最終的にこういうものが作れるようにはなったがはっきり言って洒落にならんぐらい脳みそが爆発しそうにきつかった。ハンターハンターと言うマンガでゴンと言うキャラクターが複雑なことを言われて頭が爆発するという表現があるのだがリアルにそんな感じを経験した。。。
理系の人間なら恐らく簡単に理解できるIF文を理解するのにやたら時間がかかる。
そしてOJTで教えてくれる先輩社員が優秀であれば優秀であるほどこのバカの壁というか「理解できないことが理解できない」という現象にぶち当たる。
配列とか変数とかの概念もループの処理の仕方とかも理解にものすごく時間がかかる。なぜなら文系の脳みそだから。
理系で情報系の大学に行き普通に卒業できたような人間には文系の人間が素因数分解でつまずくということが理解できないのだろう。
結局優秀な先輩社員は私の教育係から外されて私は会社の中でも最悪レベルの問題社員の下で働くことになった。
ただ、それが結果的にすごく良い結果を生み出した。
どういうことかというとその問題社員も元々は文系の人間で、某ファミレスの店長だった人間だったため、私がどのタイミングでつまづいているのかが非常に伝わり的確なアドバイスを受ける事ができた。
そしてものすごいスパルタ教育だったため、何もかも自分で理解するまで教えてもらえなかったことで、ものすごい勢いで成長できた。
優しい先輩の場合、理解できてないところを教えてくれるけど理解できてないのに次のところへ進んでいたからね…。
その問題社員の上司は遅刻は多いわ、仕事抱えてどこ行ったのかわからなくなるからクライアントに迷惑はかけるわ、社長から直接叱られたりもしょっちゅうなのに私の教育係としては最高の人材だったという不思議。人間どこで力を発揮できるかはやってみないとわからないもんなんだろうな・・・。
というわけでプログラミングのOJTはスパルタ教育が非常に効果を発揮したという話でした。
プログラミングはある程度は誰にでも身につけられるが一定レベル以上になるとセンスが必要
2年目ぐらいにはオラクルで数百万件のレコードを扱うようなイントラシステムの開発を任されるレベルになった私だが、結局は文系の脳みそなので複雑なシステムを導入するところで思い切りつまずく。
Ajaxを多用したフレームワークを導入して作業効率を上げようって話になったが、プログラムのソースを見てもさっぱり意味がわからない。
リファレンスも全部英語で日本で導入事例とか殆ど無いので情報が少なすぎてカスタマイズ全く出来ない始末・・・。結局スーパープログラマーの派遣さんに丸投げしてしまったがその人はあっという間に導入してしまった。
その経験から恐らく私のような元々数学が苦手で赤点ばっかり取って補習を受けまくっていたような人間がプログラミングやろうと思っても限界というところがすぐに来るってことに気づけた。
スパルタでめちゃくちゃ頑張ればある程度の業務ができるレベルまでは到達することは可能だが限界はとても早く訪れる。それが文系の脳みそ。
どんな人がプログラマーに向いているのか?
細かい作業好きとかパズルゲーム好き。
とにかくコツコツ小さなことを積み重ねていって完成させるような几帳面な人はプログラマー向き。
プログラミングはとにかくデバッグでコツコツ作っていくものなので、ひらめきも大事だけどそれよりもっと地道な作業が好きってところが大事になる。100万行のプログラムも1文字から始まっている。
プログラマーに向いていない人
感性で生きている人。なんとなく黄色と赤を混ぜてみてオレンジが出来たとかそん感じで生きている人は向いていない。プログラマはオレンジという完成図から必要な黄色と赤を用意する仕事。
わかりやすく簡単な表現にしてみたが非常に複雑な設計図に則ってコツコツ作り上げていき、もし変なところでエラーが起きたらまたどこでエラーが起こっているのか一つづつコードをチェックしていくような地道な作業が必要になる。
感性から創りだされたアートには正解は無いがプログラミングには必ず仕様という最終的な正解が存在している。その点でアーティストタイプの人間にはプログラミングは全く向いていないと言える。
文系でもIT関係の会社に入れるのか?のまとめ
入れるか?と言えば入れる会社は探せばある。給料が安くてもいいのならいくらでもあると言っていいだろう。
ただし、半年続けられるかはかなり大きめの目で出来たふるいにかけられると思っておいたほうが良い。
とにかくプログラマーは最初のうちはしんどい。文系ならなおさら人の何倍も努力しないと理解することが出来ない事が多い。プログラムが動かなすぎて頭が痛くなって熱が出ることすらある。
それでも頑張ればある程度は使えるレベルに達することは可能だろう。
どんなことでも情熱と「絶対に負けるかよ!」という覚悟があれば乗り越えられると私はプログラミングを学ぶことで知ることが出来たと思っている。
本当に人生で一番泥水を飲むような思いをしたのがこの時期だろう。
コメントを残す