こんにちは。
タイトルの通り、NEC通信システム株式会社を退職しました。
このエントリはいわゆる退職エントリというやつです。
否定的なことを多く書いているので、入社予定の人とか在籍している人は見ない方が良いと思います。
ちなみに、NEC通信システム株式会社の正式名称は日本電気通信システム株式会社です。
NEC通信システム株式会社について
特にエンドユーザ向けのサービスとかしていないので、就活生でたまたまこの会社を見つけた人とか仕事で関わっている人以外には「NEC通信システム株式会社?どこそれ」みたいな感じかもしれません。
NEC通信システム株式会社はNECの完全子会社で、通信事業者向けの開発や車載機器の開発を行っています。
従業員数は2018年4月時点で2000人以上いて、そこそこ大企業だと思います。
NEC通信システム株式会社に入社した理由
この会社に入社した理由はいくつかあります。
理由その1:自分の苦手分野のネットワーク関連の開発ができそうだったから。
学生時代はネットワークプログラミングが最高に苦手で、単位を危うく落とすところだったレベルでした。
そのため、ネットワークプログラミングにはずっと苦手意識があったんですが仕事にしたら苦手分野を克服できると思ったからです。
また、上流工程から下流工程まで自社で行っており、開発の経験が積めそうだと感じたためです。
理由その2:待遇や会社の安定性
NECの子会社で、待遇や福利厚生面はしっかりしていました。
給料は他と比べて高いというわけではなく、平均的な金額です。
入社時点では従業員数が3000人以上いたので、NECグループの企業の中では規模も大きくて安定していそうに見えたのも理由の1つです。
理由その3:面接官の方や採用担当の方が優しかった
採用担当の方が本当に優しくて、色々相談に乗ってくれました。
また、最終面接でも緊張のあまり部屋に入ってすぐにちょっとやらかしてしまったんですが面接官の方は笑って許してくれました。
こういった方々と仕事をできるのかと思うと入社した後、つらくてもやっていけそうだと感じました。
NEC通信システム株式会社を退職した理由
では何故NEC通信システム株式会社を辞めたのか。
結構後ろ向きな理由が多めです。
理由その1:自分の成長の限界を感じた
入社してしばらくはやることなすこと全部初めてなので、色々新鮮で楽しめました。
成長できている実感もありました。
私が配属された部署では半年間で開発が1サイクル回る感じで、何回か開発サイクルを経験することができましたが、何回か開発をしているうちに毎回似たようなことをしているだけの状態になってしまい徐々に新たに得られることが少なくなってきて、成長が止まってしまったと感じました。
今後同じことを続けても、複雑になりすぎたシステムに詳しくなるだけでソフトウェア工学や他の開発でも使えるようなスキルは得られそうにありませんでした。
でも私はまだエンジニアとして卵から孵化したヒヨコ程度ですので、このまま成長できなかったらエンジニアとしての人生が終わるなと感じました。
一連の開発で得られたことは多かったですが、さらなる成長のために退職を決意しました。
参考までに、NEC通信システム株式会社では主に以下のようなスキルや経験を得られました。
・大規模システムの保守・運用
・大規模システムの機能追加開発
・ウォーターフォール開発(上流から下流まで)
・大人数のチームによる開発(1つのモジュールで2~20人、全体で100人以上)
・C言語の基本的なスキル
・SIPプロトコルについての知識
理由その2:モダンな開発スキルが身につかない
1つめの理由と結構重なる部分が多いですが、私が配属された部署では信じられないくらい古い考え方でソフトウェア開発をしていました。
統合開発環境が使えないのは当たり前、Gitなんて誰も知らない。
バージョン管理はCVSで行っていました。
CVSとかここ以外で使ってるの見たことない。
しかもバージョン管理しているのにソースコードを編集したら差分ファイルを作成してそれを(バージョン管理ツールとは別に)管理するという謎プロセス。
あと開発に関わる部分以外の既存部分のソースコードに手を入れるのはご法度で、どんなにイケてないソースコードがあったとしても絶対に直してはいけない。
例え空白行を消したりインデントを揃えたりするだけでも絶対にダメ。
コメントが間違ってても修正不可。
動作に影響あるとかないとか関係ない。
リファクタリング?なにそれ。
拡張for文とかラムダ式?そんなの誰も読めなくなる(笑)から使用禁止。
理由その3:地味にブラック
何故か社員の人はブラックではないと言い張りますが、私はこの会社はブラックだと思います。
まず、有給を取れない。
みんな体調不良のふりをして1年で数日取るくらいでした。
また、NECの事業所は出入り口にカードリーダーがついていて、残業は結構きっちり管理されていますが、それでも休憩時間や勤怠管理システムの「自主研修」や「ゆとり通勤」を使ってサービス残業をする人たちが多くて結構つらかった。
カードリーダーがない所では当たり前のようにサービス残業が蔓延っているという話も聞きます。
あと新入社員研修で合宿をするんですが、講師が新入社員にプレッシャーをかけて定時後の作業を強要するのに自主研修扱いにして残業はつけないとかもありました。
普通にコンプライアンス的にアウトだと思ってる。
まつもっちゃん、お前だぞ。
研修終わった後に新入社員全員残して1時間説教とか勘弁してくれ。
残業代出せ。
理由その4:非効率的な業務が多すぎる
各種試験は当然自動化されておらず、すべて手作業。
単体試験などは当然自動化などされておらず、手作業でgdbを使ってルート網羅してそれをエクセルに張り付けるなど賽の河原のようなことをします。
当然試験を自動化してないので手を加えてない部分の試験などできるはずもない。
また、コーディングをする前には必ず全部ソースコードをフローチャートに書かなければいけません。
巨大な関数に手を入れることになった場合、エクセルで書かれた巨大なフローチャートを頑張ってさらに巨大なものにしなくてはいけません。
関数分割?何それ。
もとになるフローチャートは当然保守されていなく、そういうのは見つけた人が直さなければいけない罰ゲーム付き。
保守されてないだけならまだラッキーで、フローチャートがそもそも存在しない場合はソースコードを見ながら1から作らなくてはいけないことも多い。
一万行以上ある関数とかに改変を加えなければいけないときは発狂しそうになります。
ちなみに最初に一万行以上もある関数を見たときには少し笑いました。
あと信じられないことにExcelのフローチャートに実際のソースコードも書くのでそれもうプログラム先に書いちゃえば良くない?って言っても「プロセスは守れ」と言われて跳ね除けられます。
つらい。
でも保守されてなかったり、そもそもファイルが存在してない時点で全然プロセス守れてないじゃーん。
過去のあなた方全然プロセス守れてないじゃーん。
理由その5:異常なまでの前例踏襲主義
ソースコードを書くときに、自分でロジックを考えるなど言語道断と怒られます。
既存部分から似たような処理を探してきてコピペすると褒められます。
レビューで指摘を受けたら「既存部分のここの処理を参考にしました」というとレビュー通せます。素敵。簡単。
また、プロジェクトで定義されたプロセスに従って開発をしようとするとExcelフローチャートにソースコードを書いてからじゃないと実際のコーディングに移れないんですが、以前「先にプログラム書いてコンパイル通した方が早くないですか?Excelフローチャートとかいらなくないですか?」って言ったらこれは20年守り続けてきたプロセスだから変えることはできないといったような返答が返ってきました。
焼き鳥のタレかよ。
言うまでもなく、プロセスだじゃなくてソースコードとか各種資料も秘伝のタレ化してるんだけど。
なぜこんな非効率なことをしているのか識者(笑)に聞いたところ、昔はプロジェクトで保有していたパソコンが1台しかなく、開発者全員がプログラムを実際に書いてコンパイルしているととても開発追いつかなかったから、先に机上で人間が人力コンパイルをしていたそうです。
それならば確かに仕方ない部分があるかもしれませんが、今では1人に1台パソコンが貸与されているので変えればいいと思いました。
頭がおかしい。
プロセス変えましょうよって言ったら必ず「それで問題が出たらだれが責任取るの?」「プロセス変えるリスクが大きすぎる」などのコメントを貰えます。
20年間守り通した秘伝のタレにはリスクはないのかなって思います。
理由その6:開発用PCのスペックが低すぎる
当時新人だった私が、上司から「今年はスペックが良いパソコン買ったから」と渡されたノートパソコンのスペックが信じられないくらい低かった。
・32bit OS(Windows 7)
・メモリ 2GB
・HDD 200GB
・intel core i5
今時32bitのOSで、しかもメモリが2GBしかないパソコンでどうやって開発しろっていうんだ。
Excelひとつ開くのに2分くらいかかります。
NECグループはセキュリティ意識がとても高くて、パソコンに自前のアンチウイルスソフトを入れる義務があるんですけどこれが最高に重くて定期的にストレージをスキャンしてくれるんですがこのスキャン中は他の作業が一切できなくなるほど動きが遅くなります。
これでIT企業を名乗ってるんだから笑っちゃうね。
理由その7:給料が安い
他の同業他社と比べて、特別給料が低いというわけではありませんがやっぱり給料は安いです。
福利厚生は最低限のものはしっかりしていましたが、出張手当とか住宅手当とかが貧弱でした。
3年目までNEC通信システムで働いていましたが、手取りが15万円以下になることもざらにありました。
私の場合奨学金を借りて大学に行っているので、奨学金の返済と家賃の支払いで毎月7万円くらいかかります。
つまり奨学金と家賃だけで給料の半分が消し飛びます。
毎月残りの8~9万円くらいで生活していました。ここから食費や光熱費、通信代も出しています。
正直言うと、常に金欠でした。
残業をしたらもうちょっと手取りは増えますが、業績が悪いと残業禁止になることもあるので残業代はアテにできません。
びっくり発言集
NEC通信システム株式会社で働いているときに聞いた頭がおかしい発言をまとめました。
「OSSはブラックボックスだから」
(ソースコードの無駄な空白行を消したときに)「それでプログラムの動作が変わったらどうするんだよ!戻せ!」
「IDE?なにそれ」
「int i じゃ 変数 i が何に使われるかわかんないだろ! cnt とかにしろよ」
「有給使ってもいいけどプロジェクトの合間とかに1日か2日くらいな!」
「研修中の残業は自主研修とみなします(たとえ自主的でなくても)」
「既存部分の流用(コピペ)をしろ!」※関数化という概念はない
(退職時に有給消化をしたいと言ったときに)「有給?それは無理」
(糞みたいなPCを渡しながら)「今年は良いパソコン買ったから」
もっと沢山あった気がしますが、会社を辞めたのがずいぶん前なのでもうあまり思い出せません。
思い出したら追記します。
まとめ
退職エントリなので、だいぶネガティブな内容が多くなってしまいましたが実際は待遇とかも悪くなく、経営も安定した企業です。
また、ここに書いたのは会社全体のことではなく特定の部署、特定のプロジェクトでのことです。
噂によるとまともな部署もあるらしいので話半分で聞いてください。
でも最先端の技術に常に触れていたい人にはちょっと不向きな会社だと思います。
この会社に入る人はしっかりとその辺を見極めて入ってください。
おわり。