2018年3月に退職し、2018年4月に転職しました。 新しい会社に入って半年が経ち、少し落ち着いてきたので、記事を書こうと思います。
転職活動中のブログ yuji38kwmt.hatenadiary.jp
退職した会社(以下、会社X)
- 独立系ITベンダー
- 従業員約400人
- 創業20~30年
会社Xでのお仕事
- 社内Webシステムの開発
転職を志した経緯
ITに詳しく、私が尊敬している先輩Aがいます。先輩Fは、よく「早くウチの会社から出たほうがよい」言っていました。 しかし、その頃私は、まだ勉強会など社外の人と交流したことがなく、「転職した方がよい」理由が、よく分かりませんでした。
勉強会に参加して、会社に疑問を感じるようになった
2016年3月、勉強会に始めて参加し、そこから毎月1~2回、勉強会に参加するようになりました。 最初の頃は、できるだけ自分の仕事と関係ありそうな勉強会に参加していました。勉強会への参加のハードルが下がってくると、仕事と関係ないデザインや関数型言語など、いろんな勉強会に参加するようになりました。
勉強会では、参加者の技術力の高さに驚きました。プログラミング経験や知識、彼らは私の知らない言葉をたくさん話していました。 技術力の高い人たちには、私より社会人歴、IT歴が短い若者がたくさんいます。そういった者たちを見ると、「今まで私は何をやってきのだろう」と思うようになりました。 そして技術力というのは、個人の才能や努力だけでなく、環境も大きく影響するのでは?と思うようになり、当時の会社Xに疑問を持つようになりました。
今の仕事に飽きてきた
2017年4月で、社内Webシステムの開発に関わって3年が経っていました。 3年前から使っている技術は、大きく変わりません。Java,PostgreSQL, JavaScript, HTML, CSS, Terasoluna....。バージョンアップなど小さな部分は変わっていますが、フレームワークや言語などは変わっていません。そもそも変わることを良しとしない文化です。 3年も経つと飽きてきて、「今の技術を使ったWebシステム開発はもういいかな」と思うようになりました。
会社への不満が強くなってきた
炎上案件に対する対応方法
2017年3月、大きく炎上しているプロジェクトに、ヘルプとして少し入りました。
そのプロジェクトでの火消し案が、とりあえず大量に人を投入し「設計書を作り直す」という対策でした。「ちゃんと設計していないから炎上したんだ。だから設計書を書き直す」ということらしいのですが、炎上はテストフェーズで起こっているので、その時点でソースコードはあります。それなのに、設計書を作り直すという、よく分からない対策でした。
また、炎上プロジェクトでは何日も帰っていない社員がいました。「私もいつかあのようなポジションになるのか」と思うと、なんだか会社Xにいることが、恐ろしくなってきました。
そして、「社員を大切にしない、よく分からない火消し案を採用する会社Xから出ていきたい」と、強く思うようになりました。
プログラミングに対する考え方
上司から「プログラミングが誰なんてできる」という発言が出ます。その上司はたぶんプログラミングできません(プログラミングの話題が出てこないため)。
テストに対する考え方
- 無意味なExcelスクショ。
- 誰もテストコードを書かない、書こうとしない、そもそも知らない。
設計書に関する考え方
- プログラムに対応する詳細設計書
人のアサインに対する考え方
- 今までCADをやってきてWebを知らない人が、リーダにアサインされる。稼働率を高めるためなのは理解できるが、まったく違う分野なのにも関わらず、「できて当たり前」と思われる。
- 人海戦術でプログラミング、テスト。
- 派遣社員にテストや雑用をお願いする。コマンドをたたけば一発なところを、Excelで1個ずつ作業してもらう。
IT/プログラミングに興味ある人が少ない
プライベートで、アプリやプログラミングを勉強している、という話をあまり聞きません。家のパソコンが10年前のもので、そもそも家でパソコンを開かない、という人さえいます。 そういった人たちが大多数を占めているので、その人たちを技術レベルを基準に、コミュニケーションしなくてはいけません。 それが私は苦痛で、「なんで、これを知らないんだ」と思うことがありました。 ただこれは、私がコミニケーションが苦手だからでもあります。
客先常駐
会社Xは基本的に客先常駐です。 したがって、客先のルールに従う必要があります。 客先では、以下のような特徴がありました。
新しいソフト、ライブラリ、言語の導入がしづらい。
- Git, Linux, Visual Studio Code, Dockerなど
- 「実績がないからダメ」と言われるが、「その実績はどこで作るのか?」と聞くと明確な答えが返ってこない。
- 外部との通信はメール。客先とは別の建物にいるメンバと一緒に開発する際は、メールでソースを管理していた。
外部サイトが閲覧しにくい。閲覧できない訳ではないのですが、少し制限がかかっています。ITエンジニアがよく利用するStackOverflowやQiitaなども少し制限がかかっています。ひどいところだと、ネットが全く閲覧できないので、個人のスマホで調べています。
バージョン管理ソフトを使っていない部署がある。
サポートブラウザはIE。IE11が利用できる2016年代に、IE8対応、Edgeが利用できる2017年にIE11対応を行っていました。そして噂では、Edgeを無効にしてIE11を使わせている、という話も聞きます。
私の所属していた部署では、他の部署と比べると、Gitを使ったりライブラリを自由に導入できたりと、比較的プログラミングしやすい環境でした。 それでも客先常駐という仕事を行っている限り、バージョン管理ソフトを使っていない部署に移る可能性があります。 そういったことに不安を感じていました。
新人研修の資料
会社Xでは3カ月かけて、新人研修を行います。 以下のようなことが、すごく気になりました。
- 研修資料の内容が古いです。HTMLのレイアウトをCSSでなく属性で指定していたり、Javaのジェネリックを使っていないなど、古くて間違っている情報を教えています。
- 1週間かけて、フローチャートを教えています。フローチャートは閏年の計算などです。そしてフローチャートはVisioなどではなく、Excelで書きます。
- Wordで詳細設計書を書かされる。
- プログラミングが終わるまでは、テストしてはいけない。机上デバッグ。
キャリア的なこと
年次が上がると、プログラミングから離れてマネージャとして働くことを求められます。そういったマネージャが必要なのは分かりますが、やっぱり私はプログラミングと関わっていきたいです。社内には入社10年目以上で、マネージャでないBさんという方がいます。Bさんは技術力、政治力などがずば抜けています。私はBさんほどの力もないので、年次が上がってもプログラミングと関わりながら働くことは、難しいと思いました。
社内政治
以下のような社内政治に振り回されるのが嫌で、面倒でした。
- 社長に「やっていますよ!」とアピールするための問題解決会議、勉強会
- 上司同士の批判、派閥
会社への愚痴が多くなってきた
上記のような会社への不満が溜まっていき、どんどん愚痴が増えてきました。 自分が今まで何とも思っていなかった、会社のページの採用内容や、スーツで働くこと、9時出勤なども、不満に思うようになりました。 このままでは愚痴を言うだけの人になってしまう、目が死んでしまう、と思い、転職しようと決意しました。
転職活動を始めたきっかけ
2017年の5月、会社Lで行われた勉強会に参加しました。テーマは技術書についてです。そこには、会社Lの従業員が半数参加していました。 その勉強会は、本当に楽しくエキサイティングでした。 今まで私は、「技術力の高い人は、会社内で数パーセントしかいない。技術力の高い人が集まっている会社なんて、存在しない。」と思っていました。 しかし、会社Lの従業員は皆技術力が高く(全員を見たわけではないが、会話の内容からそう感じた)、「こういった、技術力の高い人、ITに興味ある人ががたくさんいる会社で、働きたい」と強く思うようになりまた。
数週間後、会社Lの社員がツイッターで「募集」とつぶやいていたので、「見学させてください」と連絡を取りました。
転職活動開始
L社を含む4社に訪問して、会社の説明を聴きにいきました。期間は5~8月で、割とゆっくりです。 8月の中旬にN社に書類を提出したんですが、書類選考で落ちました。 そこからは転職活動を一時休止。「やっぱり今の技術じゃ転職は難しいかなー」と悶々としていました。 10月にハッカソンに出場しまして、そこでY社の社員に出会いました。 Y社は機械学習など研究に強いと思っていましが、ハッカソンなどにも強いのだ、ということを知りました。 そして、「そんなすごい人たちのいる会社に入りたい!Y社で働いてみたい!」と強く思いました。 その1週間後には、Y社に入社の意志を伝えました。
会社Yの情報
X社に退職する旨を報告
10月の下旬に、上司に転職する旨を報告しました。 直属の上司は「そっか」と言って納得してくれましたが、さらにその上の上司Cは納得してくれませんでした。 会社Xと会社Yは取引実績の関係があり、上司Cは会社Yのレベルをなんとなく把握しておりました。
以下、上司から言われた言葉です。
「設計書書くのがイヤ」という単なる我がままではないか?
私が文章を書くことが苦手で、設計書を書くのも苦手です。 上司Cにとっては「苦手なことをイヤ」と言っているだけに見えたのでしょう。 ただ、私にとっては「何の意味もない設計書」を書くのが苦痛だったのです。 それを我儘と捉えるか、「そうだよね」と納得するかは、その苦痛を理解しているかどうかの違いだけに思います。 あとは、私がその苦痛をしっかり説明できていなかった、というのもあります。
配属先の変更ではダメなのか?客と交渉をしない「プログラミング部隊」を作り、そこのリーダになるのはどうか?社内配属にすることもできる。
配属先の変更に関しては、私の気持ちが上司に伝わっていないのだと感じました。 私は「プログラミングしか」やりたいのではなく、「プログラミングから離れたくない、無意味なことをやりたくない」のです。 上司の提案した配属先ですと、「プログラミングを知らない人が決めた仕様を、頑張って実装」したり、「プログラミング未経験の人に教えたり」することが、目に浮かびました。そして今の部署よりも、不満が強くなる気さえしました(今の部署は比較的自由にプログラミングできる)。
社内の技術力高い人(先輩F)を、追い抜くことができるのか?
これに関しては「できません」と答えました。本当にできないと思ったのです。 上司は「先輩F」を超えられるぐらいでないと、会社Yではやっていけないと思っております。 それに関しては、私も同意です。 ただ、先輩Fを越えられるまで、会社Xに在籍するというのもおかしな話です。 そして、会社Yで働くことにより先輩Fを追い抜くというのも、ありうることだと思っています。
自分の人生をどう考えているのか?所帯を持った場合やっていけるのか?
これに関しては特に考えていません。まだ30歳だから5年ぐらい何とかなるだろう、という甘い気持ちです。
初めの内は丁寧に教えてもらえるだろうけど、次第に「~さん、こんなことも分からないのですか?」と言われるようになる
同意です。そうならないように頑張ります。
先輩Fに騙されている(先輩Fは転職に賛成している)
先輩Fは騙している訳ではないのですが、私が先輩Fを妄信しているように、上司Cは見えたのでしょう。 確かに妄信しているような一面は、私も感じています。
会社Yに転職したい理由
会社Xで感じていた不満が、ほとんど解決できると思ったからです。
- 基本的客先常駐はなく、自社で開発
- 新しい技術、言語、ツールを使っている
- コンピュータ、プログラミングに興味ある人が多い
- 経営陣もプログラミングできる
- 技術力が高い
- ハッカソンで受賞したり、技術雑誌に寄稿している
「技術力の高い」ところでやっていけるのか不安ではありましたが、そこは『情熱プログラマー』という本の「一番の下手くそでいよう」という気持ちで行こうと思いました。 http://blog.codebook-10000.com/entry/20140106/1389009667
会社Yで働いて半年経った今
会社Yでは、現在アルバイトとして働いています。 正社員になるために修行中です。
会社Xで感じていた不満はすべて解決できています。
まとめ
- 勉強会に参加して、会社Xに疑問を持つようになった
- 会社Xに不満がある
- 客先常駐で、プログラミングしづらい
- IT/プログラミングに興味ある人が少ない
- プログラミング、設計書に対する考え方に納得できない
- 年次が上がると、プログラミングから離れなくてはいけない
- 会社Yでは、上記の不満が解決できた
会社Yに入って考えなくてはいけないこと
- どうやって正社員になるか
- どうやって技術力を上げるか
- そもそも技術力とは何か
- どうやって仕事をしていくか
- そもそも仕事とは何か?稼ぐとは何か?
- 今後生きていくのに、一体いくらの金が必要か?